@yuhunglin since `success` and `error` do the same thing here, can't we use `complete` instead?