public SearchablePathElement(SearchablePathElement previous) : base(previous)
 {
 }
 public DictPathElement(SearchablePathElement previous, object key) : base(previous)
 {
     this.Key = key;
 }
 public PathElement(SearchablePathElement previous)
 {
     this.Previous = previous;
 }
 public ArrayPathElement(SearchablePathElement previous, int index) : base(previous)
 {
     this.Index = index;
 }