Requirements File(0,141)
  PathReqImpl(PATH_REQ)(0,76)
    UriReferenceImpl(URI_REFERENCE)(0,53)
      UriImpl(URI)(0,53)
        SchemeImpl(SCHEME)(0,7)
          PsiElement(RequirementsTokenType.LETTER)('g')(0,1)
          PsiElement(RequirementsTokenType.LETTER)('i')(1,2)
          PsiElement(RequirementsTokenType.LETTER)('t')(2,3)
          PsiElement(RequirementsTokenType.PLUS)('+')(3,4)
          PsiElement(RequirementsTokenType.LETTER)('g')(4,5)
          PsiElement(RequirementsTokenType.LETTER)('i')(5,6)
          PsiElement(RequirementsTokenType.LETTER)('t')(6,7)
        PsiElement(RequirementsTokenType.COLON)(':')(7,8)
        HierPartImpl(HIER_PART)(8,37)
          PsiElement(RequirementsTokenType.SLASH)('/')(8,9)
          PsiElement(RequirementsTokenType.SLASH)('/')(9,10)
          AuthorityImpl(AUTHORITY)(10,25)
            HostImpl(HOST)(10,25)
              RegNameImpl(REG_NAME)(10,25)
                UnreservedImpl(UNRESERVED)(10,11)
                  PsiElement(RequirementsTokenType.LETTER)('g')(10,11)
                UnreservedImpl(UNRESERVED)(11,12)
                  PsiElement(RequirementsTokenType.LETTER)('i')(11,12)
                UnreservedImpl(UNRESERVED)(12,13)
                  PsiElement(RequirementsTokenType.LETTER)('t')(12,13)
                UnreservedImpl(UNRESERVED)(13,14)
                  PsiElement(RequirementsTokenType.DOT)('.')(13,14)
                UnreservedImpl(UNRESERVED)(14,15)
                  PsiElement(RequirementsTokenType.LETTER)('e')(14,15)
                UnreservedImpl(UNRESERVED)(15,16)
                  PsiElement(RequirementsTokenType.LETTER)('x')(15,16)
                UnreservedImpl(UNRESERVED)(16,17)
                  PsiElement(RequirementsTokenType.LETTER)('a')(16,17)
                UnreservedImpl(UNRESERVED)(17,18)
                  PsiElement(RequirementsTokenType.LETTER)('m')(17,18)
                UnreservedImpl(UNRESERVED)(18,19)
                  PsiElement(RequirementsTokenType.LETTER)('p')(18,19)
                UnreservedImpl(UNRESERVED)(19,20)
                  PsiElement(RequirementsTokenType.LETTER)('l')(19,20)
                UnreservedImpl(UNRESERVED)(20,21)
                  PsiElement(RequirementsTokenType.LETTER)('e')(20,21)
                UnreservedImpl(UNRESERVED)(21,22)
                  PsiElement(RequirementsTokenType.DOT)('.')(21,22)
                UnreservedImpl(UNRESERVED)(22,23)
                  PsiElement(RequirementsTokenType.LETTER)('c')(22,23)
                UnreservedImpl(UNRESERVED)(23,24)
                  PsiElement(RequirementsTokenType.LETTER)('o')(23,24)
                UnreservedImpl(UNRESERVED)(24,25)
                  PsiElement(RequirementsTokenType.LETTER)('m')(24,25)
          PathAbemptyImpl(PATH_ABEMPTY)(25,37)
            PsiElement(RequirementsTokenType.SLASH)('/')(25,26)
            SegmentImpl(SEGMENT)(26,37)
              PcharImpl(PCHAR)(26,27)
                UnreservedImpl(UNRESERVED)(26,27)
                  PsiElement(RequirementsTokenType.LETTER)('M')(26,27)
              PcharImpl(PCHAR)(27,28)
                UnreservedImpl(UNRESERVED)(27,28)
                  PsiElement(RequirementsTokenType.LETTER)('y')(27,28)
              PcharImpl(PCHAR)(28,29)
                UnreservedImpl(UNRESERVED)(28,29)
                  PsiElement(RequirementsTokenType.LETTER)('P')(28,29)
              PcharImpl(PCHAR)(29,30)
                UnreservedImpl(UNRESERVED)(29,30)
                  PsiElement(RequirementsTokenType.LETTER)('r')(29,30)
              PcharImpl(PCHAR)(30,31)
                UnreservedImpl(UNRESERVED)(30,31)
                  PsiElement(RequirementsTokenType.LETTER)('o')(30,31)
              PcharImpl(PCHAR)(31,32)
                UnreservedImpl(UNRESERVED)(31,32)
                  PsiElement(RequirementsTokenType.LETTER)('j')(31,32)
              PcharImpl(PCHAR)(32,33)
                UnreservedImpl(UNRESERVED)(32,33)
                  PsiElement(RequirementsTokenType.LETTER)('e')(32,33)
              PcharImpl(PCHAR)(33,34)
                UnreservedImpl(UNRESERVED)(33,34)
                  PsiElement(RequirementsTokenType.LETTER)('c')(33,34)
              PcharImpl(PCHAR)(34,35)
                UnreservedImpl(UNRESERVED)(34,35)
                  PsiElement(RequirementsTokenType.LETTER)('t')(34,35)
              PcharImpl(PCHAR)(35,36)
                UnreservedImpl(UNRESERVED)(35,36)
                  PsiElement(RequirementsTokenType.DIGIT)('1')(35,36)
              PcharImpl(PCHAR)(36,37)
                UnreservedImpl(UNRESERVED)(36,37)
                  PsiElement(RequirementsTokenType.DIGIT)('2')(36,37)
        PsiElement(RequirementsTokenType.SHARP)('#')(37,38)
        FragmentImpl(FRAGMENT)(38,53)
          PcharImpl(PCHAR)(38,39)
            UnreservedImpl(UNRESERVED)(38,39)
              PsiElement(RequirementsTokenType.LETTER)('e')(38,39)
          PcharImpl(PCHAR)(39,40)
            UnreservedImpl(UNRESERVED)(39,40)
              PsiElement(RequirementsTokenType.LETTER)('g')(39,40)
          PcharImpl(PCHAR)(40,41)
            UnreservedImpl(UNRESERVED)(40,41)
              PsiElement(RequirementsTokenType.LETTER)('g')(40,41)
          PcharImpl(PCHAR)(41,42)
            PsiElement(RequirementsTokenType.SUB_DELIMS)('=')(41,42)
          PcharImpl(PCHAR)(42,43)
            UnreservedImpl(UNRESERVED)(42,43)
              PsiElement(RequirementsTokenType.LETTER)('M')(42,43)
          PcharImpl(PCHAR)(43,44)
            UnreservedImpl(UNRESERVED)(43,44)
              PsiElement(RequirementsTokenType.LETTER)('y')(43,44)
          PcharImpl(PCHAR)(44,45)
            UnreservedImpl(UNRESERVED)(44,45)
              PsiElement(RequirementsTokenType.LETTER)('P')(44,45)
          PcharImpl(PCHAR)(45,46)
            UnreservedImpl(UNRESERVED)(45,46)
              PsiElement(RequirementsTokenType.LETTER)('r')(45,46)
          PcharImpl(PCHAR)(46,47)
            UnreservedImpl(UNRESERVED)(46,47)
              PsiElement(RequirementsTokenType.LETTER)('o')(46,47)
          PcharImpl(PCHAR)(47,48)
            UnreservedImpl(UNRESERVED)(47,48)
              PsiElement(RequirementsTokenType.LETTER)('j')(47,48)
          PcharImpl(PCHAR)(48,49)
            UnreservedImpl(UNRESERVED)(48,49)
              PsiElement(RequirementsTokenType.LETTER)('e')(48,49)
          PcharImpl(PCHAR)(49,50)
            UnreservedImpl(UNRESERVED)(49,50)
              PsiElement(RequirementsTokenType.LETTER)('c')(49,50)
          PcharImpl(PCHAR)(50,51)
            UnreservedImpl(UNRESERVED)(50,51)
              PsiElement(RequirementsTokenType.LETTER)('t')(50,51)
          PcharImpl(PCHAR)(51,52)
            UnreservedImpl(UNRESERVED)(51,52)
              PsiElement(RequirementsTokenType.DIGIT)('1')(51,52)
          PcharImpl(PCHAR)(52,53)
            UnreservedImpl(UNRESERVED)(52,53)
              PsiElement(RequirementsTokenType.DIGIT)('2')(52,53)
    QuotedMarkerImpl(QUOTED_MARKER)(53,76)
      PsiElement(RequirementsTokenType.SEMICOLON)(' ;')(53,55)
      PsiWhiteSpace(' ')(55,56)
      MarkerOrImpl(MARKER_OR)(56,76)
        MarkerAndImpl(MARKER_AND)(56,76)
          MarkerExprImpl(MARKER_EXPR)(56,76)
            MarkerVarImpl(MARKER_VAR)(56,70)
              PsiElement(RequirementsTokenType.ENV_VAR)('python_version')(56,70)
            PsiWhiteSpace(' ')(70,71)
            MarkerOpImpl(MARKER_OP)(71,72)
              PsiElement(RequirementsTokenType.VERSION_CMP)('<')(71,72)
            PsiWhiteSpace(' ')(72,73)
            MarkerVarImpl(MARKER_VAR)(73,76)
              PythonStrImpl(PYTHON_STR)(73,76)
                PsiElement(RequirementsTokenType.SQUOTE)(''')(73,74)
                PsiElement(RequirementsTokenType.PYTHON_STR_C)('3')(74,75)
                PsiElement(RequirementsTokenType.SQUOTE)(''')(75,76)
  PsiElement(RequirementsTokenType.EOL)('\n')(76,77)
  PsiElement(RequirementsTokenType.EOL)('\n')(77,78)
  PathReqImpl(PATH_REQ)(78,141)
    UriReferenceImpl(URI_REFERENCE)(78,118)
      RelativeRefImpl(RELATIVE_REF)(78,118)
        RelativePartImpl(RELATIVE_PART)(78,118)
          PathNoschemeImpl(PATH_NOSCHEME)(78,118)
            SegmentNzNcImpl(SEGMENT_NZ_NC)(78,85)
              UnreservedImpl(UNRESERVED)(78,79)
                PsiElement(RequirementsTokenType.LETTER)('i')(78,79)
              UnreservedImpl(UNRESERVED)(79,80)
                PsiElement(RequirementsTokenType.LETTER)('n')(79,80)
              UnreservedImpl(UNRESERVED)(80,81)
                PsiElement(RequirementsTokenType.LETTER)('s')(80,81)
              UnreservedImpl(UNRESERVED)(81,82)
                PsiElement(RequirementsTokenType.LETTER)('t')(81,82)
              UnreservedImpl(UNRESERVED)(82,83)
                PsiElement(RequirementsTokenType.LETTER)('a')(82,83)
              UnreservedImpl(UNRESERVED)(83,84)
                PsiElement(RequirementsTokenType.LETTER)('l')(83,84)
              UnreservedImpl(UNRESERVED)(84,85)
                PsiElement(RequirementsTokenType.LETTER)('l')(84,85)
            PsiElement(RequirementsTokenType.SLASH)('/')(85,86)
            SegmentImpl(SEGMENT)(86,89)
              PcharImpl(PCHAR)(86,87)
                UnreservedImpl(UNRESERVED)(86,87)
                  PsiElement(RequirementsTokenType.LETTER)('p')(86,87)
              PcharImpl(PCHAR)(87,88)
                UnreservedImpl(UNRESERVED)(87,88)
                  PsiElement(RequirementsTokenType.LETTER)('k')(87,88)
              PcharImpl(PCHAR)(88,89)
                UnreservedImpl(UNRESERVED)(88,89)
                  PsiElement(RequirementsTokenType.LETTER)('g')(88,89)
            PsiElement(RequirementsTokenType.SLASH)('/')(89,90)
            SegmentImpl(SEGMENT)(90,118)
              PcharImpl(PCHAR)(90,91)
                UnreservedImpl(UNRESERVED)(90,91)
                  PsiElement(RequirementsTokenType.LETTER)('g')(90,91)
              PcharImpl(PCHAR)(91,92)
                UnreservedImpl(UNRESERVED)(91,92)
                  PsiElement(RequirementsTokenType.LETTER)('d')(91,92)
              PcharImpl(PCHAR)(92,93)
                UnreservedImpl(UNRESERVED)(92,93)
                  PsiElement(RequirementsTokenType.LETTER)('a')(92,93)
              PcharImpl(PCHAR)(93,94)
                UnreservedImpl(UNRESERVED)(93,94)
                  PsiElement(RequirementsTokenType.LETTER)('t')(93,94)
              PcharImpl(PCHAR)(94,95)
                UnreservedImpl(UNRESERVED)(94,95)
                  PsiElement(RequirementsTokenType.LETTER)('a')(94,95)
              PcharImpl(PCHAR)(95,96)
                UnreservedImpl(UNRESERVED)(95,96)
                  PsiElement(RequirementsTokenType.MINUS)('-')(95,96)
              PcharImpl(PCHAR)(96,97)
                UnreservedImpl(UNRESERVED)(96,97)
                  PsiElement(RequirementsTokenType.DIGIT)('3')(96,97)
              PcharImpl(PCHAR)(97,98)
                UnreservedImpl(UNRESERVED)(97,98)
                  PsiElement(RequirementsTokenType.DOT)('.')(97,98)
              PcharImpl(PCHAR)(98,99)
                UnreservedImpl(UNRESERVED)(98,99)
                  PsiElement(RequirementsTokenType.DIGIT)('0')(98,99)
              PcharImpl(PCHAR)(99,100)
                UnreservedImpl(UNRESERVED)(99,100)
                  PsiElement(RequirementsTokenType.DOT)('.')(99,100)
              PcharImpl(PCHAR)(100,101)
                UnreservedImpl(UNRESERVED)(100,101)
                  PsiElement(RequirementsTokenType.DIGIT)('1')(100,101)
              PcharImpl(PCHAR)(101,102)
                UnreservedImpl(UNRESERVED)(101,102)
                  PsiElement(RequirementsTokenType.MINUS)('-')(101,102)
              PcharImpl(PCHAR)(102,103)
                UnreservedImpl(UNRESERVED)(102,103)
                  PsiElement(RequirementsTokenType.LETTER)('p')(102,103)
              PcharImpl(PCHAR)(103,104)
                UnreservedImpl(UNRESERVED)(103,104)
                  PsiElement(RequirementsTokenType.LETTER)('y')(103,104)
              PcharImpl(PCHAR)(104,105)
                UnreservedImpl(UNRESERVED)(104,105)
                  PsiElement(RequirementsTokenType.DIGIT)('3')(104,105)
              PcharImpl(PCHAR)(105,106)
                UnreservedImpl(UNRESERVED)(105,106)
                  PsiElement(RequirementsTokenType.MINUS)('-')(105,106)
              PcharImpl(PCHAR)(106,107)
                UnreservedImpl(UNRESERVED)(106,107)
                  PsiElement(RequirementsTokenType.LETTER)('n')(106,107)
              PcharImpl(PCHAR)(107,108)
                UnreservedImpl(UNRESERVED)(107,108)
                  PsiElement(RequirementsTokenType.LETTER)('o')(107,108)
              PcharImpl(PCHAR)(108,109)
                UnreservedImpl(UNRESERVED)(108,109)
                  PsiElement(RequirementsTokenType.LETTER)('n')(108,109)
              PcharImpl(PCHAR)(109,110)
                UnreservedImpl(UNRESERVED)(109,110)
                  PsiElement(RequirementsTokenType.LETTER)('e')(109,110)
              PcharImpl(PCHAR)(110,111)
                UnreservedImpl(UNRESERVED)(110,111)
                  PsiElement(RequirementsTokenType.MINUS)('-')(110,111)
              PcharImpl(PCHAR)(111,112)
                UnreservedImpl(UNRESERVED)(111,112)
                  PsiElement(RequirementsTokenType.LETTER)('a')(111,112)
              PcharImpl(PCHAR)(112,113)
                UnreservedImpl(UNRESERVED)(112,113)
                  PsiElement(RequirementsTokenType.LETTER)('n')(112,113)
              PcharImpl(PCHAR)(113,114)
                UnreservedImpl(UNRESERVED)(113,114)
                  PsiElement(RequirementsTokenType.LETTER)('y')(113,114)
              PcharImpl(PCHAR)(114,115)
                UnreservedImpl(UNRESERVED)(114,115)
                  PsiElement(RequirementsTokenType.DOT)('.')(114,115)
              PcharImpl(PCHAR)(115,116)
                UnreservedImpl(UNRESERVED)(115,116)
                  PsiElement(RequirementsTokenType.LETTER)('w')(115,116)
              PcharImpl(PCHAR)(116,117)
                UnreservedImpl(UNRESERVED)(116,117)
                  PsiElement(RequirementsTokenType.LETTER)('h')(116,117)
              PcharImpl(PCHAR)(117,118)
                UnreservedImpl(UNRESERVED)(117,118)
                  PsiElement(RequirementsTokenType.LETTER)('l')(117,118)
    QuotedMarkerImpl(QUOTED_MARKER)(118,141)
      PsiElement(RequirementsTokenType.SEMICOLON)(' ;')(118,120)
      PsiWhiteSpace(' ')(120,121)
      MarkerOrImpl(MARKER_OR)(121,141)
        MarkerAndImpl(MARKER_AND)(121,141)
          MarkerExprImpl(MARKER_EXPR)(121,141)
            MarkerVarImpl(MARKER_VAR)(121,135)
              PsiElement(RequirementsTokenType.ENV_VAR)('python_version')(121,135)
            PsiWhiteSpace(' ')(135,136)
            MarkerOpImpl(MARKER_OP)(136,137)
              PsiElement(RequirementsTokenType.VERSION_CMP)('<')(136,137)
            PsiWhiteSpace(' ')(137,138)
            MarkerVarImpl(MARKER_VAR)(138,141)
              PythonStrImpl(PYTHON_STR)(138,141)
                PsiElement(RequirementsTokenType.SQUOTE)(''')(138,139)
                PsiElement(RequirementsTokenType.PYTHON_STR_C)('3')(139,140)
                PsiElement(RequirementsTokenType.SQUOTE)(''')(140,141)
