Pm refactor