PsiJavaFile:Provides6.java
  PsiImportList
    <empty list>
  PsiJavaModule:M
    PsiModifierList:
      <empty list>
    PsiKeyword:module('module')
    PsiWhiteSpace(' ')
    PsiJavaModuleReference
      PsiIdentifier:M('M')
    PsiWhiteSpace(' ')
    PsiJavaToken:LBRACE('{')
    PsiWhiteSpace(' ')
    PsiProvidesStatement
      PsiKeyword:provides('provides')
      PsiWhiteSpace(' ')
      PsiJavaCodeReferenceElement:Spi
        PsiIdentifier:Spi('Spi')
        PsiReferenceParameterList
          <empty list>
      PsiWhiteSpace(' ')
      PsiReferenceList
        PsiKeyword:with('with')
        PsiWhiteSpace(' ')
        PsiJavaCodeReferenceElement:Impl
          PsiIdentifier:Impl('Impl')
          PsiReferenceParameterList
            <empty list>
      PsiJavaToken:SEMICOLON(';')
    PsiWhiteSpace(' ')
    PsiJavaToken:RBRACE('}')