make sure capacity%4==0