mostly fixed to reflect the refactor version