def onUnitBuilt(self, argsList):
'Unit Completed'
city = argsList[0]
unit = argsList[1]
player = PyPlayer(city.getOwner())
## Hereditary Spy Bonus ##
pPlayer = gc.getPlayer(pUnit.getOwner())
iGovernmentCivicOption = CvUtil.findInfoTypeNum(gc.getCivicOptionInfo,gc.getNumCivicOptionInfos(),'CIVICOPTION_GOVERNMENT')
iHereditary = CvUtil.findInfoTypeNum(gc.getCivicInfo,gc.getNumCivicInfos(),'CIVIC_HEREDITARY_RULE')
iGovernmentCivic = pPlayer.getCivics(iGovernmentCivicOption)
if (iGovernmentCivic == iHereditary):
if unit.getUnitType() == gc.getInfoTypeForString('UNIT_KNIGHT'):
unit.setHasPromotion(gc.getInfoTypeForString('PROMOTION_MORALE'), True)
if unit.getUnitType() == gc.getInfoTypeForString('UNIT_SPY'):
unit.setHasPromotion(gc.getInfoTypeForString('PROMOTION_MORALE'), True)
## Hereditary Spy Bonus ##