docs: public static Compress.Feature parseCompressionFeature(XmlPullParser parser)
                      throws IOException, XmlPullParserException {
          assert (parser.getEventType() == XmlPullParser.START_TAG);
          String name;
          final int initialDepth = parser.getDepth();
          List<String> methods = new LinkedList<>();
          outerloop: while (true) {
              int eventType = parser.next();
              switch (eventType) {
              case XmlPullParser.START_TAG:
                  name = parser.getName();
                  switch (name) {
                  case "method":
                      methods.add(parser.nextText());
                      break;
                  }
                  break;
              case XmlPullParser.END_TAG:
                  name = parser.getName();
                  switch (name) {
                  case Compress.Feature.ELEMENT:
                      if (parser.getDepth() == initialDepth) {
                          break outerloop;
                      }
                  }
              }
          }
          assert (parser.getEventType() == XmlPullParser.END_TAG);
          assert (parser.getDepth() == initialDepth);
          return new Compress.Feature(methods);
      }