class Attempt2 implements Lock {
boolean wantCS[] = {false, false};
public void requestCS(int i) { // entry protocol @\label{want}@
wantCS[i] = true; //declare intent @\label{busy}@
while (wantCS[1 - i]) ; // busy wait
}
public void releaseCS(int i) {
wantCS[i] = false;
}
}