public override void EnterConfigurationSection(ProgramClassParser.ConfigurationSectionContext context)
 {
     var terminal = context.ConfigurationSectionHeader();
     var header = terminal != null? (ConfigurationSectionHeader)terminal.Symbol : null;
     Enter(new ConfigurationSection(header), context);
     var paragraphs = new List<CodeElement>();
     foreach(var paragraph in context.configurationParagraph()) {
         if (paragraph.SourceComputerParagraph() != null) {
             Enter(new SourceComputer((SourceComputerParagraph)paragraph.SourceComputerParagraph().Symbol));
             Exit();
         }
         if (paragraph.ObjectComputerParagraph() != null) {
             Enter(new ObjectComputer((ObjectComputerParagraph)paragraph.ObjectComputerParagraph().Symbol));
             Exit();
         }
         if (paragraph.SpecialNamesParagraph() != null) {
             Enter(new SpecialNames((SpecialNamesParagraph)paragraph.SpecialNamesParagraph().Symbol));
             Exit();
         }
         if (paragraph.RepositoryParagraph() != null) {
             Enter(new Repository((RepositoryParagraph)paragraph.RepositoryParagraph().Symbol));
             Exit();
         }
     }
 }