     override func modelJson() -> Any
     {
         let json:[String:Any] = [
-            Property.email.rawValue:email,
             Property.token.rawValue:token,
-            Property.status.rawValue:status.rawValue,
-            Property.created.rawValue:created,
-            Property.lastSession.rawValue:lastSession,
-            Property.diskUsed.rawValue:diskUsed
+            Property.version.rawValue:version,
+            Property.timestamp.rawValue:timestamp,
+            Property.ttl.rawValue:ttl,
         ]
         
         return json

            self.token = kEmpty
        }
        
        if let statusInt:Int = snapshotDict?[Property.status.rawValue] as? Int
        {
            if let status:Status = Status(rawValue:statusInt)
            {
                self.status = status
            }
            else
            {
                self.status = Status.unknown
            }
        }
        else
        {
            self.status = Status.unknown
        }
        
        if let created:TimeInterval = snapshotDict?[Property.created.rawValue] as? TimeInterval
        {
            self.created = created
        }
        else
        {
            self.created = kNoTime
        }
        
        if let lastSession:TimeInterval = snapshotDict?[Property.lastSession.rawValue] as? TimeInterval
        {
            self.lastSession = lastSession
        }
        else
        {
            self.lastSession = kNoTime
        }
        
        if let diskUsed:Int = snapshotDict?[Property.diskUsed.rawValue] as? Int
        {
            self.diskUsed = diskUsed
        }
        else
        {
            self.diskUsed = 0
        }
        
        super.init()

    enum Property:String
    {
        case token = "token"
        case version = "version"
        case timestamp = "timestamp"
        case ttl = "ttl"
    }
    
    let token:String
    let version:String
    let timestamp:TimeInterval
    let ttl:Int
    private let kEmpty:String = ""
    private let kNoTime:TimeInterval = 0
    private let kFirstTtl = 0
    
    init(token:String?, version:String, ttl:Int)
    {
        if let receivedToken:String = token
        {
            self.token = receivedToken
        }
        else
        {
            self.token = kEmpty
        }
        
        self.version = version
        self.ttl = ttl
        timestamp = NSDate().timeIntervalSince1970
        
        super.init()
    }
