pad refactor