design for generic code block size