While tracing the Objects generated by Object.C rb_cObject(klass) --> (metaclass for rb_cObject) rb_cObject(super) --> (Object_x: A ICLASS Object) Object_x:(klass) --> rb_mKernel Object_x(super) --> Nil Is "Object_x" simply a odd way of linking in the Kernel Methods and Variables? If yes - Why is it done this way. -- GodFather -- 667 Neighbor of the Beast