refactoring, ussing now Callabels and Futures to get cleaner code