added ability to parse negative on upper surface