PSabot + refactor