make perturb code more convenient, can handle hitch