Added BlockGenerator for variable size with precise results