rename Reversible to Reverse