passed-in percentage as usualbut also gets an extra bonus that defaults to for instanceif manager' raise is specified as %it will really get (any relation to persons living or dead isof coursestrictly coincidental our new method begins as followsbecause this redefinition of giveraise will be closer in the class tree to man ager instances than the original version in personit effectively replacesand thereby customizesthe operation recall that according to the inheritance search rulesthe lowest version of the name wins: inherit person attrs redefine to customize class manager(person)def giveraise(selfpercentbonus )augmenting methodsthe bad way nowthere are two ways we might code this manager customizationa good way and bad way let' start with the bad waysince it might be bit easier to understand the bad way is to cut and paste the code of giveraise in person and modify it for managerlike thisclass manager(person)def giveraise(selfpercentbonus )self pay int(self pay ( percent bonus)badcut and paste this works as advertised--when we later call the giveraise method of manager instanceit will run this custom versionwhich tacks on the extra bonus so what' wrong with something that runs correctlythe problem here is very general oneanytime you copy code with cut and pasteyou essentially double your maintenance effort in the future think about itbecause we copied the original versionif we ever have to change the way raises are given (and we probably will)we'll have to change the code in two placesnot one although this is small and artificial exampleit' also representative of universal issue--anytime you're tempted to program by copying code this wayyou probably want to look for better approach augmenting methodsthe good way what we really want to do here is somehow augment the original giveraiseinstead of replacing it altogether the good way to do that in python is by calling to the original version directlywith augmented argumentslike thisclass manager(person)def giveraise(selfpercentbonus )person giveraise(selfpercent bonusgoodaugment original and no offense to any managers in the audienceof course once taught python class in new jerseyand nobody laughed at this jokeamong others the organizers later told me it was group of managers evaluating python step customizing behavior by subclassing