 		return constraint(.In(key, containedIn))
 	}
 	
+	public func whereKey(key: String, containedIn: [String]) -> Self {
+		let values = containedIn.map({ Value($0) })
+		return constraint(.In(key, values))
+	}
+	
 	public func whereKey(key: String, notContainedIn: [Value]) -> Self {
 		return constraint(.NotIn(key, notContainedIn))
 	}

}

extension ObjectOperations {
	public func update(closure: (Data?, NSError?) -> Void) {
		var param: [String: AnyObject] = [:]
		for operation in operations {
			operation.composeQuery(&param)

public struct Pointer {
	public let className: String
	public let objectId: String
	public let connections: [String: Pointer]?
	
	public init(className: String, objectId: String, connections: [String: Pointer]? = nil) {
		self.className = className
		self.objectId = objectId
		self.connections = connections
	}
}

public struct GeoPoint {
