private boolean readRomanPageBackwards()
    {
        ArrayList<Character> saved = new ArrayList<Character>();
        char token = prevChar();
//        if ( token=='p')
//            System.out.println("p");
        int len = 0;
        // saved leading newline chars
        while ( token=='\n'||token=='\r' )
        {
            saved.add(token);
            token = prevChar();
        }
        while ( roman.contains(token) )
        {
            saved.add(token);
            token = prevChar();
            len++;
        }
        // ensure we have read all LFs or CRs (may be DOS)
        char mismatched = token;
        while ( token=='\r' || token=='\n' )
        {
            saved.add(token);
            token = prevChar();
        }
        // save last char - probably a letter
        saved.add(token);
        while (saved.size()>0 )
            unpush( saved.remove(saved.size()-1) );
        return len>0&&(mismatched=='\n'||mismatched=='\r');
    }