         return deferred
     }
 
-    func sign(sessionToken: NSData, publicKey: PublicKey) -> Deferred<Result<FxASignResponse>> {
+    public func sign(sessionToken: NSData, publicKey: PublicKey) -> Deferred<Result<FxASignResponse>> {
         let deferred = Deferred<Result<FxASignResponse>>()
 
         let parameters = [

    }
}

struct FxASignResponse {
    let certificate: String

    init(certificate: String) {
        self.certificate = certificate

        return nil
    }

    public func login(emailUTF8: NSData, quickStretchedPW: NSData, getKeys: Bool) -> Deferred<Result<FxALoginResponse>> {
        let deferred = Deferred<Result<FxALoginResponse>>()
        let authPW = quickStretchedPW.deriveHKDFSHA256KeyWithSalt(NSData(), contextInfo: FxAClient10.KW("authPW")!, length: 32)

