added various size feature