anchor.diff:    inherited Create;
   
     FConfigData := ConfigData;
  +  FFixInsightXMLParser := TFixInsightXMLParser.Create;
  +  FProjectGroupParser := TProjectGroupParser.Create(FConfigData.InputFileName);
  +  FTaskRunner := TTaskRunner.Create(FConfigData.FixInsightExe, FConfigData.FixInsightOptions);
   
  -  // TODO: implement {TWorkflowStateHolder.Create}
  +  InitReportBuilder;
   end;
   
   destructor TWorkflowStateHolder.Destroy;
   begin
  -  FConfigData := nil;
  -
  -  // TODO: implement {TWorkflowStateHolder.Destroy}
  +  FreeAndNil(FFixInsightXMLParser);
  +  FreeAndNil(FProjectGroupParser);
  +  FreeAndNil(FReportOutput);
  +  FreeAndNil(FTaskRunner);
  +  FReportBuilder := nil;
   
     inherited Destroy;
  +end;
  +
  +procedure TWorkflowStateHolder.InitReportBuilder;
  +var
  +  Template : IHTMLReportTemplate;
  +  Report : THTMLReportBuilder;
  +begin
  +  // TODO: implement {THTMLReportCustomTemplate.Create(FConfigData.???)}
  +  Template := THTMLReportDefaultTemplate.Create;
  +
  +  FReportOutput := TFile.CreateText(FConfigData.OutputDirectory + FConfigData.OutputFileName);
  +  Report := THTMLReportBuilder.Create(FReportOutput.BaseStream);
  +  Report.SetTemplate(Template);
  +
  +  FReportBuilder := Report;
   end;
   
   { TExecutiveTransitionsProvider }
  
positive.code: interface
  
  uses
    FIToolkit.Types,
    FIToolkit.Commons.FiniteStateMachine.FSM, //TODO: remove when "F2084 Internal Error: URW1175" fixed
    FIToolkit.Commons.StateMachine,
    FIToolkit.Config.Data;
  
  type
  
    TWorkflowStateHolder = class sealed
      private
        FConfigData : TConfigData;
      public
        constructor Create(ConfigData : TConfigData);
        destructor Destroy; override;
  
negative.code: 
  implementation
  
  uses
    System.SysUtils, System.IOUtils,
    FIToolkit.Reports.Builder.HTML;
  
  { TWorkflowStateHolder }
  
  constructor TWorkflowStateHolder.Create(ConfigData : TConfigData);
  