/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
{
public int X;
public int Y;
}
class PointArray
{
{
if(size
<= 0) throw new Exception("Array size less equal zero."); this.
array = new Point[size
]; }
public void SetCoordinates
(int index,
int x,
int y
) throws Exception {
if(index < this.array.length && index > 0)
{
this.array[index].X = x;
this.array[index].Y = y;
}
else throw new Exception("Array index out or range."); }
{
if(index < this.array.length && index > 0)
{
return this.array[index];
}
else throw new Exception("Array index out or range."); }
}
class Ideone
{
{
try
{
PointArray pa = new PointArray(1);
pa.SetCoordinates(1,1,1);
Point point
= pa.
GetCoordinates(2); }
{
}
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgpjbGFzcyBQb2ludAp7CglwdWJsaWMgaW50IFg7CglwdWJsaWMgaW50IFk7Cn0KCmNsYXNzIFBvaW50QXJyYXkKewoJcHJpdmF0ZSBQb2ludFtdIGFycmF5OwoJcHVibGljIFBvaW50QXJyYXkoaW50IHNpemUpIHRocm93cyBFeGNlcHRpb24KCXsKCQlpZihzaXplIDw9IDApIHRocm93IG5ldyBFeGNlcHRpb24oIkFycmF5IHNpemUgbGVzcyBlcXVhbCB6ZXJvLiIpOwoJCXRoaXMuYXJyYXkgPSBuZXcgUG9pbnRbc2l6ZV07Cgl9CgkKCXB1YmxpYyB2b2lkIFNldENvb3JkaW5hdGVzKGludCBpbmRleCwgaW50IHgsIGludCB5KSB0aHJvd3MgRXhjZXB0aW9uCgl7CgkJaWYoaW5kZXggPCB0aGlzLmFycmF5Lmxlbmd0aCAmJiBpbmRleCA+IDApCgkJewoJCQl0aGlzLmFycmF5W2luZGV4XS5YID0geDsKCQkJdGhpcy5hcnJheVtpbmRleF0uWSA9IHk7CgkJfQoJCWVsc2UgdGhyb3cgbmV3IEV4Y2VwdGlvbigiQXJyYXkgaW5kZXggb3V0IG9yIHJhbmdlLiIpOwoJfQoJCglwdWJsaWMgUG9pbnQgR2V0Q29vcmRpbmF0ZXMoaW50IGluZGV4KSB0aHJvd3MgRXhjZXB0aW9uCgl7CgkJaWYoaW5kZXggPCB0aGlzLmFycmF5Lmxlbmd0aCAmJiBpbmRleCA+IDApCgkJewoJCQlyZXR1cm4gdGhpcy5hcnJheVtpbmRleF07CgkJfQoJCWVsc2UgdGhyb3cgbmV3IEV4Y2VwdGlvbigiQXJyYXkgaW5kZXggb3V0IG9yIHJhbmdlLiIpOwoJfQp9CgpjbGFzcyBJZGVvbmUKewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCgl7CgkJdHJ5CgkJewoJCQlQb2ludEFycmF5IHBhID0gbmV3IFBvaW50QXJyYXkoMSk7CgkJCXBhLlNldENvb3JkaW5hdGVzKDEsMSwxKTsKCQkJUG9pbnQgcG9pbnQgPSBwYS5HZXRDb29yZGluYXRlcygyKTsKCQl9CgkJY2F0Y2goRXhjZXB0aW9uIGV4KQoJCXsKCQkJU3lzdGVtLm91dC5wcmludGxuKGV4KTsKCQl9Cgl9Cn0=