code: public Package definePackage(String name, Manifest manifest, URL sealBase) throws IllegalArgumentException {
          Attributes mA = manifest.getMainAttributes();
          String specTitle = mA.getValue(Name.SPECIFICATION_TITLE);
          String specVersion = mA.getValue(Name.SPECIFICATION_VERSION);
          String specVendor = mA.getValue(Name.SPECIFICATION_VENDOR);
          String implTitle = mA.getValue(Name.IMPLEMENTATION_TITLE);
          String implVersion = mA.getValue(Name.IMPLEMENTATION_VERSION);
          String implVendor = mA.getValue(Name.IMPLEMENTATION_VENDOR);
          String sealedString = mA.getValue(Name.SEALED);
          Boolean sealed = (sealedString == null ? Boolean.FALSE : sealedString.equalsIgnoreCase("true"));
  
          //now overwrite global attributes with the specific attributes
          String unixName = name.replaceAll("\\.", "/") + "/"; //replace all dots with slash and add trailing slash
          mA = manifest.getAttributes(unixName);
          if (mA != null) {
              String s = mA.getValue(Name.SPECIFICATION_TITLE);
              if (s != null)
                  specTitle = s;
              s = mA.getValue(Name.SPECIFICATION_VERSION);
              if (s != null)
                  specVersion = s;
              s = mA.getValue(Name.SPECIFICATION_VENDOR);
              if (s != null)
                  specVendor = s;
              s = mA.getValue(Name.IMPLEMENTATION_TITLE);
              if (s != null)
                  implTitle = s;
              s = mA.getValue(Name.IMPLEMENTATION_VERSION);
              if (s != null)
                  implVersion = s;
              s = mA.getValue(Name.IMPLEMENTATION_VENDOR);
              if (s != null)
                  implVendor = s;
              s = mA.getValue(Name.SEALED);
              if (s != null)
                  sealed = s.equalsIgnoreCase("true");
          }
  
          if (!sealed)
              sealBase = null;
          return definePackage(name, specTitle, specVersion, specVendor, implTitle, implVersion, implVendor, sealBase);
      }
docs: to set vars passed up to ClassLoader.definePackage.