docs: public void detach(Object ob)
      {
          Iterator<Map.Entry<String, List<InstanceMethod>>> ki = map.entrySet().iterator();
          while (ki.hasNext())
          {
              Map.Entry<String, List<InstanceMethod>> entry = ki.next();
              Iterator<InstanceMethod> li = entry.getValue().iterator();
              while (li.hasNext())
              {
                  InstanceMethod im = li.next();
                  if (im.instance.equals(ob))
                  {
                      li.remove();
                  }
              }
              if (entry.getValue().isEmpty())
              {
                  ki.remove();
              }
          }
      }