refine models

see #526