function azercellTariffCalculator(data) {
	this.results = [];

	this.calculate = function(input) {
		for (var i in data.tariffset) {
			if (!data.tariffset.hasOwnProperty(i)) {continue;}
			this.results[i] = data.tariffset[i].callback_func(input, data.tariffset[i].prices);
		}
		return this.min(this.results);
	}

	this.min = function(set) {
		var min_i = 0;
		var min_val = 'NONE';
		var cur_val = 0;
		for (var i in set) {
			if (!set.hasOwnProperty(i)) {continue;}
			if (isNaN(set[i])) {continue;}
			cur_val = parseFloat(set[i]);
			if (min_val=='NONE') {
				min_i = i; min_val = cur_val;
			} else {
				if (min_val>cur_val) {
					min_i = i; min_val = cur_val;
				}
			}
		}
		return min_i;
	}
}
