class archer
{
template <class T>
friend void inchealth(T &,int);
public:
archer(){health = 150; mana = 50; armor = 50; damage = 10;}
int checkhealth() {return health;}
int checkmana() {return mana;}
int checkarmor() {return armor;}
int checkdamage(){return damage;}
private:
int health;
int mana;
int armor;
int damage;};
template <class T>
void inchealth(T &x, int y)
{x.health += y;}
int main()
{
archer a;
inchealth(a,5);
}
Y2xhc3MgYXJjaGVyCnsKCnRlbXBsYXRlIDxjbGFzcyBUPgpmcmllbmQgdm9pZCBpbmNoZWFsdGgoVCAmLGludCk7CgpwdWJsaWM6CmFyY2hlcigpe2hlYWx0aCA9IDE1MDsgbWFuYSA9IDUwOyBhcm1vciA9IDUwOyBkYW1hZ2UgPSAxMDt9CgppbnQgY2hlY2toZWFsdGgoKSB7cmV0dXJuIGhlYWx0aDt9CmludCBjaGVja21hbmEoKSB7cmV0dXJuIG1hbmE7fQppbnQgY2hlY2thcm1vcigpIHtyZXR1cm4gYXJtb3I7fQppbnQgY2hlY2tkYW1hZ2UoKXtyZXR1cm4gZGFtYWdlO30KCgogICAgcHJpdmF0ZToKaW50IGhlYWx0aDsKaW50IG1hbmE7CmludCBhcm1vcjsKaW50IGRhbWFnZTt9OwoKdGVtcGxhdGUgPGNsYXNzIFQ+CnZvaWQgaW5jaGVhbHRoKFQgJngsIGludCB5KQp7eC5oZWFsdGggKz0geTt9CgppbnQgbWFpbigpCnsKICAgIGFyY2hlciBhOwogICAgaW5jaGVhbHRoKGEsNSk7Cgp9Cg==