internal BondScreenerDownloadSettings(BondScreenerDownloadSettings original)
 {
     this.Index = original.Index;
     this.Count = original.Count;
     foreach (BondType t in original.Types)
     {
         this.Types.Add(t);
     }
     this.Municipal_State = original.Municipal_State;
     this.Price           = original.Price;
     this.CouponRange     = new Range <double>
     {
         Maximum = original.CouponRange.Maximum,
         Minimum = original.CouponRange.Minimum
     };
     this.CurrentYieldRange = new Range <double>
     {
         Maximum = original.CurrentYieldRange.Maximum,
         Minimum = original.CurrentYieldRange.Minimum
     };
     this.YTMRange = new Range <double>
     {
         Maximum = original.YTMRange.Maximum,
         Minimum = original.YTMRange.Minimum
     };
     this.MaturityRangeInMonths = new Range <int>
     {
         Maximum = original.MaturityRangeInMonths.Maximum,
         Minimum = original.MaturityRangeInMonths.Minimum
     };
     this.RatingRange = new Range <Rating>
     {
         Maximum = original.RatingRange.Maximum,
         Minimum = original.RatingRange.Minimum
     };
     this.Callable      = original.Callable;
     this.RankFor       = original.RankFor;
     this.RankDirection = original.RankDirection;
 }
 public BondScreenerDownload()
 {
     this.Settings = new BondScreenerDownloadSettings();
 }