     public var removeId: Bool
     public var parameters: JSONObject
     
-    public init(ref: DatabaseReference, createNewChildId: Bool, removeId: Bool, parameters: JSONObject) {
+    public init(at ref: DatabaseReference, createNewChildId: Bool, removeId: Bool, parameters: JSONObject) {
         self.ref = ref
         self.createNewChildId = createNewChildId
         self.removeId = removeId

    func updateObjectDirectly<T: State>(at ref: DatabaseReference, parameters: JSONObject, core: Core<T>)
    func removeObject<T: State>(at ref: DatabaseReference, core: Core<T>)
    func getObject<T: State>(at objectRef: DatabaseReference, core: Core<T>, completion: @escaping (_ objectJSON: JSONObject?) -> Void)
    func observeObject<T: State>(at objectRef: DatabaseReference, core: Core<T>, _ callback: @escaping (_ objectJSON: JSONObject?) -> Void)
    
    func stopObservingObject<T: State>(at objectRef: DatabaseReference, core: Core<T>)
    func search<T: State>(with baseQuery: DatabaseQuery, key: String, value: String, core: Core<T>, completion: @escaping (_ json: JSONObject?) -> Void)

    public var ref: DatabaseReference
    public var parameters: JSONObject
    
    public init(at ref: DatabaseReference, parameters: JSONObject) {
        self.ref = ref
        self.parameters = parameters
    }
