rewrite to CowCatcher