mixins moved to $pre_construct