/// <summary>
 /// Constructor given a run-off triangle.
 /// </summary>
 /// <param name="triangle">Run-off triangle to be developed by this method.</param>
 protected FactorBasedMethod(ITriangle triangle)
 {
     Triangle    = triangle.AsReadOnly();
     _projection = new Lazy <IReadOnlySquare>(CalculateProjection);
 }