preallocate command list