Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(19053644)
'0x1324500'
>>> main(18629615)
'0x1be3880'
>>> main(32620339)
'0xcfe300'
>>> main(8302935)
'0x15cfd00'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('34982046492')
'21743344770'
>>> main('11584647601')
'10603311403'
>>> main('9882520779')
'55968844580'
>>> main('56710943596')
'18119486675'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'A1': '0x0', 'A2': '0x16', 'A4': '0x36', 'A5': '0x2c', 'A6': '0x10'})
'0x858362c'
>>> main({'A1': '0x0', 'A2': '0x12', 'A4': '0x37', 'A5': '0x36', 'A6': '0x1c'})
'0xe6c3724'
>>> main({'A1': '0x1', 'A2': '0x14', 'A4': '0x98', 'A5': '0x23', 'A6': '0x1f'})
'0xfc69829'
>>> main({'A1': '0x0', 'A2': '0x1c', 'A4': '0x1df', 'A5': '0x1f', 'A6': '0x1d'})
'0xebfdf38'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('312766232')
('24', '0', '30', '82', '18')
>>> main('319957253')
('5', '0', '18', '9', '19')
>>> main('406717610')
('42', '0', '9', '31', '24')
>>> main('307236262')
('38', '0', '27', '40', '18')
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0xc2ce3a403')
'99999549336'
>>> main('0x517c38542')
'64623772810'
>>> main('0x255eb4f15a')
'179908031946'
>>> main('0x35358d09c7')
'111984217834'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'G1': '0x6', 'G2': '0x4', 'G3': '0x7', 'G4': '0x18d'})
'814022'
>>> main({'G1': '0xc', 'G2': '0x4', 'G3': '0xa', 'G4': '0x1c4'})
'927052'
>>> main({'G1': '0xe', 'G2': '0x4', 'G3': '0xc', 'G4': '0x13f'})
'654926'
>>> main({'G1': '0x4', 'G2': '0x2', 'G3': '0xd', 'G4': '0xe7'})
'474788'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('30735063137')
8522833496
>>> main('24490892077')
21206457163
>>> main('32603453223')
25031671561
>>> main('33347628756')
3892350901
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('11641227640')
('606', '496', '430', '5')
>>> main('1014236795')
('414', '320', '483', '0')
>>> main('9572324447')
('279', '225', '468', '4')
>>> main('8345995237')
('505', '348', '907', '3')
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main([('J1', '0x3'), ('J2', '0x9c'), ('J3', '0x3'), ('J4', '0x0'), ('J5', '0x8')])
134771
>>> main([('J1', '0x0'), ('J2', '0x22'), ('J3', '0x7'), ('J4', '0x1'), ('J5', '0x0')])
15496
>>> main([('J1', '0x0'), ('J2', '0xcf'), ('J3', '0x1'), ('J4', '0x1'), ('J5', '0x6')])
108348
>>> main([('J1', '0x1'), ('J2', '0xda'), ('J3', '0x2'), ('J4', '0x0'), ('J5', '0xa')])
166761
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main([('E1', '611'), ('E3', '1'), ('E4', '52'), ('E5', '6'), ('E6', '1')])
62136931
>>> main([('E1', '885'), ('E3', '7'), ('E4', '56'), ('E5', '7'), ('E6', '1')])
66642805
>>> main([('E1', '240'), ('E3', '2'), ('E4', '11'), ('E5', '2'), ('E6', '1')])
42680560
>>> main([('E1', '211'), ('E3', '5'), ('E4', '40'), ('E5', '2'), ('E6', '1')])
44605651
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main((0, 1, 8, 167))
'0xa782'
>>> main((0, 6, 7, 819))
'0x3337c'
>>> main((0, 6, 5, 731))
'0x2db5c'
>>> main((1, 6, 8, 151))
'0x978d'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('372590230')
'0x1ab12d46'
>>> main('325690632')
'0x149a11a5'
>>> main('529787531')
'0x9fd17ea'
>>> main('167078851')
'0x1a4f876b'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('88587172')
[('C1', '36'), ('C2', '238'), ('C3', '30'), ('C4', '0'), ('C5', '5'), ('C6', '1')]
>>> main('68116179')
[('C1', '19'), ('C2', '123'), ('C3', '61'), ('C4', '0'), ('C5', '0'), ('C6', '1')]
>>> main('22670081')
[('C1', '1'), ('C2', '172'), ('C3', '39'), ('C4', '1'), ('C5', '5'), ('C6', '0')]
>>> main('132094527')
[('C1', '63'), ('C2', '104'), ('C3', '62'), ('C4', '1'), ('C5', '15'), ('C6', '1')]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('153814')
[('Y1', 6), ('Y2', 13), ('Y3', 11), ('Y4', 0), ('Y5', 2)]
>>> main('69964')
[('Y1', 12), ('Y2', 20), ('Y3', 2), ('Y4', 0), ('Y5', 1)]
>>> main('167156')
[('Y1', 4), ('Y2', 79), ('Y3', 1), ('Y4', 1), ('Y5', 2)]
>>> main('109426')
[('Y1', 2), ('Y2', 55), ('Y3', 5), ('Y4', 1), ('Y5', 1)]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('390027382')
('54', '33', '92')
>>> main('258395197')
('61', '48', '61')
>>> main('422442489')
('57', '23', '100')
>>> main('969983393')
('33', '22', '231')
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(640529044)
'640310704'
>>> main(978730271)
'978613823'
>>> main(1034808980)
'1034575340'
>>> main(1070023349)
'1070257985'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(21856414)
'0x18053080'
>>> main(490792807)
'0xe7507c0'
>>> main(322869187)
'0x97cfcc0'
>>> main(190939639)
'0x181d82c0'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('15957523')
'63826328'
>>> main('8477492')
'33913356'
>>> main('22977298')
'91908364'
>>> main('48509147')
'194039171'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('202312')
'296497'
>>> main('521425')
'333055'
>>> main('439716')
'148971'
>>> main('475447')
'225652'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('4', '11', '4', '8', '2'))
'41564'
>>> main(('3', '11', '4', '3', '2'))
'36443'
>>> main(('6', '3', '2', '0', '2'))
'33054'
>>> main(('2', '11', '4', '11', '0'))
'11866'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(408530)
('0xd2', '0x3', '0xe', '0x0', '0x3')
>>> main(663924)
('0x74', '0x1', '0x8', '0x0', '0x5')
>>> main(1566311)
('0x67', '0x2', '0x9', '0x7', '0xb')
>>> main(1113360)
('0x10', '0x1', '0xf', '0x3', '0x8')
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main({'Y1': '0x1', 'Y2': '0x140', 'Y3': '0x43', 'Y4': '0x38', 'Y5': '0x32', 'Y6': '0xaf'})
1506652992769
>>> main({'Y1': '0x1', 'Y2': '0x2f', 'Y3': '0x59', 'Y4': '0xc', 'Y5': '0x3a', 'Y6': '0xc5'})
1696122376381
>>> main({'Y1': '0x2', 'Y2': '0x200', 'Y3': '0x37', 'Y4': '0x6', 'Y5': '0x2', 'Y6': '0x53'})
713105307650
>>> main({'Y1': '0x0', 'Y2': '0x299', 'Y3': '0x96', 'Y4': '0x3e', 'Y5': '0x10', 'Y6': '0xbe'})
1633226943076
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('140442572613')
{'N1': '5', 'N2': '58', 'N3': '242', 'N5': '204', 'N6': '65'}
>>> main('46032421196')
{'N1': '12', 'N2': '10', 'N3': '480', 'N5': '222', 'N6': '21'}
>>> main('380145491511')
{'N1': '23', 'N2': '49', 'N3': '507', 'N5': '9', 'N6': '177'}
>>> main('41501674440')
{'N1': '8', 'N2': '30', 'N3': '41', 'N5': '166', 'N6': '19'}
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(838703106327)
824688679352
>>> main(379064806688)
343735928065
>>> main(1019433701957)
962296740650
>>> main(217000826302)
206200783349
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(34743339)
[('L1', 11), ('L2', 66), ('L3', 2), ('L4', 530)]
>>> main(53195555)
[('L1', 3), ('L2', 50), ('L3', 11), ('L4', 811)]
>>> main(26024009)
[('L1', 9), ('L2', 132), ('L3', 1), ('L4', 397)]
>>> main(24433016)
[('L1', 8), ('L2', 23), ('L3', 13), ('L4', 372)]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(16582150381)
[('G1', 45), ('G2', 35), ('G3', 24), ('G4', 15), ('G5', 113), ('G6', 15)]
>>> main(56767252216)
[('G1', 56), ('G2', 27), ('G3', 24), ('G4', 11), ('G5', 222), ('G6', 52)]
>>> main(55476384939)
[('G1', 43), ('G2', 18), ('G3', 7), ('G4', 19), ('G5', 170), ('G6', 51)]
>>> main(13642344735)
[('G1', 31), ('G2', 36), ('G3', 26), ('G4', 18), ('G5', 180), ('G6', 12)]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(229676398)
{'W1': '366', 'W2': '74', 'W3': '0', 'W4': '3', 'W5': '27'}
>>> main(126801138)
{'W1': '242', 'W2': '106', 'W3': '7', 'W4': '0', 'W5': '15'}
>>> main(120217698)
{'W1': '98', 'W2': '48', 'W3': '5', 'W4': '2', 'W5': '14'}
>>> main(115181612)
{'W1': '44', 'W2': '196', 'W3': '6', 'W4': '5', 'W5': '13'}
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(73637276)
242643200
>>> main(91577168)
91046144
>>> main(54265071)
1293312
>>> main(196140883)
58543616
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('E1', 1), ('E3', 4), ('E4', 0), ('E5', 447)])
'915521'
>>> main([('E1', 1), ('E3', 3), ('E4', 1), ('E5', 153)])
'313521'
>>> main([('E1', 1), ('E3', 2), ('E4', 14), ('E5', 468)])
'960289'
>>> main([('E1', 0), ('E3', 2), ('E4', 11), ('E5', 357)])
'732576'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main([('C1', '0xd'), ('C2', '0xf'), ('C3', '0x4'), ('C4', '0x2f')])
'0xbc8fd'
>>> main([('C1', '0x0'), ('C2', '0x1c'), ('C3', '0x4'), ('C4', '0x11')])
'0x449c0'
>>> main([('C1', '0x1'), ('C2', '0x7'), ('C3', '0x19'), ('C4', '0x11')])
'0x47271'
>>> main([('C1', '0x2'), ('C2', '0xa'), ('C3', '0x1a'), ('C4', '0xa')])
'0x2b4a2'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x1f7003')
'2033280'
>>> main('0x1694c1')
'1395968'
>>> main('0x108a7f')
'1089792'
>>> main('0xbe835')
'690048'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x1524e3aa4e')
'60748203337'
>>> main('0x3088f90a68')
'65070435362'
>>> main('0x20a392d5b2')
'246341961768'
>>> main('0x4b2532c30')
'160037863724'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(184926249)
[('Q2', '224'), ('Q3', '2'), ('Q4', '176')]
>>> main(297914254)
[('Q2', '231'), ('Q3', '0'), ('Q4', '284')]
>>> main(758105496)
[('Q2', '226'), ('Q3', '7'), ('Q4', '722')]
>>> main(757747274)
[('Q2', '39'), ('Q3', '5'), ('Q4', '722')]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('7848291')
[('D1', 35), ('D2', 1), ('D3', 961), ('D4', 1), ('D5', 14)]
>>> main('1888597')
[('D1', 21), ('D2', 1), ('D3', 209), ('D4', 1), ('D5', 3)]
>>> main('19336892')
[('D1', 60), ('D2', 2), ('D3', 782), ('D4', 1), ('D5', 36)]
>>> main('4417415')
[('D1', 7), ('D2', 2), ('D3', 871), ('D4', 0), ('D5', 8)]
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main({'N1': '0x2a', 'N2': '0x4', 'N4': '0x0'})
298
>>> main({'N1': '0x2c', 'N2': '0x0', 'N4': '0x2'})
4140
>>> main({'N1': '0x17', 'N2': '0x3', 'N4': '0x3'})
6359
>>> main({'N1': '0x0', 'N2': '0x4', 'N4': '0x0'})
256
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('16280853')
'2816769'
>>> main('25443784')
'26314497'
>>> main('9538189')
'18518530'
>>> main('15490593')
'4386562'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('576116')
'609923'
>>> main('615612')
'825221'
>>> main('783756')
'962959'
>>> main('484953')
'314173'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('2401615085')
'0x28f1ed'
>>> main('1328798750')
'0x34f01e'
>>> main('4095503647')
'0x1f431f'
>>> main('570110434')
'0x321ee2'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(2702623)
'3439176'
>>> main(1618612)
'710184'
>>> main(4154287)
'4112344'
>>> main(524122)
'2974200'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0xff4128')
{'V1': '0x28', 'V2': '0x1', 'V3': '0xa', 'V5': '0x1f'}
>>> main('0x3b6a23')
{'V1': '0x23', 'V2': '0xa', 'V3': '0xb', 'V5': '0x7'}
>>> main('0xdea290')
{'V1': '0x90', 'V2': '0x2', 'V3': '0x5', 'V5': '0x1b'}
>>> main('0x511e2')
{'V1': '0xe2', 'V2': '0x11', 'V3': '0x8', 'V5': '0x0'}