code: @Override public Number parse(String str, ParsePosition parsePosition)
     {
        Number result = null;
  
        if (str == null)
        {
           parsePosition.setIndex(-1);
        }
        else
        {
           str = str.trim();
  
           if (str.length() == 0)
           {
              parsePosition.setIndex(-1);
           }
           else
           {
              result = super.parse(str, parsePosition);
              if (parsePosition.getIndex() == 0)
              {
                 result = null;
  
                 if (m_alternativeFormats != null)
                 {
                    for (int loop = 0; loop < m_alternativeFormats.length; loop++)
                    {
                       result = m_alternativeFormats[loop].parse(str, parsePosition);
                       if (parsePosition.getIndex() != 0)
                       {
                          break;
                       }
                    }
  
                    if (parsePosition.getIndex() == 0)
                    {
                       result = null;
                    }
                 }
              }
           }
        }
  
        return (result);
     }
docs: {@inheritDoc}