anchor.diff:          END SEMICOLON
       ;
   
  -performanceTypeModelInit
  -    :   INITIALIZATION
  -        (durationClause)?
  -        (manipulationDispClause)?
  -    ;
  -
  -performanceTypeModelFinal
  +facilityRepresentationFinal
       :   FINALIZATION
  -        (durationClause)?
  -        (manipulationDispClause)?
  -    ;
  -
  -//We use special rules for facility module init and final to allow requires
  -//and ensures clauses (which aren't allowed in normal impl modules)...
  -moduleFacilityInit
  -    :   FAC_INIT
  -        (affectsClause)*
  +        (affectsClause)?
           (requiresClause)?
           (ensuresClause)?
           (facilityDecl)*
           (variableDecl)*
           (auxVariableDecl)*
           (stmt)*
  -    ;
  -
  -moduleFacilityFinal
  -    :   FAC_FINAL
  -        (affectsClause)*
  -        (requiresClause)?
  -        (ensuresClause)?
  -        (facilityDecl)*
  -        (variableDecl)*
  -        (auxVariableDecl)*
  -        (stmt)*
  -    ;
  -
  -moduleSpecInit
  +        END SEMICOLON
  +    ;
  +
  +performanceSpecModelInit
       :   INITIALIZATION
  -        (requiresClause)?
  -        (ensuresClause)?
  -    ;
  -
  -moduleSpecFinal
  -    :   FAC_FINAL
  -        (requiresClause)?
  -        (ensuresClause)?
  -    ;
  -
  -moduleImplInit
  -    :   FAC_INIT
  -        (affectsClause)*
  -        (facilityDecl)*
  -        (variableDecl)*
  -        (auxVariableDecl)*
  -        (stmt)*
  -    ;
  -
  -moduleImplFinal
  -    :   FAC_FINAL
  -        (facilityDecl)*
  -        (variableDecl)*
  -        (auxVariableDecl)*
  -        (stmt)*
  -    ;
  -
  -performanceModuleSpecInit
  -    :   PERF_INIT
           (durationClause)?
           (manipulationDispClause)?
       ;
   
  -performanceModuleSpecFinal
  -    :   PERF_FINAL
  +performanceSpecModelFinal
  +    :   FINALIZATION
           (durationClause)?
           (manipulationDispClause)?
       ;
  
positive.code:     :   TYPE FAMILY name=IDENTIFIER IS MODELED BY mathTypeExp SEMICOLON
          EXEMPLAR exemplar=IDENTIFIER SEMICOLON
          (constraintClause)?
          (typeModelInit)?
          (typeModelFinal)?
          END SEMICOLON
      ;
  
  
negative.code: conceptPerformanceItem
      :   confirmMathTypeDecl
      |   constraintClause
      |   performanceOperationDecl
      |   performanceTypeModelDecl
      |   mathDefinitionDecl
  