better puppet hash