 			NSUserDefaults.standardUserDefaults().setObject(user, forKey: "user")
 			NSUserDefaults.standardUserDefaults().synchronize()
 			let u = JSON(user)
-			println("signup user \(u)")
-			callback(User(u), error)
+			println("signUp user \(u)")
+			callback(User(json: u), error)
 		}
 	}
 }

	}
	
	func searchLocal<T: ParseObject>(query: Query<T>, closure: (JSON, NSError?) -> Void) -> Bool {
		query.constraints.replaceSubQueries()
		if let cache = self.memcache {
			dispatch_async(dispatch_get_global_queue(0, 0)) {
				var results: [JSON] = []
				var count = 0
				for (key, object) in cache {
					if let object = object as? [String: AnyObject] {
						let object = JSON(object)
						if query.constraints.match(object) {
							count++
							if !query.fetchesCount {
								results.append(object)
								//TOOD
							}
						}
					}
				}

	}
}

extension RestParse {
	
	func paging(group: dispatch_group_t, skip: Int = 0, block: (JSON) -> Void) {
		dispatch_group_enter(group)
