| Index: tracing/tracing/base/range.html | 
| diff --git a/tracing/tracing/base/range.html b/tracing/tracing/base/range.html | 
| index b3722146ea7eb2990b5980a4d5b37614ce140e07..767c8671fa386e76f8e8463487497155c5fc4e74 100644 | 
| --- a/tracing/tracing/base/range.html | 
| +++ b/tracing/tracing/base/range.html | 
| @@ -132,6 +132,29 @@ tr.exportTo('tr.b', function() { | 
| return new Range(); | 
|  | 
| return Range.fromExplicitRange(min, max); | 
| +    }, | 
| + | 
| +    toJSON: function() { | 
| +      if (this.isEmpty_) | 
| +        return {isEmpty: true}; | 
| +      return { | 
| +        isEmpty: false, | 
| +        max: this.max, | 
| +        min: this.min | 
| +      }; | 
| +    } | 
| +  }; | 
| + | 
| +  Range.fromDict = function(d) { | 
| +    if (d.isEmpty === true) { | 
| +      return new Range(); | 
| +    } else if (d.isEmpty === false) { | 
| +      var range = new Range(); | 
| +      range.min = d.min; | 
| +      range.max = d.max; | 
| +      return range; | 
| +    } else { | 
| +      throw new Error('Not a range'); | 
| } | 
| }; | 
|  | 
|  |