import java.time.*;
class Person{
private int age;
this.setName(name);
this.setAge(age);
this.setGender(gender);}
public void setName
(String name
){ this.name = name;}
public void setAge(int age){
this.age = age;}
public void setGender
(String gender
){ this.gender = gender;}
return name;}
public int getAge(){
return age;}
return gender;}
@Override
return "Name:" + this.getName() + ". Gender:" + this.getGender() + ". Age:" + this.getAge() + ".";}
public Year computeYearOfBirth(){
return Year.now().minusYears(this.getAge());}
public int computeAge(LocalDate dob){
return Period.between(dob, LocalDate.now()).getYears();
}}
class PersonClient{
public static void main
(String[] args
){ Person pers1
= new Person
("Jedi",
45,
"Male"); Person pers2
= new Person
("Shane",
12,
"Female");
Person []persons = {pers1, pers2};
for(Person person : persons){
System.
out.
print(" Year of Birth:" + person.
computeYearOfBirth() + ". "); System.
out.
println(person.
computeAge(LocalDate.
of(1979,
6,
20).
plusYears(1)));}}}
aW1wb3J0IGphdmEudGltZS4qOwoKY2xhc3MgUGVyc29uewpwcml2YXRlIFN0cmluZyBuYW1lOwpwcml2YXRlIGludCBhZ2U7CnByaXZhdGUgU3RyaW5nIGdlbmRlcjsKCnB1YmxpYyBQZXJzb24oU3RyaW5nIG5hbWUsIGludCBhZ2UsIFN0cmluZyBnZW5kZXIpewp0aGlzLnNldE5hbWUobmFtZSk7CnRoaXMuc2V0QWdlKGFnZSk7CnRoaXMuc2V0R2VuZGVyKGdlbmRlcik7fQoKcHVibGljIHZvaWQgc2V0TmFtZShTdHJpbmcgbmFtZSl7CnRoaXMubmFtZSA9IG5hbWU7fQoKcHVibGljIHZvaWQgc2V0QWdlKGludCBhZ2Upewp0aGlzLmFnZSA9IGFnZTt9CgpwdWJsaWMgdm9pZCBzZXRHZW5kZXIoU3RyaW5nIGdlbmRlcil7CnRoaXMuZ2VuZGVyID0gZ2VuZGVyO30KCnB1YmxpYyBTdHJpbmcgZ2V0TmFtZSgpewpyZXR1cm4gbmFtZTt9CgpwdWJsaWMgaW50IGdldEFnZSgpewpyZXR1cm4gYWdlO30KCnB1YmxpYyBTdHJpbmcgZ2V0R2VuZGVyKCl7CnJldHVybiBnZW5kZXI7fQoKQE92ZXJyaWRlCnB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKXsKcmV0dXJuICJOYW1lOiIgKyB0aGlzLmdldE5hbWUoKSArICIuIEdlbmRlcjoiICsgdGhpcy5nZXRHZW5kZXIoKSArICIuIEFnZToiICsgdGhpcy5nZXRBZ2UoKSArICIuIjt9CgpwdWJsaWMgWWVhciBjb21wdXRlWWVhck9mQmlydGgoKXsKcmV0dXJuIFllYXIubm93KCkubWludXNZZWFycyh0aGlzLmdldEFnZSgpKTt9CgpwdWJsaWMgaW50IGNvbXB1dGVBZ2UoTG9jYWxEYXRlIGRvYil7CnJldHVybiBQZXJpb2QuYmV0d2Vlbihkb2IsIExvY2FsRGF0ZS5ub3coKSkuZ2V0WWVhcnMoKTsKfX0KCmNsYXNzIFBlcnNvbkNsaWVudHsKcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncyl7IFBlcnNvbiBwZXJzMSA9IG5ldyBQZXJzb24oIkplZGkiLCA0NSwgIk1hbGUiKTsgUGVyc29uIHBlcnMyID0gbmV3IFBlcnNvbigiU2hhbmUiLCAxMiwgIkZlbWFsZSIpOwoKUGVyc29uIFtdcGVyc29ucyA9IHtwZXJzMSwgcGVyczJ9OwoKZm9yKFBlcnNvbiBwZXJzb24gOiBwZXJzb25zKXsKU3lzdGVtLm91dC5wcmludChwZXJzb24pOwpTeXN0ZW0ub3V0LnByaW50KCIgWWVhciBvZiBCaXJ0aDoiICsgcGVyc29uLmNvbXB1dGVZZWFyT2ZCaXJ0aCgpICsgIi4gIik7ClN5c3RlbS5vdXQucHJpbnRsbihwZXJzb24uY29tcHV0ZUFnZShMb2NhbERhdGUub2YoMTk3OSw2LDIwKS5wbHVzWWVhcnMoMSkpKTt9fX0KCg==