size parameter implemented