added puppet support