refactor site.pp