/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import java.util.Random;
/**
* Example 92 - Mutual Exclusion
*/
public static void pause(int low, int high) {
int R = r.nextInt(high-low) +low;
try {
e.printStackTrace();
}
}
public static int random(int low, int high) {
int R = r.nextInt(high-low) + low;
return R;
}
}
class Printer
extends Thread { public void run() {
for(;;) {
synchronized (mutex) {
}
}
}
}
class MutualExclusion {
public static void main
(String[] args
) { new Printer().start();
new Printer().start();
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CmltcG9ydCBqYXZhLnV0aWwuUmFuZG9tOwoKLyoqCiAqIEV4YW1wbGUgOTIgLSBNdXR1YWwgRXhjbHVzaW9uCiAqLwoKY2xhc3MgVXRpbCB7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgcGF1c2UoaW50IGxvdywgaW50IGhpZ2gpIHsKICAgICAgICBSYW5kb20gciA9IG5ldyBSYW5kb20oKTsKICAgICAgICBpbnQgUiA9IHIubmV4dEludChoaWdoLWxvdykgK2xvdzsKICAgICAgICB0cnkgewogICAgICAgICAgICBUaHJlYWQuc2xlZXAoUik7CiAgICAgICAgfSBjYXRjaCAoSW50ZXJydXB0ZWRFeGNlcHRpb24gZSkgewogICAgICAgICAgICBlLnByaW50U3RhY2tUcmFjZSgpOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIGludCByYW5kb20oaW50IGxvdywgaW50IGhpZ2gpIHsKICAgICAgICBSYW5kb20gciA9IG5ldyBSYW5kb20oKTsKICAgICAgICBpbnQgUiA9IHIubmV4dEludChoaWdoLWxvdykgKyBsb3c7CiAgICAgICAgcmV0dXJuIFI7CiAgICB9Cgp9CmNsYXNzIFByaW50ZXIgZXh0ZW5kcyBUaHJlYWQgewogICAgc3RhdGljIE9iamVjdCBtdXRleCA9IG5ldyBPYmplY3QoKTsKICAgIHB1YmxpYyB2b2lkIHJ1bigpIHsKICAgICAgICBmb3IoOzspIHsKICAgICAgICAgICAgc3luY2hyb25pemVkIChtdXRleCkgewogICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludCgiLSIpOwogICAgICAgICAgICAgICAgVXRpbC5wYXVzZSgxMDAsIDMwMCk7CiAgICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50KCIvIik7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgVXRpbC5wYXVzZSgwLCAyMDApOwogICAgICAgIH0KICAgIH0KfQpjbGFzcyBNdXR1YWxFeGNsdXNpb24gewogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIG5ldyBQcmludGVyKCkuc3RhcnQoKTsKICAgICAgICBuZXcgUHJpbnRlcigpLnN0YXJ0KCk7CiAgICB9Cn0K