implement    prove :: --long