rem: }; 
add: }  var limit = function(val,minVal,maxVal) { return Math.max(Math.min(val, maxVal), minVal); } 
context:     function Color (r, g, b, a) {        this.r = (r != null) ? r: 0;        this.g = (g != null) ? g: 0;        this.b = (b != null) ? b: 0;        this.a = (a != null) ? a: 1.0;        this.toString = function() {            if (this.a >= 1.0)                return "rgb(" + [                    this.r, this.g, this.b                ].join(",") + ")";            else                return "rgba(" + [                    this.r, this.g, this.b, this.a                ].join(",") + ")";        };        this.scale = function(rf, gf, bf, af) {            if (rf != null)                this.r *= rf;            if (gf != null)                this.g *= gf;            if (bf != null)                this.b *= bf;            if (af != null)                this.a *= af;            return this.normalize();        };        this.adjust = function(rd, gd, bd, ad) {            if (rd != null)                this.r += rd;            if (gd != null)                this.g += gd;            if (bd != null)                this.b += bd;            if (ad != null)                this.a += ad;            return this.normalize();        };        this.clone = function() {            return new Color(this.r, this.b, this.g, this.a);        };        this.normalize = function() {            this.r = Math.max(Math.min(parseInt(this.r), 255), 0);            this.g = Math.max(Math.min(parseInt(this.g), 255), 0);            this.b = Math.max(Math.min(parseInt(this.b), 255), 0);            this.a = Math.max(Math.min(this.a, 1), 0);            return this;        };        this.normalize();    }
meta: 2005	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/2005/50c622e19ff60aaa2744d650130690f2b6f2450e/jquery.flot.js/clean/jquery.flot.js