Refactoring rename support to a generic language value obejct