     }
     
     //https://dev.twitter.com/oauth/overview/creating-signatures
-    static func oAuthSignature(fromMethod method: String, url: String, parameters: [String:String], with consumerSecret: String) -> String? {
+    static func oAuthSignature(fromMethod method: String, url: String, parameters: [String:String], with consumerSecret: String, oAuthToken: String = "") -> String? {
         var keyValues = [String]()
         for (key, value) in parameters {
             keyValues.append("\(key)=\(value.addingPercentEncoding(withAllowedCharacters: .twitterParameterStringSet)!)")

                
                guard let token = responseDictionary["oauth_token"],
                    let secret = responseDictionary["oauth_token_secret"] else {
                        //Fail
                        return
                }
                
                self.oAuthToken = token
                self.oAuthTokenSecret = secret
                
                
            }
            catch {
                //Fail
            }
            
        }
        
        twitterRequest.end()
    }
}


    
    private var oAuthToken: String = ""
    private var oAuthTokenSecret: String = ""
    private var oAuthTokenVerifier: String = ""
    
    private var hasOAuthToken: Bool {
        return oAuthToken.isEmpty
