some loop optimizations + four futures