                 .map({ (payload) -> String in
                     return payload["token"].stringValue
                 })
-                .startWithNext({ (token) -> () in
-                    print("Got token \(token)")
+                .flatMap(.Latest, transform: { (token) -> SignalProducer<Show, NSError> in
+                    self.token = token
+                    return self.fetchShows()
+                })
+                .startWithNext({ (show) -> () in
+                    return "Show: \(show.name)"
                 })
         } catch {
             print("Got error while handling url \(url) : \(error)")

            }
    }
    
    func sendRequestToPath(path: String, params: [String: String], method: String) -> SignalProducer<JSON, NSError> {
        let base = "https://api.betaseries.com/\(path)"
        
        let exhangeComponents = NSURLComponents(string: base)!
        exhangeComponents.queryItems = []
        
        for (key, value) in params {
            exhangeComponents.queryItems?.append(NSURLQueryItem(name: key, value: value))
        }
        
        let request = NSMutableURLRequest(URL: exhangeComponents.URL!)

    }
    
    func fetchShows() -> SignalProducer<Show, NSError> {
        return sendRequestToPath("members/infos", params: nil, method: "GET")
            .flatMap(FlattenStrategy.Latest) { (payload) -> SignalProducer<Show, NSError> in
                return SignalProducer<Show, NSError> { sink, disposable in
                    print(payload)
