}
    public void countXml(XmlPullParser xpp) throws XmlPullParserException, IOException {        int holderForStartAndLength[] = new int[2];        xpp.require(XmlPullParser.START_DOCUMENT, null, null);        int eventType = xpp.next();        xpp.require(XmlPullParser.START_TAG, null, null);        while (eventType != XmlPullParser.END_DOCUMENT) {            //System.err.println("pos="+xpp.getPositionDescription());            if(eventType == XmlPullParser.START_TAG) {                ++countSTags;                countAttribs += xpp.getAttributeCount();                if(verbose) {                    System.err.println("START_TAG "+xpp.getName());                }            } else if(eventType == XmlPullParser.TEXT) {                //char ch[] = xpp.getTextCharacters(holderForStartAndLength);                xpp.getTextCharacters(holderForStartAndLength);                //int start = holderForStartAndLength[0];                int length = holderForStartAndLength[1];                countChars += length;                if(verbose) {                    System.err.println("TEXT '"+printable(xpp.getText())+"'");                }            } else if(verbose && eventType == XmlPullParser.TEXT) {                    System.err.println("END_TAG "+xpp.getName());            }            eventType = xpp.next();        }    }