var regions = {
    '00' : 'Неизвестный регион',
    '01' : 'Республика Адыгея',
    '02' : 'Республика Башкортостан',
    '03' : 'Республика Бурятия',
    '04' : 'Республика Алтай',
    '05' : 'Республика Дагестан',
    '06' : 'Республика Ингушетия',
    '07' : 'Кабардино-Балкарская республика',
    '08' : 'Республика Калмыкия',
    '09' : 'Карачаево-Черкесская республика',
    '10' : 'Республика Карелия',
    '11' : 'Республика Коми',
    '12' : 'Республика Марий Эл',
    '13' : 'Республика Мордовия',
    '14' : 'Республика Саха (Якутия)',
    '15' : 'Республика Северная Осетия - Алания',
    '16' : 'Республика Татарстан',
    '17' : 'Республика Тыва',
    '18' : 'Удмуртская республика',
    '19' : 'Республика Хакасия',
    '20' : 'Чеченская республика',
    '21' : 'Чувашская республика',
    '22' : 'Алтайский край',
    '23' : 'Краснодарский край',
    '24' : 'Красноярский край',
    '25' : 'Приморский край',
    '26' : 'Ставропольский край',
    '27' : 'Хабаровский край',
    '28' : 'Амурская область',
    '29' : 'Архангельская область',
    '30' : 'Астраханская область',
    '31' : 'Белгородская область',
    '32' : 'Брянская область',
    '33' : 'Владимирская область',
    '34' : 'Волгоградская область',
    '35' : 'Вологодская область',
    '36' : 'Воронежская область',
    '37' : 'Ивановская область',
    '38' : 'Иркутская область',
    '39' : 'Калининградская область',
    '40' : 'Калужская область',
    '41' : 'Камчатский край',
    '42' : 'Кемеровская область',
    '43' : 'Кировская область',
    '44' : 'Костромская область',
    '45' : 'Курганская область',
    '46' : 'Курская область',
    '47' : 'Ленинградская область',
    '48' : 'Липецкая область',
    '49' : 'Магаданская область',
    '50' : 'Московская область',
    '51' : 'Мурманская область',
    '52' : 'Нижегородская область',
    '53' : 'Новгородская область',
    '54' : 'Новосибирская область',
    '55' : 'Омская область',
    '56' : 'Оренбургская область',
    '57' : 'Орловская область',
    '58' : 'Пензенская область',
    '59' : 'Пермский край',
    '60' : 'Псковская область',
    '61' : 'Ростовская область',
    '62' : 'Рязанская область',
    '63' : 'Самарская область',
    '64' : 'Саратовская область',
    '65' : 'Сахалинская область',
    '66' : 'Свердловская область',
    '67' : 'Смоленская область',
    '68' : 'Тамбовская область',
    '69' : 'Тверская область',
    '70' : 'Томская область',
    '71' : 'Тульская область',
    '72' : 'Тюменская область',
    '73' : 'Ульяновская область',
    '74' : 'Челябинская область',
    '75' : 'Забайкальский край',
    '76' : 'Ярославская область',
    '77' : 'г. Москва',
    '78' : 'г. Санкт-Петербург',
    '79' : 'Еврейская автономная область',
    '80' : 'Забайкальский край',
    '81' : 'Пермский край',
    '82' : 'Камчатский край',
    '83' : 'Ненецкий автономный округ',
    '84' : 'Красноярский край',
    '86' : 'Ханты-Мансийский автономный округ - Югра',
    '87' : 'Чукотский автономный округ',
    '88' : 'Красноярский край',
    '89' : 'Ямало-ненецкий автономный округ',
    '99' : 'Крупнейшие налогоплательщики'
}

var Format = {

    'fill0' : function (i) {
        if (i < 10) {
            return '0' + i;
        }
        return i
    },

    'date' : function (d, m, y, delimiter) {
        d = this.fill0(d) || '-';
        m = this.fill0(m) || '-';
        y = y || '-';
        delimiter = delimiter || '.';
        return [d, m, y].join(delimiter);
    },

    'currency' : function (i) {

        var parts = [];
        
        i = parseInt(i);

        var r1 = parseInt(i / Math.pow(10, 9));
        if (r1 > 0) {
            parts.push(['<span class="nowrap">', r1, ' млрд.</span>'].join(''));
        }

        i = parseInt(i % Math.pow(10, 9));

        var r2 = parseInt(i / Math.pow(10, 6))
        if (r2 > 0) {
            parts.push(['<span class="nowrap">', r2, ' млн.</span>'].join(''));
        }

        i = parseInt(i % Math.pow(10, 6));

        var r3 = parseInt(i / Math.pow(10, 3))
        if (r3 > 0) {
            parts.push(['<span class="nowrap">', r3, ' тыс.</span>'].join(''));
        }

        parts.push('<span class="nowrap">');
        var r4 = parseInt(i % Math.pow(10, 3));
        
        if (r4 > 0) {
            parts.push(r4);
        }
        
        if (parts.length == 1) {
            parts.push('0');
        }
        parts.push(this.pluralize(r4, 'рубль', 'рубля', 'рублей'));
        parts.push('</span>');
        return parts.join(' ');
    },

    'percent' : function (i) {
        return Math.round (i*100) / 100 + '%';
    },

    'region' : function (i) {
        return regions[i] || regions['00'];
    },

    'pluralize' : function(number, one, two, five) {
        number = Math.abs(number);
        number %= 100;
        if (number >= 5 && number <= 20) {
            return five;
        }
        number %= 10;
        if (number == 1) {
            return one;
        }
        if (number >= 2 && number <= 4) {
            return two;
        }
        return five;
    }


};

var dataTableRu = {
    'sProcessing' : 'Загрузка данных...',
    "sLengthMenu": 'Показывать _MENU_ записей',
    "sZeroRecords": 'Ничего не найдено',
    "sEmptyTable": "Данные недоступны",
    "sInfo": '_START_ - _END_ из _TOTAL_ записей',
    "sInfoEmpty": 'Показывать 0 - 0 из 0 записей',
    "sInfoFiltered": '(отфильтровано из всех _MAX_ записей)',
    "sInfoPostFix": "",
    "sSearch": 'Поиск',
    "sUrl": "",
    "oPaginate": {
        "sFirst": "В начало",
        "sPrevious": "Назад",
        "sNext": "Вперед",
        "sLast": "В конец"
    }
};
