arranging paremeters of properties
using instancetype