implement create entity