You're right, the styles are not functionally the same. The second promise returned by the first `then` will handle return values from either the success or failure callback of the first promise with its success callback, and it will handle throws from either the success or failure callback of the first promise with its failure callback.

So attaching callbacks to the second promise is done in anticipation of further asynchronous processing or error handling in the success or failure callbacks of the first promise (if synchronous, you also have the option of using a standard `try {} catch() {}` in those callbacks).

So in the present case, `.then(success, failure)` would suffice, but in other cases we'll need to catch errors using an additional promise.

Probably the best article on all of this is [here](http://domenic.me/2012/10/14/youre-missing-the-point-of-promises/).