// Simple compiler test.

public final class Where implements support.Waldo 
{
  int WhereIsWaldo ()
    {
      // The compiler should find 'here' in support.Waldo.
      return here;
    }
}


