Refactor futures