added size support and tests