         let url = URL(string: "https://api.soundcloud.com/oauth2/token")!
 
         let request = Request(url: url, method: .post, parameters: parameters, parse: {
-            if let accessToken = $0["access_token"].stringValue, let expires = $0["expires_in"].doubleValue, let scope = $0["scope"].stringValue {
+            if let accessToken = $0["access_token"].stringValue,
+                let expires = $0["expires_in"].doubleValue,
+                let scope = $0["scope"].stringValue {
                 let newSession = self.copy() as! Session
                 newSession.accessToken = accessToken
-                newSession.accessTokenExpireDate = NSDate(timeIntervalSinceNow: expires)
+                newSession.accessTokenExpireDate = Date(timeIntervalSinceNow: expires)
                 newSession.scope = scope
                 newSession.refreshToken = $0["refresh_token"].stringValue
                 return .success(newSession)

    public private(set) var authorizationCode: String

    //Token
    public private(set) var accessToken: String?
    public private(set) var accessTokenExpireDate: NSDate?

    public private(set) var scope: String?

    //Future session
    public private(set) var refreshToken: String?

    // MARK: Initialization



        authorizationCode = authCode
        accessToken = aDecoder.decodeObject(forKey: Session.accessTokenKey) as? String
        accessTokenExpireDate = aDecoder.decodeObject(forKey: Session.accessTokenExpireDateKey) as? Date
        scope = aDecoder.decodeObject(forKey: Session.scopeKey) as? String
        refreshToken = aDecoder.decodeObject(forKey: Session.refreshTokenKey) as? String
    }
