better deployer structure