— Он чувствует синергию, — улыбнулся ифрит. — Или он просто в шоке от того, что его мать пытается превратить рай для викингов в бизнес-центр класса А.
— Не «бизнес-центр», Дамир. А устойчивую экономическую модель. Если мы не наведем там порядок, Один через год придет к нам просить взаймы на оплату коммуналки в Гладсхейме.
За окном медленно гасли огни. Валькирии в своих небесных чертогах теперь сидели со смартфонами, проверяя кредитные истории павших воинов. Тор в Асгарде пытался объяснить Хеймдаллю концепцию «гномов, танцующих в белой коробке». А в маленькой хрущевке свободный ифрит и беременный бухгалтер готовились к новому дню, где магия была лишь инструментом, а истинным чудом оставался вовремя подогретый ужин и отсутствие долгов по алиментам.
— Дамир? — позвала Лера, засыпая.
— Да, любовь моя?
— А чебупели — это тоже актив?
— Это пассив, Лера, но очень вкусный пассив.
Глава 31. Проклятие «1С: Бухгалтерии»
Если бы древние греки знали о существовании программы «1С: Предприятие», миф о Сизифе выглядел бы иначе: он бы не катил камень в гору, а пытался обновить конфигурацию «Зарплата и управление персоналом» через мобильный интернет в грозу.
Лера Скворцова сидела за столом, обложенная подушками для поддержки спины (декрет на седьмом месяце требовал особого комфорта), и смотрела в монитор, где крутилось бесконечное желтое колесико загрузки. На экране красовался заголовок: «1С: Асгард — карма и судьба. Редакция 3.0 (Магическая)».
— Лера, этот желтый квадрат снова насмехается над нами, — заметил Дамир, осторожно ставя на стол чашку с чаем из липы. — Он светится цветом песков Сахары в полдень, но внутри него — холод и пустота. Почему мы доверили учет душ великого Одина этому... прямоугольнику?
— Потому что «Книга Судеб» — это прошлый век, Дамир, — Лера сердито кликнула мышкой. — В ней нельзя сделать сводную таблицу по категориям грехов. В ней нет функции «найти и заменить». А Один хочет знать точно: сколько эйнхериев у него сейчас на балансе и какова стоимость владения каждым топором. Чтобы спасти Асгард от банкротства, нам нужна автоматизация.
Идея была гениальной: Лера создала специальную надстройку, которая должна была автоматически оценивать «Добрые дела» поступающих душ и конвертировать их в баллы лояльности Вальхаллы. Магический модуль, написанный Хасаном на языке древних рун, должен был интегрироваться с ядром «1С».
— Давай проверим систему на тебе, — предложила Лера. — Ты у нас теперь «свободный агент», твоя карма — чистый лист. Ну-ка, вспомни что-нибудь хорошее, что ты сделал за последние сутки.
Дамир задумался. Его татуировки на руках задумчиво мигнули синим. — Вчера я помог старушке из третьего подъезда поднять сумки на пятый этаж.
— Отлично! — Лера начала вводить данные.
— Объект: Дамир. Действие: помощь ближнему. Вес сумок: 15 кг. Высота подъема: 5 этажей. Мотивация... Какая была мотивация, Дамир?
— Ну... — ифрит отвел глаза. — У неё из сумки торчал хвост селедки. Этот запах напомнил мне об одном финикийском пирате, которого я когда-то замуровал в бочке с рыбой. Я почувствовал ностальгию и решил, что сумки должны достичь цели, чтобы завершить цикл мироздания.
Лера замерла. Её пальцы зависли над клавиатурой.
— То есть ты помог ей не из доброты, а из-за ассоциации с пытками трехтысячелетней давности?
— Формально — это доброе дело! — возразил Дамир. — Сумки наверху? Наверху. Старушка счастлива? Счастлива.
Лера вздохнула и ввела в поле мотивации: «Неопределенное добро с привкусом исторического садизма». Нажала кнопку «провести и закрыть».
Экран монитора внезапно дернулся. Программа издала звук, похожий на предсмертный хрип дракона. Желтое колесико замерло, а затем по монитору поползли системные сообщения: «Ошибка выполнения запроса. Исключение: Магическая неопределенность. Значение "Добро" стремится к бесконечности при делении на "Мотивацию: Селедка". Система не может обработать ифритский парадокс. Ожидание ответа от сервера...»
— Зависло, — констатировала Лера. — Намертво.
Она попыталась вызвать «Диспетчер задач», но вместо списка процессов увидела изображение маленького, ехидно ухмыляющегося существа в крошечных наушниках и с хвостиком в форме USB-разъема. Существо показало Лере язык и начало быстро печатать на нарисованной клавиатуре.
— Дамир... у нас в сервере кто-то есть. И это не глюк прошивки.
Дамир прищурился. Его глаза вспыхнули рубиновым светом, просвечивая системный блок насквозь.
— Это бес, — прорычал он. — Причем низшего ранга, из ИТ-департамента нижних миров. Они называют себя «битыми пикселями». Эти твари питаются энергией зависших процессов и чужим раздражением.
— В моем компьютере — бес-хакер? — Лера почувствовала, как в ней закипает праведный гнев бухгалтера, у которого пытаются украсть базу в отчетный период. — В «1С», где хранятся пенсионные накопления валькирий?!
Она решительно схватила Дамира за руку.
— Мы входим в систему. Дамир, используй астральную проекцию. Мы должны выкурить этого системного паразита, пока он не отправил отчетность Одина в Хельхейм!
Магия Дамира и прагматизм Леры создали странный эффект. Через секунду они уже стояли посреди бесконечного лабиринта из желтых светящихся папок, огромных таблиц, висящих в пустоте, и бесконечных потоков единиц и нулей, которые пахли жженой пластмассой.
— Это и есть «1С» изнутри? — Дамир с опаской потрогал гигантскую кнопку «Сформировать отчет», которая пролетала мимо. — Здесь мрачнее, чем в лабиринтах Минотавра.
— Осторожно! — крикнула Лера, увлекая его за колонну из цифр. — Это «Проверка контрагентов». Если она нас заметит, заставит подтверждать личность через СМС в течение трех тысяч лет.
В центре этого цифрового безумия, на троне из старых дискет, сидел тот самый бес. Он был размером с кошку, покрыт серой шерстью и постоянно что-то жевал.
— Опаньки! — пискнул бес, увидев гостей. — Юзеры пожаловали! А я тут как раз обновляю вашу карму. Теперь за каждое доброе дело взимается комиссия в пользу Адского Облачного Хранилища — 18%.
— Ты кто такой, плесень цифровая? — Дамир шагнул вперед, его кулаки окутало пламя, которое в этом мире выглядело как скопление красных пикселей.
— Я — Троян-ибн-Вирус, младший админ преисподней! — гордо заявил бес. — Моё руководство из Хельхейма недовольно вашим «стартапом». Реструктуризация Асгарда вредит нашему бизнесу. Если в Вальхалле будет порядок, к нам в Хель перестанут попадать качественные грешники-бухгалтеры! Поэтому я захватил ваш сервер. Теперь ваша «1С» будет выдавать только одну ошибку: «Недостаточно прав для спасения души».
— Ах ты мелкий вредитель... — Лера вышла из-за спины Дамира. Она не была магом, но она была женщиной, которая прошла три выездные проверки. — Ты думаешь, что захватил сервер? Ты просто не понимаешь, с кем связался.
Она достала из кармана флешку, которая сияла ослепительным белым светом.
— Это — архивный бэкап моей совести, совмещенный с лицензионным ключом «Супер-Аудитор». Дамир, держи его! Я ввожу команду принудительного закрытия периода!
Бес-хакер зашипел и начал быстро кидаться в них «битыми ссылками», которые взрывались при контакте, превращая всё вокруг в нечитаемый шрифт Wingdings. Дамир ловко перехватывал их на лету, превращая в пар.
— Малик! Зафар! Хасан! — проревел ифрит. — Нужна огневая поддержка по портам!
Визири материализовались в виде антивирусных программ. Малик стал гигантским файерволлом, преградив бесу путь к выходу. Зафар начал конвертировать код беса в формат PDF, отчего тот стал медленнее и неповоротливее. А Хасан... Хасан просто начал читать вслух пользовательское соглашение на пяти языках. От этого звука бес начал жалобно стонать и закрывать уши.
— Нет! Только не лицензионное соглашение! Оно убивает волю к жизни! — кричал Троян-ибн-Вирус.