partial         void CopyExtraPropertiesToClone(AgileRun clone, bool includeLocalProperties);
 public AgileRun Clone(bool includeLocalProperties)
 {
     var c = new AgileRun
             {
                 ActualDuration = ActualDuration,
                 AgileRunNumberReadOnly = AgileRunNumberReadOnly,
                 AssignedTo = AssignedTo,
                 AssignedToId = AssignedToId,
                 Description = Description,
                 EstimatedDuration = EstimatedDuration,
                 ExecutionStatus = ExecutionStatus,
                 FieldValues = FieldValues,
                 Id = Id,
                 Name = Name,
                 Notes = Notes,
                 Number = Number,
                 Objective = Objective,
                 OrderNumber = OrderNumber,
                 PackageId = PackageId,
                 PackageName = PackageName,
                 PostCondition = PostCondition,
                 PreCondition = PreCondition,
                 Priority = Priority,
                 PriorityId = PriorityId,
                 Project = Project,
                 ProjectId = ProjectId,
                 ProjectName = ProjectName,
                 SourceContainerId = SourceContainerId,
                 SourceId = SourceId,
                 Status = Status,
                 StatusId = StatusId,
                 Type = Type,
                 TypeId = TypeId,
                 Steps = Steps.Select(x=>x.Clone(includeLocalProperties)).ToList(),
                 Widgets = Widgets.Select(x=>x.Clone(includeLocalProperties)).ToList(),
             };
     CopyExtraPropertiesToClone(c, includeLocalProperties);
     return c;
 }