add Future.result method