Updated block generation to be threaded