more beautiful create method.