/* package whatever; // don't place package name! */
import java.util.* ;
import java.lang.* ;
import java.io.* ;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
Bus bus1 = new Bus( 1 ) ;
System .
out .
println ( bus1.
trip1 .
toString ( ) ) ; }
}
class Bus
{
private int tripNumber;
private int age;
private int capacity;
private int remainingCapacity;
private boolean [ ] [ ] seats;
Trip trip1;
public Bus( int tripNumber)
{
this .tripNumber = tripNumber;
if ( tripNumber== 1 )
{
this .model = "Setra" ;
this .type = "2+2" ;
this .age = 8 ;
this .capacity = 40 ;
this .remainingCapacity = 23 ;
this .trip1 = new Trip( this , tripNumber) ;
}
}
{
return ( "\n \t Bus Information:\n \t \t Bus: " + this .model + "\n \t \t Type: " + this .type + "\n \t \t Age: " + this .age + "\n \t \t Capacity" + this .capacity + "\n \t \t RemainingCapacity" + this .remainingCapacity ) ;
}
}
class Trip
{
private int tripNumber;
private Bus assignedBus;
public Trip( Bus bus, int tripNumber)
{
if ( tripNumber== 1 )
{
this .tripNumber = 1 ;
this .assignedBus = bus;
this .date = "27/11/2022" ;
this .origin = "Ankara" ;
this .destination = "Istanbul" ;
this .departureTime = "00:15" ;
this .arrivalTime = "06:30" ;
}
}
{
return tripNumber + ") Trip Information: \n \t Date: " + this .date + "\n \t From: " + this .origin + " to " + this .destination + "\n \t Trip time: " + this .departureTime + " to " + this .arrivalTime + this .assignedBus .toString ( ) ;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCUJ1cyBidXMxID0gbmV3IEJ1cygxKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oYnVzMS50cmlwMS50b1N0cmluZygpKTsKCX0KfQoKY2xhc3MgQnVzCnsKICAgIHByaXZhdGUgaW50IHRyaXBOdW1iZXI7CiAgICBwcml2YXRlIFN0cmluZyBtb2RlbDsKICAgIHByaXZhdGUgU3RyaW5nIHR5cGU7CiAgICBwcml2YXRlIGludCBhZ2U7CiAgICBwcml2YXRlIGludCBjYXBhY2l0eTsKICAgIHByaXZhdGUgaW50IHJlbWFpbmluZ0NhcGFjaXR5OwogICAgcHJpdmF0ZSBib29sZWFuW11bXSBzZWF0czsKICAgIFRyaXAgdHJpcDE7CiAgICAKICAgIHB1YmxpYyBCdXMoaW50IHRyaXBOdW1iZXIpCiAgICB7CiAgICAgICAgdGhpcy50cmlwTnVtYmVyID0gdHJpcE51bWJlcjsKICAgICAgICAKICAgICAgICBpZiAodHJpcE51bWJlcj09MSkKICAgICAgICB7CiAgICAgICAgICAgIHRoaXMubW9kZWwgPSAiU2V0cmEiOwogICAgICAgICAgICB0aGlzLnR5cGUgPSAiMisyIjsKICAgICAgICAgICAgdGhpcy5hZ2UgPSA4OwogICAgICAgICAgICB0aGlzLmNhcGFjaXR5ID0gNDA7CiAgICAgICAgICAgIHRoaXMucmVtYWluaW5nQ2FwYWNpdHkgPSAyMzsKICAgICAgICAgICAgCiAgICAgICAgICAgIHRoaXMudHJpcDEgPSBuZXcgVHJpcCh0aGlzLCB0cmlwTnVtYmVyKTsKICAgICAgICB9CiAgICB9CiAgICBwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkKICAgIHsKICAgICAgICByZXR1cm4gKCJcblx0QnVzIEluZm9ybWF0aW9uOlxuXHRcdEJ1czogIiArIHRoaXMubW9kZWwgKyAiXG5cdFx0VHlwZTogIiArIHRoaXMudHlwZSArICJcblx0XHRBZ2U6ICIgKyB0aGlzLmFnZSArICJcblx0XHRDYXBhY2l0eSIgKyB0aGlzLmNhcGFjaXR5ICsgIlxuXHRcdFJlbWFpbmluZ0NhcGFjaXR5IiArIHRoaXMucmVtYWluaW5nQ2FwYWNpdHkpOwogICAgfQp9CgpjbGFzcyBUcmlwCnsKICAgIHByaXZhdGUgaW50IHRyaXBOdW1iZXI7CiAgICBwcml2YXRlIFN0cmluZyBkYXRlOwogICAgcHJpdmF0ZSBTdHJpbmcgb3JpZ2luOwogICAgcHJpdmF0ZSBTdHJpbmcgZGVzdGluYXRpb247CiAgICBwcml2YXRlIFN0cmluZyBkZXBhcnR1cmVUaW1lOwogICAgcHJpdmF0ZSBTdHJpbmcgYXJyaXZhbFRpbWU7CiAgICBwcml2YXRlIEJ1cyBhc3NpZ25lZEJ1czsKICAgIAogICAgcHVibGljIFRyaXAoQnVzIGJ1cywgaW50IHRyaXBOdW1iZXIpCiAgICB7CiAgICAgICAgaWYgKHRyaXBOdW1iZXI9PTEpCiAgICAgICAgewogICAgICAgICAgICB0aGlzLnRyaXBOdW1iZXIgPSAxOwogICAgICAgICAgICB0aGlzLmFzc2lnbmVkQnVzID0gYnVzOwogICAgICAgICAgICB0aGlzLmRhdGUgPSAiMjcvMTEvMjAyMiI7CiAgICAgICAgICAgIHRoaXMub3JpZ2luID0gIkFua2FyYSI7CiAgICAgICAgICAgIHRoaXMuZGVzdGluYXRpb24gPSAiSXN0YW5idWwiOwogICAgICAgICAgICB0aGlzLmRlcGFydHVyZVRpbWUgPSAiMDA6MTUiOwogICAgICAgICAgICB0aGlzLmFycml2YWxUaW1lID0gIjA2OjMwIjsKICAgICAgICB9CiAgICB9CiAgICAKICAgIHB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKQogICAgewogICAgICAgIHJldHVybiB0cmlwTnVtYmVyICsgIikgVHJpcCBJbmZvcm1hdGlvbjogXG5cdERhdGU6ICIgKyB0aGlzLmRhdGUgKyAiXG5cdEZyb206ICIgKyB0aGlzLm9yaWdpbiArICIgdG8gIiArIHRoaXMuZGVzdGluYXRpb24gKyAiXG5cdFRyaXAgdGltZTogIiArIHRoaXMuZGVwYXJ0dXJlVGltZSArICIgdG8gIiArIHRoaXMuYXJyaXZhbFRpbWUgKyB0aGlzLmFzc2lnbmVkQnVzLnRvU3RyaW5nKCk7CiAgICB9Cn0=