- import java.util.ArrayList; 
- import java.util.List; 
-   
- // Hava Yolu Şirketi 
- class AirlineCompany { 
-     private List<Airport> airports; 
-     private List<Flight> flights; 
-   
-         this.name = name; 
-         this.code = code; 
-         this.airports = new ArrayList<>(); 
-         this.flights = new ArrayList<>(); 
-     } 
-   
-     public void addAirport(Airport airport) { 
-         airports.add(airport); 
-     } 
-   
-     public void addFlight(Flight flight) { 
-         flights.add(flight); 
-     } 
-   
-     // Getter ve Setter metodları 
-         return name; 
-     } 
-   
-         return code; 
-     } 
-   
-     public List<Airport> getAirports() { 
-         return airports; 
-     } 
-   
-     public List<Flight> getFlights() { 
-         return flights; 
-     } 
- } 
-   
- // Havalimanı 
- class Airport { 
-   
-         this.name = name; 
-         this.address = address; 
-         this.code = code; 
-         this.manager = manager; 
-     } 
-   
-     // Getter ve Setter metodları 
-         return name; 
-     } 
-   
-         return address; 
-     } 
-   
-         return code; 
-     } 
-   
-         return manager; 
-     } 
- } 
-   
- // Uçak 
- class Aircraft { 
-     private int capacity; 
-     private int productionYear; 
-     private List<String> crewMembers; 
-   
-     public-  Aircraft (String-  type,  int-  capacity,  int-  productionYear ) {
 
-         this.type = type; 
-         this.capacity = capacity; 
-         this.productionYear = productionYear; 
-         this.crewMembers = new ArrayList<>(); 
-     } 
-   
-     // Getter ve Setter metodları 
-         return type; 
-     } 
-   
-     public int getCapacity() { 
-         return capacity; 
-     } 
-   
-     public int getProductionYear() { 
-         return productionYear; 
-     } 
- } 
-   
- // Uçuş 
- class Flight { 
-     private Airport departureAirport; 
-     private Airport arrivalAirport; 
-     private Aircraft aircraft; 
-   
-     public-  Flight (String-  flightNumber, Airport departureAirport, Airport arrivalAirport, Aircraft aircraft,  String-  flightTime,  String-  flightDate,  String-  gate,  String-  status ) {
 
-         this.flightNumber = flightNumber; 
-         this.departureAirport = departureAirport; 
-         this.arrivalAirport = arrivalAirport; 
-         this.aircraft = aircraft; 
-         this.flightTime = flightTime; 
-         this.flightDate = flightDate; 
-         this.gate = gate; 
-         this.status = status; 
-     } 
-   
-     // Getter ve Setter metodları 
-     public String-  getFlightNumber () {
 
-         return flightNumber; 
-     } 
- } 
-   
- // Konum 
- class Location { 
-   
-         this.country = country; 
-         this.city = city; 
-     } 
-   
-     // Getter ve Setter metodları 
-         return country; 
-     } 
-   
-         return city; 
-     } 
- } 
-   
- // Uçuş Rezervasyonu 
- class Reservation { 
-     private String-  reservationNumber ;
 
-     private List<Person> passengers; 
-     private List<Seat> assignedSeats; 
-   
-     public-  Reservation (String-  reservationNumber ) {
 
-         this.reservationNumber = reservationNumber; 
-         this.passengers = new ArrayList<>(); 
-         this.assignedSeats = new ArrayList<>(); 
-     } 
-   
-     // Getter ve Setter metodları 
-     public String-  getReservationNumber () {
 
-         return reservationNumber; 
-     } 
- } 
-   
- // Güzergah 
- class Route { 
-     private Airport departureAirport; 
-     private Airport arrivalAirport; 
-   
-     public-  Route (- Airport departureAirport, Airport arrivalAirport,  String-  creationDate ) {
 
-         this.departureAirport = departureAirport; 
-         this.arrivalAirport = arrivalAirport; 
-         this.creationDate = creationDate; 
-     } 
-   
-     // Getter ve Setter metodları 
- } 
-   
- // Uçuş Koltuğu 
- class Seat { 
-     private boolean isReserved; 
-   
-     public-  Seat (String-  seatNumber ) {
 
-         this.seatNumber = seatNumber; 
-         this.isReserved = false; 
-     } 
-   
-     // Getter ve Setter metodları 
-     public String-  getSeatNumber () {
 
-         return seatNumber; 
-     } 
- } 
-   
- // Kişi 
- class Person { 
-     private String-  role ; // Customer, Pilot, Crew, Admin
 
-   
-         this.name = name; 
-         this.role = role; 
-     } 
-   
-     // Getter ve Setter metodları 
-         return name; 
-     } 
-   
-         return role; 
-     } 
- } 
-   
- // Ödeme 
- class Payment { 
-     private double amount; 
-   
-     public-  Payment (double-  amount,  String-  paymentMethod ) {
 
-         this.amount = amount; 
-         this.paymentMethod = paymentMethod; 
-         this.status = "Pending"; 
-     } 
-   
-     // Getter ve Setter metodları 
-     public double getAmount() { 
-         return amount; 
-     } 
-   
-     public String-  getPaymentMethod () {
 
-         return paymentMethod; 
-     } 
-   
-         return status; 
-     } 
- } 
-   
- // Ana sınıf 
- public class Main { 
-     public static void-  main (String[]-  args ) {
 
-         // Havayolu şirketi oluştur 
-         AirlineCompany airline = new AirlineCompany("Example Airline", "EA"); 
-   
-         // Havalimanları oluştur 
-         Airport airport1 = new Airport("Istanbul Airport", "Istanbul, Turkey", "IST", "Mr. Smith"); 
-         Airport airport2 = new Airport("London Heathrow", "London, UK", "LHR", "Mrs. Johnson"); 
-   
-         // Havalimanlarını havayolu şirketine ekle 
-         airline.addAirport(airport1); 
-         airline.addAirport(airport2); 
-   
-         // Uçak oluştur 
-         Aircraft aircraft = new Aircraft("Boeing 737", 180, 2015); 
-   
-         // Uçuş oluştur 
-         Flight flight = new Flight("EA123", airport1, airport2, aircraft, "10:00", "2024-12-01", "A1", "Scheduled"); 
-   
-         // Uçuşu havayolu şirketine ekle 
-         airline.addFlight(flight); 
-   
-         // Bilgileri yazdır 
-         System- . out- . println("Havayolu Şirketi: " +-  airline. getName());
 
-         System- . out- . println("Uçuş Eklendi: " +-  flight. getFlightNumber());
 
-     } 
- } 
-   
				aW1wb3J0IGphdmEudXRpbC5BcnJheUxpc3Q7CmltcG9ydCBqYXZhLnV0aWwuTGlzdDsKCi8vIEhhdmEgWW9sdSDFnmlya2V0aQpjbGFzcyBBaXJsaW5lQ29tcGFueSB7CiAgICBwcml2YXRlIFN0cmluZyBuYW1lOwogICAgcHJpdmF0ZSBTdHJpbmcgY29kZTsKICAgIHByaXZhdGUgTGlzdDxBaXJwb3J0PiBhaXJwb3J0czsKICAgIHByaXZhdGUgTGlzdDxGbGlnaHQ+IGZsaWdodHM7CgogICAgcHVibGljIEFpcmxpbmVDb21wYW55KFN0cmluZyBuYW1lLCBTdHJpbmcgY29kZSkgewogICAgICAgIHRoaXMubmFtZSA9IG5hbWU7CiAgICAgICAgdGhpcy5jb2RlID0gY29kZTsKICAgICAgICB0aGlzLmFpcnBvcnRzID0gbmV3IEFycmF5TGlzdDw+KCk7CiAgICAgICAgdGhpcy5mbGlnaHRzID0gbmV3IEFycmF5TGlzdDw+KCk7CiAgICB9CgogICAgcHVibGljIHZvaWQgYWRkQWlycG9ydChBaXJwb3J0IGFpcnBvcnQpIHsKICAgICAgICBhaXJwb3J0cy5hZGQoYWlycG9ydCk7CiAgICB9CgogICAgcHVibGljIHZvaWQgYWRkRmxpZ2h0KEZsaWdodCBmbGlnaHQpIHsKICAgICAgICBmbGlnaHRzLmFkZChmbGlnaHQpOwogICAgfQoKICAgIC8vIEdldHRlciB2ZSBTZXR0ZXIgbWV0b2RsYXLEsQogICAgcHVibGljIFN0cmluZyBnZXROYW1lKCkgewogICAgICAgIHJldHVybiBuYW1lOwogICAgfQoKICAgIHB1YmxpYyBTdHJpbmcgZ2V0Q29kZSgpIHsKICAgICAgICByZXR1cm4gY29kZTsKICAgIH0KCiAgICBwdWJsaWMgTGlzdDxBaXJwb3J0PiBnZXRBaXJwb3J0cygpIHsKICAgICAgICByZXR1cm4gYWlycG9ydHM7CiAgICB9CgogICAgcHVibGljIExpc3Q8RmxpZ2h0PiBnZXRGbGlnaHRzKCkgewogICAgICAgIHJldHVybiBmbGlnaHRzOwogICAgfQp9CgovLyBIYXZhbGltYW7EsQpjbGFzcyBBaXJwb3J0IHsKICAgIHByaXZhdGUgU3RyaW5nIG5hbWU7CiAgICBwcml2YXRlIFN0cmluZyBhZGRyZXNzOwogICAgcHJpdmF0ZSBTdHJpbmcgY29kZTsKICAgIHByaXZhdGUgU3RyaW5nIG1hbmFnZXI7CgogICAgcHVibGljIEFpcnBvcnQoU3RyaW5nIG5hbWUsIFN0cmluZyBhZGRyZXNzLCBTdHJpbmcgY29kZSwgU3RyaW5nIG1hbmFnZXIpIHsKICAgICAgICB0aGlzLm5hbWUgPSBuYW1lOwogICAgICAgIHRoaXMuYWRkcmVzcyA9IGFkZHJlc3M7CiAgICAgICAgdGhpcy5jb2RlID0gY29kZTsKICAgICAgICB0aGlzLm1hbmFnZXIgPSBtYW5hZ2VyOwogICAgfQoKICAgIC8vIEdldHRlciB2ZSBTZXR0ZXIgbWV0b2RsYXLEsQogICAgcHVibGljIFN0cmluZyBnZXROYW1lKCkgewogICAgICAgIHJldHVybiBuYW1lOwogICAgfQoKICAgIHB1YmxpYyBTdHJpbmcgZ2V0QWRkcmVzcygpIHsKICAgICAgICByZXR1cm4gYWRkcmVzczsKICAgIH0KCiAgICBwdWJsaWMgU3RyaW5nIGdldENvZGUoKSB7CiAgICAgICAgcmV0dXJuIGNvZGU7CiAgICB9CgogICAgcHVibGljIFN0cmluZyBnZXRNYW5hZ2VyKCkgewogICAgICAgIHJldHVybiBtYW5hZ2VyOwogICAgfQp9CgovLyBVw6dhawpjbGFzcyBBaXJjcmFmdCB7CiAgICBwcml2YXRlIFN0cmluZyB0eXBlOwogICAgcHJpdmF0ZSBpbnQgY2FwYWNpdHk7CiAgICBwcml2YXRlIGludCBwcm9kdWN0aW9uWWVhcjsKICAgIHByaXZhdGUgTGlzdDxTdHJpbmc+IGNyZXdNZW1iZXJzOwoKICAgIHB1YmxpYyBBaXJjcmFmdChTdHJpbmcgdHlwZSwgaW50IGNhcGFjaXR5LCBpbnQgcHJvZHVjdGlvblllYXIpIHsKICAgICAgICB0aGlzLnR5cGUgPSB0eXBlOwogICAgICAgIHRoaXMuY2FwYWNpdHkgPSBjYXBhY2l0eTsKICAgICAgICB0aGlzLnByb2R1Y3Rpb25ZZWFyID0gcHJvZHVjdGlvblllYXI7CiAgICAgICAgdGhpcy5jcmV3TWVtYmVycyA9IG5ldyBBcnJheUxpc3Q8PigpOwogICAgfQoKICAgIC8vIEdldHRlciB2ZSBTZXR0ZXIgbWV0b2RsYXLEsQogICAgcHVibGljIFN0cmluZyBnZXRUeXBlKCkgewogICAgICAgIHJldHVybiB0eXBlOwogICAgfQoKICAgIHB1YmxpYyBpbnQgZ2V0Q2FwYWNpdHkoKSB7CiAgICAgICAgcmV0dXJuIGNhcGFjaXR5OwogICAgfQoKICAgIHB1YmxpYyBpbnQgZ2V0UHJvZHVjdGlvblllYXIoKSB7CiAgICAgICAgcmV0dXJuIHByb2R1Y3Rpb25ZZWFyOwogICAgfQp9CgovLyBVw6d1xZ8KY2xhc3MgRmxpZ2h0IHsKICAgIHByaXZhdGUgU3RyaW5nIGZsaWdodE51bWJlcjsKICAgIHByaXZhdGUgQWlycG9ydCBkZXBhcnR1cmVBaXJwb3J0OwogICAgcHJpdmF0ZSBBaXJwb3J0IGFycml2YWxBaXJwb3J0OwogICAgcHJpdmF0ZSBBaXJjcmFmdCBhaXJjcmFmdDsKICAgIHByaXZhdGUgU3RyaW5nIGZsaWdodFRpbWU7CiAgICBwcml2YXRlIFN0cmluZyBmbGlnaHREYXRlOwogICAgcHJpdmF0ZSBTdHJpbmcgZ2F0ZTsKICAgIHByaXZhdGUgU3RyaW5nIHN0YXR1czsKCiAgICBwdWJsaWMgRmxpZ2h0KFN0cmluZyBmbGlnaHROdW1iZXIsIEFpcnBvcnQgZGVwYXJ0dXJlQWlycG9ydCwgQWlycG9ydCBhcnJpdmFsQWlycG9ydCwgQWlyY3JhZnQgYWlyY3JhZnQsIFN0cmluZyBmbGlnaHRUaW1lLCBTdHJpbmcgZmxpZ2h0RGF0ZSwgU3RyaW5nIGdhdGUsIFN0cmluZyBzdGF0dXMpIHsKICAgICAgICB0aGlzLmZsaWdodE51bWJlciA9IGZsaWdodE51bWJlcjsKICAgICAgICB0aGlzLmRlcGFydHVyZUFpcnBvcnQgPSBkZXBhcnR1cmVBaXJwb3J0OwogICAgICAgIHRoaXMuYXJyaXZhbEFpcnBvcnQgPSBhcnJpdmFsQWlycG9ydDsKICAgICAgICB0aGlzLmFpcmNyYWZ0ID0gYWlyY3JhZnQ7CiAgICAgICAgdGhpcy5mbGlnaHRUaW1lID0gZmxpZ2h0VGltZTsKICAgICAgICB0aGlzLmZsaWdodERhdGUgPSBmbGlnaHREYXRlOwogICAgICAgIHRoaXMuZ2F0ZSA9IGdhdGU7CiAgICAgICAgdGhpcy5zdGF0dXMgPSBzdGF0dXM7CiAgICB9CgogICAgLy8gR2V0dGVyIHZlIFNldHRlciBtZXRvZGxhcsSxCiAgICBwdWJsaWMgU3RyaW5nIGdldEZsaWdodE51bWJlcigpIHsKICAgICAgICByZXR1cm4gZmxpZ2h0TnVtYmVyOwogICAgfQp9CgovLyBLb251bQpjbGFzcyBMb2NhdGlvbiB7CiAgICBwcml2YXRlIFN0cmluZyBjb3VudHJ5OwogICAgcHJpdmF0ZSBTdHJpbmcgY2l0eTsKCiAgICBwdWJsaWMgTG9jYXRpb24oU3RyaW5nIGNvdW50cnksIFN0cmluZyBjaXR5KSB7CiAgICAgICAgdGhpcy5jb3VudHJ5ID0gY291bnRyeTsKICAgICAgICB0aGlzLmNpdHkgPSBjaXR5OwogICAgfQoKICAgIC8vIEdldHRlciB2ZSBTZXR0ZXIgbWV0b2RsYXLEsQogICAgcHVibGljIFN0cmluZyBnZXRDb3VudHJ5KCkgewogICAgICAgIHJldHVybiBjb3VudHJ5OwogICAgfQoKICAgIHB1YmxpYyBTdHJpbmcgZ2V0Q2l0eSgpIHsKICAgICAgICByZXR1cm4gY2l0eTsKICAgIH0KfQoKLy8gVcOndcWfIFJlemVydmFzeW9udQpjbGFzcyBSZXNlcnZhdGlvbiB7CiAgICBwcml2YXRlIFN0cmluZyByZXNlcnZhdGlvbk51bWJlcjsKICAgIHByaXZhdGUgTGlzdDxQZXJzb24+IHBhc3NlbmdlcnM7CiAgICBwcml2YXRlIExpc3Q8U2VhdD4gYXNzaWduZWRTZWF0czsKICAgIHByaXZhdGUgU3RyaW5nIHN0YXR1czsKCiAgICBwdWJsaWMgUmVzZXJ2YXRpb24oU3RyaW5nIHJlc2VydmF0aW9uTnVtYmVyKSB7CiAgICAgICAgdGhpcy5yZXNlcnZhdGlvbk51bWJlciA9IHJlc2VydmF0aW9uTnVtYmVyOwogICAgICAgIHRoaXMucGFzc2VuZ2VycyA9IG5ldyBBcnJheUxpc3Q8PigpOwogICAgICAgIHRoaXMuYXNzaWduZWRTZWF0cyA9IG5ldyBBcnJheUxpc3Q8PigpOwogICAgfQoKICAgIC8vIEdldHRlciB2ZSBTZXR0ZXIgbWV0b2RsYXLEsQogICAgcHVibGljIFN0cmluZyBnZXRSZXNlcnZhdGlvbk51bWJlcigpIHsKICAgICAgICByZXR1cm4gcmVzZXJ2YXRpb25OdW1iZXI7CiAgICB9Cn0KCi8vIEfDvHplcmdhaApjbGFzcyBSb3V0ZSB7CiAgICBwcml2YXRlIEFpcnBvcnQgZGVwYXJ0dXJlQWlycG9ydDsKICAgIHByaXZhdGUgQWlycG9ydCBhcnJpdmFsQWlycG9ydDsKICAgIHByaXZhdGUgU3RyaW5nIGNyZWF0aW9uRGF0ZTsKCiAgICBwdWJsaWMgUm91dGUoQWlycG9ydCBkZXBhcnR1cmVBaXJwb3J0LCBBaXJwb3J0IGFycml2YWxBaXJwb3J0LCBTdHJpbmcgY3JlYXRpb25EYXRlKSB7CiAgICAgICAgdGhpcy5kZXBhcnR1cmVBaXJwb3J0ID0gZGVwYXJ0dXJlQWlycG9ydDsKICAgICAgICB0aGlzLmFycml2YWxBaXJwb3J0ID0gYXJyaXZhbEFpcnBvcnQ7CiAgICAgICAgdGhpcy5jcmVhdGlvbkRhdGUgPSBjcmVhdGlvbkRhdGU7CiAgICB9CgogICAgLy8gR2V0dGVyIHZlIFNldHRlciBtZXRvZGxhcsSxCn0KCi8vIFXDp3XFnyBLb2x0dcSfdQpjbGFzcyBTZWF0IHsKICAgIHByaXZhdGUgU3RyaW5nIHNlYXROdW1iZXI7CiAgICBwcml2YXRlIGJvb2xlYW4gaXNSZXNlcnZlZDsKCiAgICBwdWJsaWMgU2VhdChTdHJpbmcgc2VhdE51bWJlcikgewogICAgICAgIHRoaXMuc2VhdE51bWJlciA9IHNlYXROdW1iZXI7CiAgICAgICAgdGhpcy5pc1Jlc2VydmVkID0gZmFsc2U7CiAgICB9CgogICAgLy8gR2V0dGVyIHZlIFNldHRlciBtZXRvZGxhcsSxCiAgICBwdWJsaWMgU3RyaW5nIGdldFNlYXROdW1iZXIoKSB7CiAgICAgICAgcmV0dXJuIHNlYXROdW1iZXI7CiAgICB9Cn0KCi8vIEtpxZ9pCmNsYXNzIFBlcnNvbiB7CiAgICBwcml2YXRlIFN0cmluZyBuYW1lOwogICAgcHJpdmF0ZSBTdHJpbmcgcm9sZTsgLy8gQ3VzdG9tZXIsIFBpbG90LCBDcmV3LCBBZG1pbgoKICAgIHB1YmxpYyBQZXJzb24oU3RyaW5nIG5hbWUsIFN0cmluZyByb2xlKSB7CiAgICAgICAgdGhpcy5uYW1lID0gbmFtZTsKICAgICAgICB0aGlzLnJvbGUgPSByb2xlOwogICAgfQoKICAgIC8vIEdldHRlciB2ZSBTZXR0ZXIgbWV0b2RsYXLEsQogICAgcHVibGljIFN0cmluZyBnZXROYW1lKCkgewogICAgICAgIHJldHVybiBuYW1lOwogICAgfQoKICAgIHB1YmxpYyBTdHJpbmcgZ2V0Um9sZSgpIHsKICAgICAgICByZXR1cm4gcm9sZTsKICAgIH0KfQoKLy8gw5ZkZW1lCmNsYXNzIFBheW1lbnQgewogICAgcHJpdmF0ZSBkb3VibGUgYW1vdW50OwogICAgcHJpdmF0ZSBTdHJpbmcgcGF5bWVudE1ldGhvZDsKICAgIHByaXZhdGUgU3RyaW5nIHN0YXR1czsKCiAgICBwdWJsaWMgUGF5bWVudChkb3VibGUgYW1vdW50LCBTdHJpbmcgcGF5bWVudE1ldGhvZCkgewogICAgICAgIHRoaXMuYW1vdW50ID0gYW1vdW50OwogICAgICAgIHRoaXMucGF5bWVudE1ldGhvZCA9IHBheW1lbnRNZXRob2Q7CiAgICAgICAgdGhpcy5zdGF0dXMgPSAiUGVuZGluZyI7CiAgICB9CgogICAgLy8gR2V0dGVyIHZlIFNldHRlciBtZXRvZGxhcsSxCiAgICBwdWJsaWMgZG91YmxlIGdldEFtb3VudCgpIHsKICAgICAgICByZXR1cm4gYW1vdW50OwogICAgfQoKICAgIHB1YmxpYyBTdHJpbmcgZ2V0UGF5bWVudE1ldGhvZCgpIHsKICAgICAgICByZXR1cm4gcGF5bWVudE1ldGhvZDsKICAgIH0KCiAgICBwdWJsaWMgU3RyaW5nIGdldFN0YXR1cygpIHsKICAgICAgICByZXR1cm4gc3RhdHVzOwogICAgfQp9CgovLyBBbmEgc8SxbsSxZgpwdWJsaWMgY2xhc3MgTWFpbiB7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CiAgICAgICAgLy8gSGF2YXlvbHUgxZ9pcmtldGkgb2x1xZ90dXIKICAgICAgICBBaXJsaW5lQ29tcGFueSBhaXJsaW5lID0gbmV3IEFpcmxpbmVDb21wYW55KCJFeGFtcGxlIEFpcmxpbmUiLCAiRUEiKTsKICAgICAgICAKICAgICAgICAvLyBIYXZhbGltYW5sYXLEsSBvbHXFn3R1cgogICAgICAgIEFpcnBvcnQgYWlycG9ydDEgPSBuZXcgQWlycG9ydCgiSXN0YW5idWwgQWlycG9ydCIsICJJc3RhbmJ1bCwgVHVya2V5IiwgIklTVCIsICJNci4gU21pdGgiKTsKICAgICAgICBBaXJwb3J0IGFpcnBvcnQyID0gbmV3IEFpcnBvcnQoIkxvbmRvbiBIZWF0aHJvdyIsICJMb25kb24sIFVLIiwgIkxIUiIsICJNcnMuIEpvaG5zb24iKTsKICAgICAgICAKICAgICAgICAvLyBIYXZhbGltYW5sYXLEsW7EsSBoYXZheW9sdSDFn2lya2V0aW5lIGVrbGUKICAgICAgICBhaXJsaW5lLmFkZEFpcnBvcnQoYWlycG9ydDEpOwogICAgICAgIGFpcmxpbmUuYWRkQWlycG9ydChhaXJwb3J0Mik7CiAgICAgICAgCiAgICAgICAgLy8gVcOnYWsgb2x1xZ90dXIKICAgICAgICBBaXJjcmFmdCBhaXJjcmFmdCA9IG5ldyBBaXJjcmFmdCgiQm9laW5nIDczNyIsIDE4MCwgMjAxNSk7CiAgICAgICAgCiAgICAgICAgLy8gVcOndcWfIG9sdcWfdHVyCiAgICAgICAgRmxpZ2h0IGZsaWdodCA9IG5ldyBGbGlnaHQoIkVBMTIzIiwgYWlycG9ydDEsIGFpcnBvcnQyLCBhaXJjcmFmdCwgIjEwOjAwIiwgIjIwMjQtMTItMDEiLCAiQTEiLCAiU2NoZWR1bGVkIik7CiAgICAgICAgCiAgICAgICAgLy8gVcOndcWfdSBoYXZheW9sdSDFn2lya2V0aW5lIGVrbGUKICAgICAgICBhaXJsaW5lLmFkZEZsaWdodChmbGlnaHQpOwogICAgICAgIAogICAgICAgIC8vIEJpbGdpbGVyaSB5YXpkxLFyCiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJIYXZheW9sdSDFnmlya2V0aTogIiArIGFpcmxpbmUuZ2V0TmFtZSgpKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIlXDp3XFnyBFa2xlbmRpOiAiICsgZmxpZ2h0LmdldEZsaWdodE51bWJlcigpKTsKICAgIH0KfQo=