# JAVA class translation 'COS_JWorld'
       # Thu Jun 30 17:00:22 EDT 2005
       # Produced by Fritzifier, based on JasminVisitor
       # Using BCEL library to read Java bytecode
       # Here is the original code:
       
       # import java.util.Iterator;
       
       # public class COS_JWorld {
       #     private COS_JHashMap content = new COS_JHashMap();
       #     private COS_JList inventory = new COS_JList();
       
       #     public void add(COS_JNamed named, String name) {
       #         named.setName(name);
       #         content.put(named.getName(),named);
       #         inventory.add(named);
       #     }
       
       #     public COS_JNamed get(String name) {
       #         return (COS_JNamed)content.get(new String(name));
       #     }
       
       #     public void update() {
       #         for (Iterator i = inventory.iterator(); i.hasNext(); ) {
       #             COS_JNamed o = (COS_JNamed) i.next();
       #             o.update();
       #         }
       #         for (Iterator i = inventory.iterator(); i.hasNext(); ) {
       #             COS_JNamed o = (COS_JNamed) i.next();
       #             o.postUpdate();
       #         }
       #     }
       # }
[hear] (class COS_JWorld ()
          (field super-ref (make-cell 0))
          (method new (set! (super-ref) ((java lang Object) / this)))
          (method super (? x / (get! / super-ref) / x))
          (method unknown (? x / self super / x))
          (field content (cell new 0))
          (field inventory (cell new 0))
          (method <init>-V
            (lambda () /
             let ((vars / cell new / make-hash / vector
                           (pair 0 (self)))
                  (stack / cell new / vector)) /
             state-machine (vars) (stack) / ? jvm / ? x / cond
                ((= (x) 0) (jvm aload 0))
                ((= (x) 1) (jvm invokespecial <init>-V 0 0))
                ((= (x) 2) (jvm aload 0))
                ((= (x) 3) (jvm new (COS_JHashMap)))
                ((= (x) 4) (jvm dup))
                ((= (x) 5) (jvm invokespecial <init>-V 0 0))
                ((= (x) 6) (jvm putfield content (COS_JHashMap)))
                ((= (x) 7) (jvm aload 0))
                ((= (x) 8) (jvm new (COS_JList)))
                ((= (x) 9) (jvm dup))
                ((= (x) 10) (jvm invokespecial <init>-V 0 0))
                ((= (x) 11) (jvm putfield inventory (COS_JList)))
                ((= (x) 12) (jvm return))
                (jvm return))
          )
          (method <init> (self <init>-V))
          (method add-COS_JNamed-String-V
            (lambda (arg0 arg1) /
             let ((vars / cell new / make-hash / vector
                           (pair 0 (self)) (pair 1 (arg0)) (pair 2 (arg1)))
                  (stack / cell new / vector)) /
             state-machine (vars) (stack) / ? jvm / ? x / cond
                ((= (x) 0) (jvm aload 1))
                ((= (x) 1) (jvm aload 2))
                ((= (x) 2) (jvm invokevirtual setName-String-V 1 0))
                ((= (x) 3) (jvm aload 0))
                ((= (x) 4) (jvm getfield content (COS_JHashMap)))
                ((= (x) 5) (jvm aload 1))
                ((= (x) 6) (jvm invokevirtual getName-String 0 1))
                ((= (x) 7) (jvm aload 1))
                ((= (x) 8) (jvm invokevirtual put-Object-Object-V 2 0))
                ((= (x) 9) (jvm aload 0))
                ((= (x) 10) (jvm getfield inventory (COS_JList)))
                ((= (x) 11) (jvm aload 1))
                ((= (x) 12) (jvm invokevirtual add-Object-V 1 0))
                ((= (x) 13) (jvm return))
                (jvm return))
          )
          (method add (self add-COS_JNamed-String-V))
          (method get-String-COS_JNamed
            (lambda (arg0) /
             let ((vars / cell new / make-hash / vector
                           (pair 0 (self)) (pair 1 (arg0)))
                  (stack / cell new / vector)) /
             state-machine (vars) (stack) / ? jvm / ? x / cond
                ((= (x) 0) (jvm aload 0))
                ((= (x) 1) (jvm getfield content (COS_JHashMap)))
                ((= (x) 2) (jvm new (java lang String)))
                ((= (x) 3) (jvm dup))
                ((= (x) 4) (jvm aload 1))
                ((= (x) 5) (jvm invokespecial <init>-String-V 1 0))
                ((= (x) 6) (jvm invokevirtual get-Object-Object 1 1))
                ((= (x) 7) (jvm checkcast (COS_JNamed)))
                ((= (x) 8) (jvm areturn))
                (jvm return))
          )
          (method get (self get-String-COS_JNamed))
          (method update-V
            (lambda () /
             let ((vars / cell new / make-hash / vector
                           (pair 0 (self)))
                  (stack / cell new / vector)) /
             state-machine (vars) (stack) / ? jvm / ? x / cond
                ((= (x) 0) (jvm aload 0))
                ((= (x) 1) (jvm getfield inventory (COS_JList)))
                ((= (x) 2) (jvm invokevirtual iterator-Iterator 0 1))
                ((= (x) 3) (jvm astore 1))
                ((= (x) 4) (jvm aload 1))
                ((= (x) 5) (jvm invokeinterface hasNext-Z 0 1 1))
                ((= (x) 6) (jvm ifeq 14))
                ((= (x) 7) (jvm aload 1))
                ((= (x) 8) (jvm invokeinterface next-Object 0 1 1))
                ((= (x) 9) (jvm checkcast (COS_JNamed)))
                ((= (x) 10) (jvm astore 2))
                ((= (x) 11) (jvm aload 2))
                ((= (x) 12) (jvm invokevirtual update-V 0 0))
                ((= (x) 13) (jvm goto 4))
                ((= (x) 14) (jvm aload 0))
                ((= (x) 15) (jvm getfield inventory (COS_JList)))
                ((= (x) 16) (jvm invokevirtual iterator-Iterator 0 1))
                ((= (x) 17) (jvm astore 1))
                ((= (x) 18) (jvm aload 1))
                ((= (x) 19) (jvm invokeinterface hasNext-Z 0 1 1))
                ((= (x) 20) (jvm ifeq 28))
                ((= (x) 21) (jvm aload 1))
                ((= (x) 22) (jvm invokeinterface next-Object 0 1 1))
                ((= (x) 23) (jvm checkcast (COS_JNamed)))
                ((= (x) 24) (jvm astore 2))
                ((= (x) 25) (jvm aload 2))
                ((= (x) 26) (jvm invokevirtual postUpdate-V 0 0))
                ((= (x) 27) (jvm goto 18))
                ((= (x) 28) (jvm return))
                (jvm return))
          )
          (method update (self update-V))
        );