refactored remaining defs