core, add size method