code: static function init()
      {
          if (self::$initialized == false) {
              self::$NONE = new Permission(1, "none");
              self::$SOI = new Permission(2, "soi");
              self::$COI = new Permission(3, "coi");
              self::$DOI = new Permission(4, "doi");
              self::$DOI_PLUS = new Permission(5, "doi+");
              self::$OTHER = new Permission(6, "other");
              self::$initialized = true;
          }
      }
docs: This is the initialization method for the permission types. This must be called once in the beginning.