prparing for refactor