public class Test
{
    public static void main(String [] args)
    {
        Object foo = baz();
        System.out.println("hello");
    }

    public static Object baz()
    {
        final Test test = new Test();
        return new Foo() 
            {
                private final void bar()
                {
                    try {
                        whee();
                    } catch (Throwable ex) {
                        throw test.choke();
                    }
                }

                private void whee()
                {
                }
            };
    }

    public RuntimeException choke()
    {
        return new RuntimeException("ack");
    }
    
    private static abstract class Foo 
    {
    }
}
