variable data size support