A   Ǳ     4     'ĕ\0Nov  4 202510:13:50HOST64sm_86







.version 9.0
.target sm_86
.address_size 64

.global .align 1 .b8 kmask_iq2xs[8] = {1, 2, 4, 8, 16, 32, 64, 128};
.global .align 1 .b8 ksigns_iq2xs[128] = {0, 129, 130, 3, 132, 5, 6, 135, 136, 9, 10, 139, 12, 141, 142, 15, 144, 17, 18, 147, 20, 149, 150, 23, 24, 153, 154, 27, 156, 29, 30, 159, 160, 33, 34, 163, 36, 165, 166, 39, 40, 169, 170, 43, 172, 45, 46, 175, 48, 177, 178, 51, 180, 53, 54, 183, 184, 57, 58, 187, 60, 189, 190, 63, 192, 65, 66, 195, 68, 197, 198, 71, 72, 201, 202, 75, 204, 77, 78, 207, 80, 209, 210, 83, 212, 85, 86, 215, 216, 89, 90, 219, 92, 221, 222, 95, 96, 225, 226, 99, 228, 101, 102, 231, 232, 105, 106, 235, 108, 237, 238, 111, 240, 113, 114, 243, 116, 245, 246, 119, 120, 249, 250, 123, 252, 125, 126, 255};
.global .align 8 .b8 ksigns64[1024] = {0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 255, 0, 255, 0, 0, 0, 0, 0, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 255, 255, 0, 255, 0, 0, 0, 0, 0, 0, 255, 255, 0, 0, 0, 0, 0, 255, 255, 255, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 255, 0, 0, 255, 0, 0, 0, 0, 0, 255, 0, 255, 0, 0, 0, 0, 255, 255, 0, 255, 0, 0, 0, 255, 0, 0, 255, 255, 0, 0, 0, 0, 255, 0, 255, 255, 0, 0, 0, 255, 0, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 255, 255, 0, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 255, 0, 0, 0, 255, 255, 0, 0, 255, 0, 0, 255, 0, 0, 255, 0, 255, 0, 0, 0, 255, 0, 255, 0, 255, 0, 0, 255, 0, 255, 255, 0, 255, 0, 0, 255, 255, 255, 255, 0, 255, 0, 0, 0, 0, 0, 0, 255, 255, 0, 0, 0, 255, 0, 0, 255, 255, 0, 0, 255, 0, 255, 0, 255, 255, 0, 0, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 255, 255, 255, 0, 0, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 0, 0, 255, 0, 0, 0, 0, 0, 255, 0, 255, 255, 0, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 0, 255, 0, 0, 255, 255, 0, 0, 0, 255, 0, 255, 0, 0, 255, 0, 0, 255, 0, 0, 255, 0, 255, 0, 0, 255, 0, 255, 0, 255, 255, 0, 0, 255, 0, 255, 255, 255, 255, 0, 0, 255, 0, 0, 0, 0, 0, 255, 0, 255, 0, 0, 255, 0, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 0, 255, 255, 255, 0, 255, 0, 255, 0, 0, 0, 0, 255, 255, 0, 255, 0, 255, 255, 0, 255, 255, 0, 255, 0, 0, 0, 255, 255, 255, 0, 255, 0, 0, 255, 255, 255, 255, 0, 255, 0, 255, 0, 0, 0, 0, 255, 255, 0, 0, 255, 0, 0, 0, 255, 255, 0, 255, 0, 255, 0, 0, 255, 255, 0, 255, 255, 255, 0, 0, 255, 255, 0, 0, 0, 0, 255, 0, 255, 255, 0, 255, 255, 0, 255, 0, 255, 255, 0, 0, 0, 255, 255, 0, 255, 255, 0, 0, 255, 255, 255, 0, 255, 255, 0, 255, 0, 0, 0, 255, 255, 255, 0, 255, 255, 0, 0, 255, 255, 255, 0, 0, 0, 255, 0, 255, 255, 255, 0, 0, 255, 255, 0, 255, 255, 255, 0, 255, 0, 0, 255, 255, 255, 255, 0, 0, 255, 0, 255, 255, 255, 255, 0, 255, 0, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 0, 0, 0, 0, 0, 255, 0, 0, 255, 0, 0, 0, 0, 255, 0, 255, 255, 0, 0, 0, 0, 255, 255, 0, 0, 255, 0, 0, 0, 255, 0, 255, 0, 255, 0, 0, 0, 255, 255, 0, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 0, 0, 0, 255, 0, 0, 0, 0, 255, 0, 0, 255, 0, 255, 0, 0, 255, 0, 0, 255, 255, 0, 255, 0, 255, 0, 0, 255, 255, 255, 255, 0, 255, 0, 0, 255, 0, 0, 0, 255, 255, 0, 0, 255, 255, 255, 0, 255, 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 0, 255, 0, 255, 255, 255, 255, 0, 0, 255, 255, 0, 0, 0, 0, 255, 0, 255, 0, 255, 0, 0, 0, 255, 0, 255, 255, 0, 255, 0, 0, 255, 0, 255, 255, 255, 255, 0, 0, 255, 0, 255, 0, 0, 0, 255, 0, 255, 0, 255, 255, 255, 0, 255, 0, 255, 0, 255, 0, 0, 255, 255, 0, 255, 0, 255, 0, 255, 255, 255, 0, 255, 0, 255, 255, 0, 0, 0, 255, 255, 0, 255, 255, 255, 0, 0, 255, 255, 0, 255, 0, 0, 255, 0, 255, 255, 0, 255, 0, 255, 255, 0, 255, 255, 0, 255, 255, 0, 0, 255, 255, 255, 0, 255, 0, 255, 0, 255, 255, 255, 0, 255, 255, 0, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 0, 255, 0, 0, 0, 0, 0, 0, 255, 255, 0, 255, 0, 0, 0, 0, 255, 255, 255, 0, 255, 0, 0, 0, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 0, 0, 0, 255, 0, 0, 255, 255, 255, 255, 0, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 255, 255, 0, 255, 255, 255, 0, 0, 255, 255, 255, 0, 0, 0, 255, 0, 255, 255, 255, 255, 0, 0, 255, 0, 255, 255, 0, 0, 255, 0, 255, 0, 255, 255, 0, 255, 255, 0, 255, 0, 255, 255, 255, 0, 0, 255, 255, 0, 255, 255, 0, 255, 0, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 0, 0, 0, 0, 0, 255, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 0, 0, 255, 0, 0, 255, 255, 255, 0, 255, 255, 0, 0, 255, 255, 255, 255, 0, 0, 255, 0, 255, 255, 255, 0, 255, 0, 255, 0, 255, 255, 255, 255, 0, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 0, 0, 0, 0, 255, 255, 255, 255, 0, 255, 0, 0, 255, 255, 255, 255, 255, 0, 255, 0, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 0, 0, 0, 255, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 0, 0, 255, 255, 255, 255, 255, 255, 0, 255, 255, 255, 255, 255, 255, 255, 255};
.global .align 8 .b8 iq2xxs_grid[2048] = {8, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 8, 8, 43, 43, 43, 8, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 8, 8, 43, 43, 8, 43, 8, 8, 8, 8, 43, 8, 43, 43, 8, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 8, 8, 43, 25, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 43, 8, 43, 8, 43, 8, 8, 8, 43, 8, 8, 43, 43, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 8, 8, 8, 25, 43, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 8, 43, 25, 8, 25, 25, 25, 8, 8, 25, 43, 43, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 25, 8, 25, 43, 25, 25, 8, 8, 25, 43, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 8, 8, 25, 8, 43, 43, 25, 8, 8, 8, 25, 43, 43, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 43, 43, 8, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 43, 8, 25, 25, 8, 43, 8, 8, 8, 43, 8, 43, 8, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 43, 8, 8, 8, 43, 43, 8, 8, 8, 25, 25, 8, 43, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 25, 8, 25, 25, 25, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 25, 8, 43, 43, 25, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 25, 43, 8, 43, 8, 25, 8, 25, 25, 8, 25, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 25, 25, 43, 8, 8, 25, 25, 8, 25, 43, 8, 25, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 8, 43, 25, 8, 25, 25, 25, 8, 43, 8, 43, 25, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 43, 25, 25, 8, 43, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 25, 8, 8, 43, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 25, 25, 8, 8, 25, 43, 25, 8, 8, 8, 43, 43, 25, 43, 25, 8, 25, 8, 25, 25, 43, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 43, 8, 8, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 43, 8, 25, 8, 43, 25, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 43, 8, 43, 8, 8, 43, 8, 8, 43, 8, 25, 43, 43, 8, 25, 8, 43, 8, 8, 43, 8, 25, 25, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 43, 8, 8, 8, 43, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 8, 25, 8, 25, 43, 8, 43, 25, 25, 25, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 8, 25, 8, 8, 25, 25, 25, 43, 8, 8, 25, 43, 25, 25, 25, 43, 8, 8, 8, 25, 43, 43, 25, 43, 8, 8, 43, 8, 8, 8, 43, 43, 8, 8, 8, 43, 8, 8, 43, 43, 8, 8, 25, 25, 43, 8, 43, 43, 8, 8, 25, 8, 25, 43, 43, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 25, 43, 25, 25, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 25, 25, 8, 43, 25, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 25, 25, 25, 8, 43, 25, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 8, 43, 8, 25, 43, 8, 8, 25, 43, 25, 25, 25, 43, 8, 8, 25, 8, 43, 43, 25, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 25, 43, 25, 43, 8, 25, 8, 25, 43, 8, 25, 8, 25, 25, 8, 25, 8, 25, 43, 8, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 25, 25, 8, 25, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 8, 43, 25, 25, 25, 43, 8, 25, 25, 8, 43, 25, 25, 43, 8, 25, 43, 8, 8, 43, 25, 43, 8, 25, 25, 25, 8, 25, 43, 43, 8, 25, 8, 8, 25, 43, 43, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 8, 25, 25, 25, 43, 25, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 43, 8, 43, 8, 8, 25, 25, 8, 25, 8, 8, 25, 8, 25, 25, 43, 8, 8, 25, 25, 8, 25, 25, 8, 25, 43, 43, 25, 8, 25, 25, 25, 8, 25, 43, 43, 8, 25, 25, 8, 8, 25, 43, 8, 25, 25, 25, 43, 8, 25, 43, 8, 25, 25, 25, 43, 43, 8, 8, 25, 25, 25, 25, 25, 8, 8, 8, 43, 25, 25, 25, 8, 25, 25, 25, 43, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 25, 8, 25, 8, 8, 43, 25, 25, 25, 43, 25, 8, 8, 43, 25, 25, 8, 25, 43, 25, 8, 43, 25, 25, 8, 8, 8, 25, 25, 43, 25, 25, 8, 43, 8, 8, 43, 43, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 43, 43, 25, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 25, 25, 25, 25, 25, 25, 8, 43, 25, 8, 43, 25, 8, 43, 8, 43, 25, 8, 8, 43, 25, 43, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 25, 25, 8, 8, 8, 25, 43, 25, 8, 8, 25, 8, 25, 25, 43, 25, 43, 8, 25, 8, 25, 25, 43, 25, 8, 25, 8, 43, 25, 25, 43, 25, 43, 8, 8, 25, 8, 43, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 8, 8, 8, 43, 43, 43, 8, 8, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 8, 43, 43, 8, 8, 43, 8, 8, 8, 43, 8, 25, 8, 8, 25, 8, 8, 43, 8, 43, 25, 8, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 43, 25, 8, 25, 8, 43, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 25, 25, 25, 8, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 43, 25, 8, 25, 8, 43, 8, 8, 8, 8, 25, 25, 8, 43, 43, 25, 8, 25, 25, 25, 8, 43, 8, 25, 25, 43, 25, 25, 8, 43, 25, 43, 8, 8, 43, 25, 8, 43, 8, 8, 8, 25, 43, 25, 8, 43, 8, 8, 43, 25, 43, 25, 8, 43, 43, 8, 8, 8, 8, 43, 8, 43, 8, 25, 8, 8, 25, 43, 8, 43, 25, 8, 25, 8, 43, 43, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 25, 43, 8, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 25, 43, 25, 8, 43, 43, 8, 8, 25, 43, 43, 25, 25, 8, 25, 8, 25, 43, 8, 8, 8, 43, 25, 8, 25, 43, 25, 25, 8, 25, 43, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 43, 8, 43, 8, 8, 25, 25, 43, 8, 25, 8, 25, 8, 25, 25, 43, 25, 8, 25, 25, 25, 25, 25, 43, 25, 8, 8, 43, 8, 43, 25, 43, 8, 8, 43, 8, 25, 43, 25, 43, 43, 8, 8, 8, 8, 8, 43, 43, 8, 8, 25, 25, 8, 8, 43, 43, 25, 25, 8, 43, 8, 8, 43, 43, 25, 43, 8, 8, 25, 8, 43, 43, 8, 8, 8, 8, 43, 8, 43, 43, 8, 43, 25, 8, 8, 25, 43, 43, 8, 8, 25, 25, 8, 43, 43, 43, 8, 25, 8, 8, 25, 43, 43, 43};
.global .align 8 .b8 iq2xs_grid[4096] = {8, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 8, 8, 8, 25, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 8, 8, 25, 43, 25, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 8, 43, 43, 25, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 8, 8, 25, 25, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 8, 8, 25, 8, 25, 25, 25, 8, 8, 8, 8, 25, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 8, 8, 43, 43, 25, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 8, 25, 25, 25, 25, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 43, 43, 8, 43, 43, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 25, 8, 8, 25, 25, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 25, 25, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 25, 8, 25, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 43, 25, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 25, 25, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 8, 25, 8, 25, 8, 25, 25, 8, 8, 8, 25, 25, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 8, 25, 8, 8, 25, 25, 25, 8, 8, 8, 25, 8, 25, 25, 25, 8, 8, 8, 8, 25, 25, 25, 25, 8, 8, 25, 8, 43, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 43, 25, 43, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 8, 43, 8, 8, 25, 43, 25, 8, 8, 8, 25, 8, 43, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 43, 43, 8, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 25, 25, 43, 8, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 43, 25, 25, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 8, 43, 43, 8, 43, 8, 8, 43, 43, 43, 43, 8, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 25, 8, 8, 43, 25, 43, 8, 8, 25, 43, 8, 43, 25, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 8, 43, 8, 43, 43, 8, 8, 8, 43, 43, 8, 43, 43, 8, 8, 43, 25, 25, 43, 43, 43, 8, 8, 8, 8, 43, 43, 43, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 25, 8, 25, 25, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 25, 8, 25, 25, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 25, 8, 25, 8, 25, 25, 8, 8, 25, 8, 8, 25, 25, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 25, 8, 43, 43, 43, 25, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 8, 25, 25, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 8, 25, 8, 25, 8, 25, 8, 25, 8, 8, 25, 25, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 8, 25, 8, 8, 25, 25, 8, 25, 8, 8, 25, 8, 25, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 25, 25, 43, 25, 8, 25, 8, 43, 25, 25, 43, 25, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 43, 25, 8, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 8, 8, 8, 43, 25, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 8, 25, 25, 8, 25, 25, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 25, 8, 25, 8, 8, 25, 25, 8, 8, 25, 25, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 25, 8, 8, 25, 8, 25, 25, 8, 8, 25, 8, 25, 8, 25, 25, 8, 25, 43, 8, 25, 8, 25, 25, 8, 8, 8, 25, 25, 8, 25, 25, 8, 8, 25, 43, 25, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 8, 25, 8, 8, 25, 25, 25, 8, 8, 8, 25, 8, 25, 25, 25, 8, 8, 8, 8, 25, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 25, 25, 8, 43, 25, 25, 8, 25, 43, 8, 25, 43, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 43, 8, 25, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 25, 25, 25, 8, 43, 25, 8, 43, 25, 8, 43, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 25, 25, 8, 8, 25, 43, 25, 8, 43, 25, 43, 25, 25, 43, 25, 8, 25, 8, 25, 25, 43, 43, 25, 8, 25, 43, 43, 43, 43, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 8, 8, 43, 8, 25, 25, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 8, 8, 43, 8, 43, 43, 8, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 43, 8, 25, 8, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 8, 43, 43, 8, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 43, 8, 25, 25, 8, 43, 8, 25, 25, 43, 25, 25, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 43, 8, 43, 8, 43, 8, 43, 8, 8, 8, 8, 43, 43, 8, 43, 8, 8, 43, 43, 43, 43, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 25, 43, 43, 8, 8, 25, 43, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 8, 25, 8, 8, 25, 25, 25, 43, 8, 43, 8, 25, 25, 25, 25, 43, 8, 25, 43, 25, 43, 25, 25, 43, 8, 25, 8, 8, 8, 43, 25, 43, 8, 43, 43, 25, 8, 43, 25, 43, 8, 43, 25, 43, 43, 43, 25, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 43, 8, 8, 8, 43, 43, 8, 43, 43, 8, 8, 8, 43, 43, 8, 8, 8, 43, 8, 8, 43, 43, 8, 25, 25, 25, 25, 8, 43, 43, 8, 8, 43, 8, 43, 8, 43, 43, 8, 43, 8, 43, 43, 8, 43, 43, 8, 8, 43, 43, 25, 25, 43, 43, 8, 8, 8, 25, 43, 25, 43, 43, 8, 8, 43, 8, 8, 43, 43, 43, 8, 8, 8, 43, 8, 43, 43, 43, 8, 43, 8, 8, 43, 43, 43, 43, 8, 8, 43, 8, 43, 43, 43, 43, 8, 43, 43, 8, 43, 43, 43, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 8, 8, 8, 8, 25, 25, 25, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 25, 43, 43, 8, 25, 8, 8, 8, 25, 25, 8, 25, 25, 8, 8, 8, 25, 8, 25, 25, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 8, 8, 25, 25, 25, 43, 25, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 25, 25, 25, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 25, 25, 8, 25, 8, 25, 8, 8, 25, 8, 25, 25, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 25, 25, 8, 8, 25, 25, 8, 8, 25, 8, 25, 8, 25, 25, 8, 8, 25, 8, 8, 25, 25, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 25, 25, 25, 8, 43, 25, 8, 8, 25, 43, 8, 43, 43, 25, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 43, 8, 25, 8, 43, 8, 8, 25, 25, 43, 43, 8, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 8, 25, 8, 25, 25, 25, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 25, 8, 25, 8, 8, 25, 8, 25, 8, 25, 25, 8, 8, 25, 8, 25, 25, 43, 25, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 25, 8, 8, 25, 8, 25, 8, 25, 8, 25, 8, 25, 8, 25, 8, 25, 8, 8, 25, 25, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 8, 25, 25, 43, 8, 25, 8, 25, 25, 8, 8, 8, 25, 25, 8, 25, 8, 25, 8, 8, 25, 25, 8, 25, 8, 8, 25, 8, 25, 25, 8, 25, 8, 25, 43, 8, 25, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 25, 43, 43, 25, 43, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 43, 43, 8, 8, 43, 25, 8, 25, 8, 25, 8, 25, 43, 25, 8, 25, 8, 8, 25, 25, 43, 25, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 25, 25, 8, 25, 8, 43, 8, 25, 8, 25, 25, 25, 8, 43, 8, 25, 43, 8, 43, 25, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 25, 8, 25, 8, 25, 43, 8, 25, 8, 25, 8, 25, 25, 43, 8, 25, 8, 8, 25, 25, 25, 43, 8, 25, 25, 43, 43, 25, 25, 43, 8, 25, 8, 25, 8, 8, 43, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 8, 8, 8, 25, 25, 25, 25, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 8, 25, 25, 8, 25, 25, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 43, 43, 8, 8, 8, 25, 25, 25, 8, 8, 25, 8, 8, 25, 25, 8, 25, 8, 25, 8, 8, 25, 25, 8, 8, 25, 25, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 25, 25, 8, 8, 8, 25, 8, 25, 25, 8, 25, 8, 8, 25, 8, 25, 25, 8, 8, 25, 8, 25, 8, 25, 25, 25, 25, 25, 8, 25, 8, 25, 25, 8, 8, 8, 25, 25, 8, 25, 25, 43, 8, 8, 25, 25, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 25, 8, 25, 43, 8, 25, 25, 43, 43, 43, 43, 43, 8, 25, 25, 25, 8, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 8, 25, 8, 8, 25, 25, 25, 25, 8, 43, 8, 8, 25, 25, 25, 8, 8, 8, 25, 8, 25, 25, 25, 8, 8, 43, 25, 8, 25, 25, 25, 25, 8, 8, 43, 8, 25, 25, 25, 25, 8, 43, 43, 8, 25, 25, 25, 8, 8, 8, 8, 25, 25, 25, 25, 8, 43, 8, 8, 25, 25, 25, 25, 8, 8, 8, 43, 25, 25, 25, 25, 8, 43, 8, 43, 25, 25, 25, 25, 25, 8, 43, 8, 43, 25, 25, 25, 8, 43, 43, 25, 43, 25, 25, 25, 25, 8, 43, 43, 43, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 25, 25, 8, 8, 43, 25, 25, 25, 8, 8, 25, 8, 43, 25, 25, 8, 8, 25, 25, 8, 43, 25, 25, 25, 43, 25, 43, 8, 43, 25, 25, 43, 43, 25, 8, 25, 43, 25, 25, 8, 8, 8, 25, 25, 43, 25, 25, 43, 8, 8, 25, 25, 43, 25, 25, 25, 25, 8, 43, 43, 43, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 25, 25, 25, 8, 8, 43, 25, 43, 8, 43, 25, 8, 8, 43, 25, 43, 25, 8, 43, 8, 8, 43, 25, 25, 43, 43, 43, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 25, 43, 8, 43, 8, 43, 25, 43, 43, 8, 25, 43, 8, 43, 25, 43, 8, 25, 43, 43, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 43, 25, 25, 8, 8, 25, 43, 25, 8, 8, 25, 8, 25, 25, 43, 25, 8, 8, 8, 25, 25, 25, 43, 25, 25, 25, 8, 25, 25, 25, 43, 25, 8, 25, 43, 43, 25, 25, 43, 25, 25, 8, 8, 8, 8, 43, 43, 25, 43, 43, 43, 25, 8, 43, 43, 25, 25, 25, 43, 8, 25, 43, 43, 25, 43, 25, 8, 8, 43, 43, 43, 25, 8, 25, 25, 25, 43, 43, 43, 25, 43, 8, 43, 25, 43, 43, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 8, 8, 43, 43, 43, 43, 8, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 43, 43, 8, 8, 43, 8, 8, 8, 43, 8, 43, 43, 43, 8, 8, 8, 43, 43, 43, 43, 43, 8, 8, 8, 43, 25, 8, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 25, 8, 8, 43, 43, 25, 8, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 43, 25, 8, 25, 25, 25, 8, 8, 43, 25, 43, 25, 25, 25, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 43, 8, 43, 8, 8, 43, 8, 8, 8, 43, 43, 8, 8, 43, 43, 8, 8, 43, 43, 8, 8, 43, 8, 8, 43, 43, 43, 8, 8, 43, 8, 43, 43, 43, 43, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 43, 8, 25, 8, 8, 25, 8, 43, 25, 25, 25, 8, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 43, 25, 8, 25, 8, 43, 25, 43, 8, 43, 8, 25, 8, 43, 8, 8, 8, 8, 25, 25, 8, 43, 8, 25, 8, 25, 25, 25, 8, 43, 25, 25, 43, 43, 25, 25, 8, 43, 8, 43, 25, 8, 43, 25, 8, 43, 43, 43, 43, 25, 43, 25, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 43, 8, 8, 8, 43, 8, 43, 25, 25, 43, 8, 8, 43, 8, 43, 43, 43, 25, 25, 8, 43, 8, 43, 8, 8, 8, 43, 8, 43, 8, 43, 43, 8, 8, 43, 8, 43, 8, 43, 8, 43, 43, 43, 8, 43, 8, 43, 43, 25, 8, 8, 25, 43, 8, 43, 43, 8, 43, 8, 43, 43, 8, 43, 8, 8, 8, 43, 43, 43, 8, 43, 8, 43, 8, 43, 43, 43, 8, 43, 43, 25, 25, 43, 43, 43, 8, 43, 8, 43, 43, 43, 43, 43, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 25, 43, 43, 25, 25, 25, 8, 8, 25, 43, 8, 25, 8, 43, 8, 8, 25, 43, 8, 8, 8, 8, 25, 8, 25, 43, 43, 8, 43, 8, 25, 8, 25, 43, 8, 25, 43, 25, 25, 8, 25, 43, 43, 25, 25, 25, 43, 8, 25, 43, 25, 43, 8, 43, 43, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 25, 25, 8, 8, 8, 25, 25, 43, 8, 25, 8, 25, 8, 25, 25, 43, 8, 8, 25, 25, 8, 25, 25, 43, 8, 43, 25, 25, 8, 25, 25, 43, 25, 43, 43, 8, 25, 25, 25, 43, 8, 8, 25, 43, 25, 25, 25, 43, 43, 8, 25, 43, 25, 25, 25, 43, 25, 8, 8, 25, 43, 25, 25, 43, 25, 8, 25, 25, 8, 43, 25, 43, 43, 25, 43, 43, 8, 43, 25, 43, 25, 43, 8, 25, 25, 43, 25, 43, 25, 25, 25, 8, 43, 43, 25, 43, 8, 8, 43, 25, 43, 43, 25, 43, 8, 8, 8, 8, 8, 8, 43, 43, 43, 8, 8, 8, 8, 8, 43, 43, 8, 43, 8, 8, 8, 8, 43, 43, 43, 43, 8, 8, 8, 8, 43, 43, 8, 8, 43, 8, 8, 8, 43, 43, 43, 43, 43, 8, 8, 8, 43, 43, 8, 8, 43, 43, 8, 8, 43, 43, 25, 8, 25, 25, 25, 8, 43, 43, 25, 43, 25, 25, 25, 8, 43, 43, 43, 25, 43, 43, 25, 8, 43, 43, 8, 8, 8, 8, 43, 8, 43, 43, 43, 8, 8, 8, 43, 8, 43, 43, 8, 43, 8, 8, 43, 8, 43, 43, 43, 43, 43, 8, 43, 8, 43, 43, 8, 8, 8, 43, 43, 8, 43, 43, 8, 8, 43, 43, 43, 8, 43, 43, 8, 8, 8, 25, 8, 25, 43, 43, 25, 25, 25, 43, 8, 25, 43, 43, 25, 25, 43, 25, 43, 25, 43, 43, 8, 43, 25, 43, 43, 25, 43, 43, 43, 43, 8, 8, 8, 43, 43, 43, 8, 8, 43, 8, 8, 43, 43, 43, 43, 8, 43, 8, 8, 43, 43, 43, 8, 43, 43, 8, 8, 43, 43, 43, 8, 8, 43, 43, 8, 43, 43, 43, 8, 43, 43, 43, 8, 43, 43, 43, 8, 25, 8, 8, 25, 43, 43, 43, 8, 25, 8, 43, 25, 43, 43, 43, 43, 25, 8, 43, 25, 43, 43, 43, 8, 43, 43, 8, 43, 43, 43, 43, 43, 43, 43, 8, 43, 43, 43, 43, 25, 8, 25, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43};
.global .align 8 .b8 iq2s_grid[8192] = {8, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 8, 8, 8, 25, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 8, 8, 8, 43, 25, 43, 25, 8, 8, 8, 8, 25, 43, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 8, 25, 25, 43, 43, 8, 8, 8, 8, 43, 43, 43, 43, 8, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 8, 8, 25, 25, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 8, 8, 25, 8, 25, 25, 25, 8, 8, 8, 8, 25, 25, 25, 25, 8, 8, 8, 43, 25, 25, 25, 25, 8, 8, 8, 25, 43, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 8, 25, 25, 43, 25, 25, 8, 8, 8, 8, 43, 43, 25, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 8, 8, 43, 8, 25, 43, 25, 8, 8, 8, 25, 25, 25, 43, 25, 8, 8, 8, 25, 8, 43, 43, 25, 8, 8, 8, 8, 25, 43, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 43, 43, 43, 8, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 43, 25, 8, 25, 43, 8, 8, 8, 25, 43, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 8, 25, 25, 25, 25, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 25, 25, 8, 43, 43, 8, 8, 8, 43, 43, 8, 43, 43, 8, 8, 8, 8, 25, 25, 43, 43, 8, 8, 8, 43, 8, 43, 43, 43, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 25, 8, 8, 25, 25, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 43, 25, 43, 8, 8, 25, 8, 8, 25, 43, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 25, 25, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 43, 43, 8, 25, 8, 25, 8, 8, 25, 8, 25, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 43, 25, 25, 25, 8, 25, 8, 8, 25, 43, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 43, 8, 43, 25, 8, 25, 8, 8, 25, 25, 43, 25, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 43, 25, 8, 43, 8, 25, 8, 8, 25, 43, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 8, 8, 25, 25, 25, 43, 8, 25, 8, 8, 8, 43, 25, 43, 8, 25, 8, 8, 25, 8, 43, 43, 8, 25, 8, 8, 8, 25, 43, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 25, 25, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 8, 43, 43, 8, 8, 25, 25, 8, 8, 25, 8, 25, 8, 25, 25, 8, 8, 8, 25, 25, 8, 25, 25, 8, 8, 43, 25, 25, 8, 25, 25, 8, 8, 25, 43, 25, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 8, 25, 25, 43, 8, 25, 25, 8, 8, 8, 43, 43, 8, 25, 25, 8, 8, 25, 8, 8, 25, 25, 25, 8, 8, 8, 25, 8, 25, 25, 25, 8, 8, 43, 25, 8, 25, 25, 25, 8, 8, 25, 43, 8, 25, 25, 25, 8, 8, 8, 8, 25, 25, 25, 25, 8, 8, 43, 8, 25, 25, 25, 25, 8, 8, 25, 25, 25, 25, 25, 25, 8, 8, 8, 43, 25, 25, 25, 25, 8, 8, 25, 8, 43, 25, 25, 25, 8, 8, 8, 25, 43, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 43, 8, 8, 43, 25, 25, 8, 8, 25, 25, 8, 43, 25, 25, 8, 8, 8, 43, 8, 43, 25, 25, 8, 8, 25, 8, 25, 43, 25, 25, 8, 8, 8, 25, 25, 43, 25, 25, 8, 8, 8, 8, 43, 43, 25, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 8, 43, 25, 8, 8, 43, 25, 8, 8, 25, 43, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 25, 25, 25, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 8, 25, 25, 8, 25, 43, 25, 8, 8, 8, 43, 8, 25, 43, 25, 8, 8, 25, 8, 25, 25, 43, 25, 8, 8, 8, 25, 25, 25, 43, 25, 8, 8, 8, 8, 43, 25, 43, 25, 8, 8, 25, 8, 8, 43, 43, 25, 8, 8, 8, 25, 8, 43, 43, 25, 8, 8, 8, 8, 25, 43, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 43, 25, 25, 8, 8, 43, 8, 8, 25, 43, 25, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 25, 25, 43, 8, 8, 43, 8, 8, 43, 43, 43, 8, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 43, 25, 8, 25, 8, 43, 8, 8, 25, 43, 8, 25, 8, 43, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 43, 8, 25, 25, 8, 43, 8, 8, 25, 25, 25, 25, 8, 43, 8, 8, 8, 43, 25, 25, 8, 43, 8, 8, 25, 8, 43, 25, 8, 43, 8, 8, 8, 25, 43, 25, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 25, 25, 8, 43, 8, 43, 8, 8, 8, 25, 25, 43, 8, 43, 8, 8, 43, 43, 43, 43, 8, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 43, 8, 25, 8, 25, 43, 8, 8, 25, 25, 25, 8, 25, 43, 8, 8, 8, 43, 25, 8, 25, 43, 8, 8, 25, 8, 43, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 25, 25, 8, 25, 25, 43, 8, 8, 8, 43, 8, 25, 25, 43, 8, 8, 25, 8, 25, 25, 25, 43, 8, 8, 8, 25, 25, 25, 25, 43, 8, 8, 8, 8, 43, 25, 25, 43, 8, 8, 25, 8, 8, 43, 25, 43, 8, 8, 8, 8, 25, 43, 25, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 25, 8, 25, 8, 43, 43, 8, 8, 8, 25, 25, 8, 43, 43, 8, 8, 43, 8, 43, 8, 43, 43, 8, 8, 8, 43, 43, 8, 43, 43, 8, 8, 43, 43, 43, 8, 43, 43, 8, 8, 8, 8, 25, 25, 43, 43, 8, 8, 25, 43, 25, 43, 43, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 25, 8, 25, 25, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 25, 8, 43, 25, 43, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 25, 8, 25, 25, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 25, 8, 25, 8, 25, 25, 8, 8, 25, 8, 8, 25, 25, 25, 8, 8, 25, 8, 43, 25, 25, 25, 8, 8, 25, 8, 25, 43, 25, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 25, 8, 43, 8, 43, 25, 8, 8, 25, 8, 25, 25, 43, 25, 8, 8, 25, 8, 8, 43, 43, 25, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 8, 43, 25, 8, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 25, 8, 25, 25, 25, 43, 8, 8, 25, 8, 8, 43, 25, 43, 8, 8, 25, 8, 25, 8, 43, 43, 8, 8, 25, 8, 8, 25, 43, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 8, 25, 25, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 8, 43, 43, 8, 8, 25, 8, 25, 8, 25, 8, 25, 8, 25, 8, 25, 8, 8, 25, 25, 8, 25, 8, 25, 8, 43, 25, 25, 8, 25, 8, 25, 8, 25, 43, 25, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 8, 43, 8, 43, 8, 25, 8, 25, 8, 25, 25, 43, 8, 25, 8, 25, 8, 8, 43, 43, 8, 25, 8, 25, 8, 25, 8, 8, 25, 25, 8, 25, 8, 8, 25, 8, 25, 25, 8, 25, 8, 43, 25, 8, 25, 25, 8, 25, 8, 25, 43, 8, 25, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 25, 8, 43, 8, 25, 25, 25, 8, 25, 8, 25, 25, 25, 25, 25, 8, 25, 8, 8, 43, 25, 25, 25, 8, 25, 8, 25, 8, 43, 25, 25, 8, 25, 8, 8, 25, 43, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 8, 43, 8, 8, 43, 25, 8, 25, 8, 25, 25, 8, 43, 25, 8, 25, 8, 8, 43, 8, 43, 25, 8, 25, 8, 25, 8, 25, 43, 25, 8, 25, 8, 8, 25, 25, 43, 25, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 25, 43, 8, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 8, 25, 25, 25, 8, 43, 8, 25, 8, 25, 8, 43, 8, 43, 8, 25, 8, 8, 25, 43, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 8, 25, 25, 8, 25, 43, 8, 25, 8, 25, 8, 25, 25, 43, 8, 25, 8, 8, 25, 25, 25, 43, 8, 25, 8, 25, 8, 8, 43, 43, 8, 25, 8, 8, 25, 8, 43, 43, 8, 25, 8, 8, 8, 25, 43, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 8, 25, 25, 8, 25, 25, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 25, 8, 25, 8, 8, 25, 25, 8, 8, 25, 25, 8, 8, 25, 25, 8, 43, 25, 25, 8, 8, 25, 25, 8, 25, 43, 25, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 25, 25, 43, 8, 8, 25, 25, 8, 8, 43, 43, 8, 8, 25, 25, 8, 25, 8, 8, 25, 8, 25, 25, 8, 8, 25, 8, 25, 8, 25, 25, 8, 43, 25, 8, 25, 8, 25, 25, 8, 25, 43, 8, 25, 8, 25, 25, 8, 8, 8, 25, 25, 8, 25, 25, 8, 43, 8, 25, 25, 8, 25, 25, 8, 25, 25, 25, 25, 8, 25, 25, 8, 8, 43, 25, 25, 8, 25, 25, 8, 25, 8, 43, 25, 8, 25, 25, 8, 8, 25, 43, 25, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 43, 8, 8, 43, 8, 25, 25, 8, 25, 25, 8, 43, 8, 25, 25, 8, 8, 43, 8, 43, 8, 25, 25, 8, 25, 8, 25, 43, 8, 25, 25, 8, 8, 25, 25, 43, 8, 25, 25, 8, 8, 8, 43, 43, 8, 25, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 8, 25, 8, 8, 25, 25, 25, 8, 43, 25, 8, 8, 25, 25, 25, 8, 25, 43, 8, 8, 25, 25, 25, 8, 8, 8, 25, 8, 25, 25, 25, 8, 43, 8, 25, 8, 25, 25, 25, 8, 25, 25, 25, 8, 25, 25, 25, 8, 8, 43, 25, 8, 25, 25, 25, 8, 25, 8, 43, 8, 25, 25, 25, 8, 8, 25, 43, 8, 25, 25, 25, 8, 8, 8, 8, 25, 25, 25, 25, 8, 43, 8, 8, 25, 25, 25, 25, 8, 25, 25, 8, 25, 25, 25, 25, 8, 8, 43, 8, 25, 25, 25, 25, 8, 25, 8, 25, 25, 25, 25, 25, 8, 8, 25, 25, 25, 25, 25, 25, 8, 8, 8, 43, 25, 25, 25, 25, 8, 25, 8, 8, 43, 25, 25, 25, 8, 8, 25, 8, 43, 25, 25, 25, 8, 8, 8, 25, 43, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 8, 25, 25, 8, 8, 43, 25, 25, 8, 8, 43, 8, 8, 43, 25, 25, 8, 25, 8, 25, 8, 43, 25, 25, 8, 8, 25, 25, 8, 43, 25, 25, 8, 8, 8, 43, 8, 43, 25, 25, 8, 25, 8, 8, 25, 43, 25, 25, 8, 8, 25, 8, 25, 43, 25, 25, 8, 8, 8, 25, 25, 43, 25, 25, 8, 8, 8, 8, 43, 43, 25, 25, 8, 43, 43, 43, 43, 43, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 43, 25, 8, 8, 8, 43, 25, 8, 25, 43, 8, 8, 8, 43, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 25, 25, 25, 8, 8, 43, 25, 8, 8, 43, 25, 8, 8, 43, 25, 8, 25, 8, 43, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 43, 8, 8, 25, 8, 43, 25, 8, 25, 25, 8, 25, 8, 43, 25, 8, 8, 43, 8, 25, 8, 43, 25, 8, 25, 8, 25, 25, 8, 43, 25, 8, 8, 25, 25, 25, 8, 43, 25, 8, 8, 8, 43, 25, 8, 43, 25, 8, 25, 8, 8, 43, 8, 43, 25, 8, 8, 25, 8, 43, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 43, 8, 8, 8, 25, 43, 25, 8, 25, 25, 8, 8, 25, 43, 25, 8, 8, 43, 8, 8, 25, 43, 25, 8, 25, 8, 25, 8, 25, 43, 25, 8, 8, 25, 25, 8, 25, 43, 25, 8, 8, 8, 43, 8, 25, 43, 25, 8, 25, 8, 8, 25, 25, 43, 25, 8, 8, 25, 8, 25, 25, 43, 25, 8, 8, 8, 25, 25, 25, 43, 25, 8, 25, 43, 43, 25, 25, 43, 25, 8, 43, 8, 43, 43, 25, 43, 25, 8, 8, 25, 8, 8, 43, 43, 25, 8, 8, 8, 25, 8, 43, 43, 25, 8, 8, 8, 8, 25, 43, 43, 25, 8, 43, 25, 25, 25, 43, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 8, 8, 43, 8, 25, 25, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 8, 8, 43, 8, 43, 25, 25, 8, 8, 8, 43, 8, 25, 43, 25, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 43, 8, 25, 25, 43, 8, 8, 8, 43, 8, 43, 43, 43, 8, 8, 8, 43, 8, 25, 8, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 43, 8, 43, 8, 25, 25, 8, 8, 43, 8, 25, 25, 25, 25, 8, 8, 43, 8, 8, 25, 43, 25, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 43, 8, 43, 43, 8, 43, 8, 8, 43, 8, 8, 25, 25, 43, 8, 8, 43, 8, 43, 43, 43, 43, 8, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 8, 43, 8, 25, 8, 25, 8, 43, 8, 25, 25, 25, 8, 25, 8, 43, 8, 25, 8, 43, 8, 25, 8, 43, 8, 8, 8, 8, 25, 25, 8, 43, 8, 43, 8, 8, 25, 25, 8, 43, 8, 25, 25, 8, 25, 25, 8, 43, 8, 25, 8, 25, 25, 25, 8, 43, 8, 8, 25, 25, 25, 25, 8, 43, 8, 8, 8, 43, 25, 25, 8, 43, 8, 25, 8, 8, 43, 25, 8, 43, 8, 8, 25, 8, 43, 25, 8, 43, 8, 8, 8, 25, 43, 25, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 8, 43, 43, 8, 8, 43, 8, 43, 8, 43, 8, 43, 8, 43, 8, 43, 8, 8, 43, 43, 8, 43, 8, 43, 8, 43, 43, 43, 8, 43, 8, 43, 8, 8, 25, 8, 25, 43, 8, 43, 8, 8, 8, 25, 25, 43, 8, 43, 8, 8, 43, 8, 43, 43, 8, 43, 8, 43, 43, 8, 43, 43, 8, 43, 8, 8, 43, 43, 43, 43, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 43, 25, 8, 8, 8, 25, 43, 8, 25, 43, 8, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 25, 25, 25, 8, 8, 25, 43, 8, 8, 43, 25, 8, 8, 25, 43, 8, 25, 8, 43, 8, 8, 25, 43, 8, 8, 25, 43, 8, 8, 25, 43, 8, 8, 8, 8, 25, 8, 25, 43, 8, 43, 8, 8, 25, 8, 25, 43, 8, 25, 25, 8, 25, 8, 25, 43, 8, 8, 43, 8, 25, 8, 25, 43, 8, 25, 8, 25, 25, 8, 25, 43, 8, 8, 25, 25, 25, 8, 25, 43, 8, 8, 8, 43, 25, 8, 25, 43, 8, 25, 8, 8, 43, 8, 25, 43, 8, 8, 25, 8, 43, 8, 25, 43, 8, 8, 8, 25, 43, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 8, 25, 25, 8, 8, 25, 25, 43, 8, 8, 43, 8, 8, 25, 25, 43, 8, 25, 8, 25, 8, 25, 25, 43, 8, 8, 25, 25, 8, 25, 25, 43, 8, 8, 8, 43, 8, 25, 25, 43, 8, 25, 8, 8, 25, 25, 25, 43, 8, 8, 25, 8, 25, 25, 25, 43, 8, 8, 8, 25, 25, 25, 25, 43, 8, 43, 25, 43, 25, 25, 25, 43, 8, 8, 8, 8, 43, 25, 25, 43, 8, 25, 8, 8, 8, 43, 25, 43, 8, 8, 25, 8, 8, 43, 25, 43, 8, 8, 8, 25, 8, 43, 25, 43, 8, 8, 8, 8, 25, 43, 25, 43, 8, 25, 43, 25, 25, 43, 25, 43, 8, 8, 8, 8, 8, 8, 43, 43, 8, 25, 25, 8, 8, 8, 43, 43, 8, 25, 8, 25, 8, 8, 43, 43, 8, 8, 25, 25, 8, 8, 43, 43, 8, 25, 8, 8, 25, 8, 43, 43, 8, 8, 25, 8, 25, 8, 43, 43, 8, 8, 8, 25, 25, 8, 43, 43, 8, 43, 43, 8, 43, 8, 43, 43, 8, 43, 43, 43, 43, 8, 43, 43, 8, 25, 8, 8, 8, 25, 43, 43, 8, 8, 25, 8, 8, 25, 43, 43, 8, 8, 8, 25, 8, 25, 43, 43, 8, 25, 25, 25, 43, 25, 43, 43, 8, 43, 43, 8, 8, 43, 43, 43, 8, 43, 8, 43, 8, 43, 43, 43, 8, 8, 25, 43, 25, 43, 43, 43, 8, 8, 43, 8, 43, 43, 43, 43, 8, 43, 43, 8, 43, 43, 43, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 8, 25, 8, 8, 8, 8, 8, 25, 43, 25, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 8, 8, 8, 25, 8, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 8, 8, 8, 8, 25, 25, 25, 25, 8, 8, 8, 8, 25, 8, 43, 25, 8, 8, 8, 8, 25, 43, 43, 25, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 8, 25, 43, 25, 43, 8, 8, 8, 8, 25, 8, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 25, 43, 43, 8, 25, 8, 8, 8, 25, 25, 8, 25, 25, 8, 8, 8, 25, 8, 25, 25, 25, 8, 8, 8, 25, 43, 25, 25, 25, 8, 8, 8, 25, 25, 43, 25, 25, 8, 8, 8, 25, 8, 8, 43, 25, 8, 8, 8, 25, 43, 8, 43, 25, 8, 8, 8, 25, 25, 25, 43, 25, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 25, 25, 25, 25, 43, 8, 8, 8, 25, 8, 43, 25, 43, 8, 8, 8, 25, 25, 8, 43, 43, 8, 8, 8, 25, 8, 25, 43, 43, 8, 8, 8, 25, 8, 8, 8, 8, 25, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 25, 25, 25, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 25, 25, 8, 25, 8, 25, 8, 8, 25, 8, 25, 25, 8, 25, 8, 8, 25, 43, 25, 25, 8, 25, 8, 8, 25, 25, 43, 25, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 25, 43, 8, 43, 8, 25, 8, 8, 25, 25, 25, 43, 8, 25, 8, 8, 25, 25, 8, 8, 25, 25, 8, 8, 25, 8, 25, 8, 25, 25, 8, 8, 25, 43, 25, 8, 25, 25, 8, 8, 25, 25, 43, 8, 25, 25, 8, 8, 25, 8, 8, 25, 25, 25, 8, 8, 25, 43, 8, 25, 25, 25, 8, 8, 25, 25, 25, 25, 25, 25, 8, 8, 25, 8, 43, 25, 25, 25, 8, 8, 25, 25, 8, 43, 25, 25, 8, 8, 25, 8, 25, 43, 25, 25, 8, 8, 25, 8, 8, 8, 43, 25, 8, 8, 25, 43, 8, 8, 43, 25, 8, 8, 25, 25, 25, 8, 43, 25, 8, 8, 25, 8, 43, 8, 43, 25, 8, 8, 25, 25, 8, 25, 43, 25, 8, 8, 25, 8, 25, 25, 43, 25, 8, 8, 25, 8, 8, 43, 43, 25, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 8, 8, 25, 43, 8, 25, 8, 43, 8, 8, 25, 25, 25, 25, 8, 43, 8, 8, 25, 8, 43, 25, 8, 43, 8, 8, 25, 8, 25, 43, 8, 43, 8, 8, 25, 8, 8, 8, 25, 43, 8, 8, 25, 25, 25, 8, 25, 43, 8, 8, 25, 8, 43, 8, 25, 43, 8, 8, 25, 25, 8, 25, 25, 43, 8, 8, 25, 8, 25, 25, 25, 43, 8, 8, 25, 8, 8, 43, 25, 43, 8, 8, 25, 25, 8, 8, 43, 43, 8, 8, 25, 8, 25, 8, 43, 43, 8, 8, 25, 8, 8, 8, 8, 8, 25, 8, 25, 43, 8, 8, 8, 8, 25, 8, 25, 25, 25, 8, 8, 8, 25, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 43, 43, 8, 8, 8, 25, 8, 25, 25, 8, 25, 8, 8, 25, 8, 25, 8, 25, 25, 8, 8, 25, 8, 25, 43, 25, 25, 8, 8, 25, 8, 25, 25, 43, 25, 8, 8, 25, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 43, 8, 43, 8, 8, 25, 8, 25, 25, 25, 43, 8, 8, 25, 8, 25, 8, 43, 43, 8, 8, 25, 8, 25, 25, 8, 8, 25, 8, 25, 8, 25, 8, 25, 8, 25, 8, 25, 8, 25, 43, 25, 8, 25, 8, 25, 8, 25, 25, 43, 8, 25, 8, 25, 8, 25, 8, 8, 25, 25, 8, 25, 8, 25, 43, 8, 25, 25, 8, 25, 8, 25, 25, 25, 25, 25, 8, 25, 8, 25, 8, 43, 25, 25, 8, 25, 8, 25, 25, 8, 43, 25, 8, 25, 8, 25, 8, 25, 43, 25, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 43, 8, 8, 43, 8, 25, 8, 25, 25, 25, 8, 43, 8, 25, 8, 25, 8, 43, 8, 43, 8, 25, 8, 25, 25, 8, 25, 43, 8, 25, 8, 25, 8, 25, 25, 43, 8, 25, 8, 25, 8, 8, 43, 43, 8, 25, 8, 25, 25, 8, 8, 8, 25, 25, 8, 25, 8, 25, 8, 8, 25, 25, 8, 25, 43, 25, 8, 8, 25, 25, 8, 25, 25, 43, 8, 8, 25, 25, 8, 25, 8, 8, 25, 8, 25, 25, 8, 25, 43, 8, 25, 8, 25, 25, 8, 25, 25, 25, 25, 8, 25, 25, 8, 25, 8, 43, 25, 8, 25, 25, 8, 25, 25, 8, 43, 8, 25, 25, 8, 25, 8, 25, 43, 8, 25, 25, 8, 25, 8, 8, 8, 25, 25, 25, 8, 25, 43, 8, 8, 25, 25, 25, 8, 25, 25, 25, 8, 25, 25, 25, 8, 25, 8, 43, 8, 25, 25, 25, 8, 25, 25, 8, 25, 25, 25, 25, 8, 25, 8, 25, 25, 25, 25, 25, 8, 25, 8, 8, 43, 25, 25, 25, 8, 25, 43, 43, 43, 25, 25, 25, 8, 25, 25, 8, 8, 43, 25, 25, 8, 25, 8, 25, 8, 43, 25, 25, 8, 25, 8, 8, 25, 43, 25, 25, 8, 25, 8, 8, 8, 8, 43, 25, 8, 25, 43, 8, 8, 8, 43, 25, 8, 25, 25, 25, 8, 8, 43, 25, 8, 25, 8, 43, 8, 8, 43, 25, 8, 25, 25, 8, 25, 8, 43, 25, 8, 25, 8, 25, 25, 8, 43, 25, 8, 25, 8, 8, 43, 8, 43, 25, 8, 25, 25, 8, 8, 25, 43, 25, 8, 25, 8, 25, 8, 25, 43, 25, 8, 25, 8, 8, 25, 25, 43, 25, 8, 25, 8, 8, 8, 43, 43, 25, 8, 25, 25, 25, 43, 43, 43, 25, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 8, 43, 8, 25, 25, 43, 8, 8, 8, 43, 8, 25, 8, 8, 25, 8, 8, 43, 8, 25, 43, 8, 25, 8, 8, 43, 8, 25, 25, 25, 25, 8, 8, 43, 8, 25, 8, 43, 25, 8, 8, 43, 8, 25, 25, 8, 43, 8, 8, 43, 8, 25, 8, 25, 43, 8, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 8, 25, 43, 8, 8, 25, 8, 43, 8, 25, 25, 25, 8, 25, 8, 43, 8, 25, 8, 43, 8, 25, 8, 43, 8, 25, 25, 8, 25, 25, 8, 43, 8, 25, 8, 25, 25, 25, 8, 43, 8, 25, 8, 8, 43, 25, 8, 43, 8, 25, 8, 25, 8, 43, 8, 43, 8, 25, 8, 8, 25, 43, 8, 43, 8, 25, 8, 8, 8, 8, 25, 43, 8, 25, 43, 8, 8, 8, 25, 43, 8, 25, 25, 25, 8, 8, 25, 43, 8, 25, 8, 43, 8, 8, 25, 43, 8, 25, 25, 8, 25, 8, 25, 43, 8, 25, 8, 25, 25, 8, 25, 43, 8, 25, 8, 8, 43, 8, 25, 43, 8, 25, 25, 8, 8, 25, 25, 43, 8, 25, 8, 25, 8, 25, 25, 43, 8, 25, 8, 8, 25, 25, 25, 43, 8, 25, 8, 8, 8, 43, 25, 43, 8, 25, 43, 25, 25, 43, 25, 43, 8, 25, 25, 8, 8, 8, 43, 43, 8, 25, 8, 25, 8, 8, 43, 43, 8, 25, 8, 8, 25, 8, 43, 43, 8, 25, 8, 8, 8, 25, 43, 43, 8, 25, 8, 8, 8, 8, 8, 8, 25, 25, 43, 8, 8, 8, 8, 8, 25, 25, 25, 25, 8, 8, 8, 8, 25, 25, 8, 43, 8, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 8, 25, 25, 8, 25, 25, 8, 8, 8, 25, 25, 43, 25, 25, 8, 8, 8, 25, 25, 25, 43, 25, 8, 8, 8, 25, 25, 8, 8, 43, 8, 8, 8, 25, 25, 43, 8, 43, 8, 8, 8, 25, 25, 25, 25, 43, 8, 8, 8, 25, 25, 8, 43, 43, 8, 8, 8, 25, 25, 25, 8, 8, 25, 8, 8, 25, 25, 8, 25, 8, 25, 8, 8, 25, 25, 43, 25, 8, 25, 8, 8, 25, 25, 25, 43, 8, 25, 8, 8, 25, 25, 8, 8, 25, 25, 8, 8, 25, 25, 43, 8, 25, 25, 8, 8, 25, 25, 25, 25, 25, 25, 8, 8, 25, 25, 8, 43, 25, 25, 8, 8, 25, 25, 25, 8, 43, 25, 8, 8, 25, 25, 8, 25, 43, 25, 8, 8, 25, 25, 8, 8, 8, 43, 8, 8, 25, 25, 43, 8, 8, 43, 8, 8, 25, 25, 25, 25, 8, 43, 8, 8, 25, 25, 8, 43, 8, 43, 8, 8, 25, 25, 25, 8, 25, 43, 8, 8, 25, 25, 8, 25, 25, 43, 8, 8, 25, 25, 25, 8, 8, 8, 25, 8, 25, 25, 8, 25, 8, 8, 25, 8, 25, 25, 43, 25, 8, 8, 25, 8, 25, 25, 25, 43, 8, 8, 25, 8, 25, 25, 8, 8, 25, 8, 25, 8, 25, 25, 43, 8, 25, 8, 25, 8, 25, 25, 25, 25, 25, 8, 25, 8, 25, 25, 8, 43, 25, 8, 25, 8, 25, 25, 25, 8, 43, 8, 25, 8, 25, 25, 8, 25, 43, 8, 25, 8, 25, 25, 8, 8, 8, 25, 25, 8, 25, 25, 43, 8, 8, 25, 25, 8, 25, 25, 25, 25, 8, 25, 25, 8, 25, 25, 8, 43, 8, 25, 25, 8, 25, 25, 25, 8, 25, 25, 25, 8, 25, 25, 8, 25, 25, 25, 25, 8, 25, 25, 8, 8, 43, 25, 25, 8, 25, 25, 25, 8, 8, 43, 25, 8, 25, 25, 8, 25, 8, 43, 25, 8, 25, 25, 8, 8, 25, 43, 25, 8, 25, 25, 8, 8, 8, 8, 43, 8, 25, 25, 25, 25, 8, 8, 43, 8, 25, 25, 8, 43, 8, 8, 43, 8, 25, 25, 25, 8, 25, 8, 43, 8, 25, 25, 8, 25, 25, 8, 43, 8, 25, 25, 8, 8, 43, 8, 43, 8, 25, 25, 25, 8, 8, 25, 43, 8, 25, 25, 8, 25, 8, 25, 43, 8, 25, 25, 8, 8, 25, 25, 43, 8, 25, 25, 25, 43, 43, 25, 43, 8, 25, 25, 8, 8, 8, 43, 43, 8, 25, 25, 25, 8, 8, 8, 8, 25, 25, 25, 8, 25, 8, 8, 8, 25, 25, 25, 43, 25, 8, 8, 8, 25, 25, 25, 25, 43, 8, 8, 8, 25, 25, 25, 8, 8, 25, 8, 8, 25, 25, 25, 43, 8, 25, 8, 8, 25, 25, 25, 25, 25, 25, 8, 8, 25, 25, 25, 8, 43, 25, 8, 8, 25, 25, 25, 25, 8, 43, 8, 8, 25, 25, 25, 8, 25, 43, 8, 8, 25, 25, 25, 8, 8, 8, 25, 8, 25, 25, 25, 43, 8, 8, 25, 8, 25, 25, 25, 25, 25, 8, 25, 8, 25, 25, 25, 8, 43, 8, 25, 8, 25, 25, 25, 25, 8, 25, 25, 8, 25, 25, 25, 8, 25, 25, 25, 8, 25, 25, 25, 8, 8, 43, 25, 8, 25, 25, 25, 25, 8, 8, 43, 8, 25, 25, 25, 8, 25, 8, 43, 8, 25, 25, 25, 8, 8, 25, 43, 8, 25, 25, 25, 8, 8, 8, 8, 25, 25, 25, 25, 43, 8, 8, 8, 25, 25, 25, 25, 25, 25, 8, 8, 25, 25, 25, 25, 8, 43, 8, 8, 25, 25, 25, 25, 25, 8, 25, 8, 25, 25, 25, 25, 8, 25, 25, 8, 25, 25, 25, 25, 8, 8, 43, 8, 25, 25, 25, 25, 25, 8, 8, 25, 25, 25, 25, 25, 8, 25, 8, 25, 25, 25, 25, 25, 8, 8, 25, 25, 25, 25, 25, 25, 8, 8, 8, 43, 25, 25, 25, 25, 25, 8, 8, 8, 43, 25, 25, 25, 8, 25, 8, 8, 43, 25, 25, 25, 8, 8, 25, 8, 43, 25, 25, 25, 43, 25, 43, 8, 43, 25, 25, 25, 8, 8, 8, 25, 43, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 25, 43, 8, 8, 8, 8, 43, 25, 25, 25, 25, 8, 8, 8, 43, 25, 25, 8, 43, 8, 8, 8, 43, 25, 25, 25, 8, 25, 8, 8, 43, 25, 25, 8, 25, 25, 8, 8, 43, 25, 25, 8, 8, 43, 8, 8, 43, 25, 25, 25, 8, 8, 25, 8, 43, 25, 25, 8, 25, 8, 25, 8, 43, 25, 25, 8, 8, 25, 25, 8, 43, 25, 25, 43, 43, 25, 25, 8, 43, 25, 25, 8, 8, 8, 43, 8, 43, 25, 25, 25, 8, 8, 8, 25, 43, 25, 25, 8, 25, 8, 8, 25, 43, 25, 25, 8, 8, 25, 8, 25, 43, 25, 25, 8, 8, 8, 25, 25, 43, 25, 25, 8, 8, 8, 8, 43, 43, 25, 25, 25, 43, 25, 8, 43, 43, 25, 25, 25, 25, 8, 43, 43, 43, 25, 25, 8, 43, 43, 43, 43, 43, 25, 25, 25, 8, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 8, 8, 43, 25, 43, 25, 8, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 8, 43, 25, 43, 8, 25, 8, 8, 8, 43, 25, 25, 25, 25, 8, 8, 8, 43, 25, 8, 43, 25, 8, 8, 8, 43, 25, 25, 8, 43, 8, 8, 8, 43, 25, 8, 25, 43, 8, 8, 8, 43, 25, 8, 8, 8, 25, 8, 8, 43, 25, 25, 25, 8, 25, 8, 8, 43, 25, 8, 43, 8, 25, 8, 8, 43, 25, 25, 8, 25, 25, 8, 8, 43, 25, 8, 25, 25, 25, 8, 8, 43, 25, 8, 8, 43, 25, 8, 8, 43, 25, 8, 25, 8, 43, 8, 8, 43, 25, 8, 8, 25, 43, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 25, 43, 8, 8, 8, 25, 8, 43, 25, 25, 25, 8, 8, 25, 8, 43, 25, 8, 43, 8, 8, 25, 8, 43, 25, 25, 8, 25, 8, 25, 8, 43, 25, 8, 25, 25, 8, 25, 8, 43, 25, 8, 8, 43, 8, 25, 8, 43, 25, 25, 8, 8, 25, 25, 8, 43, 25, 8, 25, 8, 25, 25, 8, 43, 25, 8, 8, 25, 25, 25, 8, 43, 25, 8, 8, 8, 43, 25, 8, 43, 25, 25, 43, 25, 43, 25, 8, 43, 25, 8, 25, 8, 8, 43, 8, 43, 25, 8, 8, 25, 8, 43, 8, 43, 25, 8, 8, 8, 25, 43, 8, 43, 25, 43, 25, 25, 25, 43, 8, 43, 25, 25, 8, 43, 43, 43, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 25, 25, 25, 8, 8, 8, 25, 43, 25, 8, 43, 8, 8, 8, 25, 43, 25, 25, 8, 25, 8, 8, 25, 43, 25, 8, 25, 25, 8, 8, 25, 43, 25, 8, 8, 43, 8, 8, 25, 43, 25, 25, 8, 8, 25, 8, 25, 43, 25, 8, 25, 8, 25, 8, 25, 43, 25, 8, 8, 25, 25, 8, 25, 43, 25, 8, 8, 8, 43, 8, 25, 43, 25, 25, 8, 8, 8, 25, 25, 43, 25, 8, 25, 8, 8, 25, 25, 43, 25, 8, 8, 25, 8, 25, 25, 43, 25, 8, 8, 8, 25, 25, 25, 43, 25, 43, 43, 8, 25, 25, 25, 43, 25, 8, 43, 43, 25, 25, 25, 43, 25, 43, 8, 25, 43, 25, 25, 43, 25, 8, 8, 8, 8, 43, 25, 43, 25, 8, 25, 25, 43, 43, 25, 43, 25, 25, 8, 8, 8, 8, 43, 43, 25, 8, 25, 8, 8, 8, 43, 43, 25, 8, 8, 25, 8, 8, 43, 43, 25, 25, 25, 43, 25, 8, 43, 43, 25, 8, 43, 25, 43, 8, 43, 43, 25, 8, 8, 8, 8, 25, 43, 43, 25, 43, 43, 43, 8, 25, 43, 43, 25, 43, 8, 8, 25, 43, 43, 43, 25, 25, 8, 43, 43, 43, 43, 43, 25, 8, 8, 8, 8, 8, 8, 8, 43, 43, 8, 8, 8, 8, 8, 8, 43, 25, 25, 8, 8, 8, 8, 8, 43, 8, 43, 8, 8, 8, 8, 8, 43, 25, 8, 25, 8, 8, 8, 8, 43, 8, 25, 25, 8, 8, 8, 8, 43, 25, 43, 25, 8, 8, 8, 8, 43, 8, 8, 43, 8, 8, 8, 8, 43, 25, 25, 43, 8, 8, 8, 8, 43, 25, 8, 8, 25, 8, 8, 8, 43, 8, 25, 8, 25, 8, 8, 8, 43, 8, 8, 25, 25, 8, 8, 8, 43, 43, 8, 25, 25, 8, 8, 8, 43, 25, 25, 25, 25, 8, 8, 8, 43, 8, 43, 25, 25, 8, 8, 8, 43, 25, 8, 43, 25, 8, 8, 8, 43, 8, 8, 8, 43, 8, 8, 8, 43, 25, 25, 8, 43, 8, 8, 8, 43, 25, 8, 25, 43, 8, 8, 8, 43, 8, 25, 25, 43, 8, 8, 8, 43, 25, 8, 8, 8, 25, 8, 8, 43, 8, 25, 8, 8, 25, 8, 8, 43, 25, 43, 8, 8, 25, 8, 8, 43, 8, 8, 25, 8, 25, 8, 8, 43, 43, 8, 25, 8, 25, 8, 8, 43, 25, 25, 25, 8, 25, 8, 8, 43, 8, 43, 25, 8, 25, 8, 8, 43, 25, 8, 43, 8, 25, 8, 8, 43, 8, 25, 43, 8, 25, 8, 8, 43, 8, 8, 8, 25, 25, 8, 8, 43, 43, 8, 8, 25, 25, 8, 8, 43, 25, 25, 8, 25, 25, 8, 8, 43, 8, 43, 8, 25, 25, 8, 8, 43, 25, 8, 25, 25, 25, 8, 8, 43, 8, 25, 25, 25, 25, 8, 8, 43, 25, 8, 8, 43, 25, 8, 8, 43, 8, 25, 8, 43, 25, 8, 8, 43, 8, 8, 25, 43, 25, 8, 8, 43, 25, 43, 43, 43, 25, 8, 8, 43, 8, 8, 8, 8, 43, 8, 8, 43, 25, 25, 8, 8, 43, 8, 8, 43, 43, 43, 8, 8, 43, 8, 8, 43, 25, 8, 25, 8, 43, 8, 8, 43, 8, 25, 25, 8, 43, 8, 8, 43, 25, 8, 8, 25, 43, 8, 8, 43, 8, 25, 8, 25, 43, 8, 8, 43, 8, 8, 25, 25, 43, 8, 8, 43, 25, 8, 8, 8, 8, 25, 8, 43, 8, 25, 8, 8, 8, 25, 8, 43, 43, 25, 8, 8, 8, 25, 8, 43, 25, 43, 8, 8, 8, 25, 8, 43, 8, 8, 25, 8, 8, 25, 8, 43, 43, 8, 25, 8, 8, 25, 8, 43, 25, 25, 25, 8, 8, 25, 8, 43, 8, 43, 25, 8, 8, 25, 8, 43, 25, 8, 43, 8, 8, 25, 8, 43, 8, 8, 8, 25, 8, 25, 8, 43, 43, 8, 8, 25, 8, 25, 8, 43, 25, 25, 8, 25, 8, 25, 8, 43, 8, 43, 8, 25, 8, 25, 8, 43, 25, 8, 25, 25, 8, 25, 8, 43, 8, 25, 25, 25, 8, 25, 8, 43, 8, 8, 43, 25, 8, 25, 8, 43, 25, 8, 8, 43, 8, 25, 8, 43, 8, 25, 8, 43, 8, 25, 8, 43, 8, 8, 25, 43, 8, 25, 8, 43, 8, 8, 8, 8, 25, 25, 8, 43, 43, 8, 8, 8, 25, 25, 8, 43, 25, 25, 8, 8, 25, 25, 8, 43, 8, 43, 8, 8, 25, 25, 8, 43, 25, 8, 25, 8, 25, 25, 8, 43, 8, 25, 25, 8, 25, 25, 8, 43, 8, 8, 43, 8, 25, 25, 8, 43, 25, 8, 8, 25, 25, 25, 8, 43, 8, 25, 8, 25, 25, 25, 8, 43, 8, 8, 25, 25, 25, 25, 8, 43, 8, 8, 8, 43, 25, 25, 8, 43, 43, 43, 8, 43, 25, 25, 8, 43, 25, 8, 8, 8, 43, 25, 8, 43, 8, 25, 8, 8, 43, 25, 8, 43, 8, 8, 25, 8, 43, 25, 8, 43, 25, 43, 43, 8, 43, 25, 8, 43, 8, 8, 8, 25, 43, 25, 8, 43, 8, 8, 8, 8, 8, 43, 8, 43, 25, 25, 8, 8, 8, 43, 8, 43, 25, 8, 25, 8, 8, 43, 8, 43, 8, 25, 25, 8, 8, 43, 8, 43, 25, 8, 8, 25, 8, 43, 8, 43, 8, 25, 8, 25, 8, 43, 8, 43, 8, 8, 25, 25, 8, 43, 8, 43, 43, 8, 43, 43, 8, 43, 8, 43, 25, 8, 8, 8, 25, 43, 8, 43, 8, 25, 8, 8, 25, 43, 8, 43, 8, 8, 8, 25, 25, 43, 8, 43, 25, 25, 43, 25, 25, 43, 8, 43, 43, 8, 43, 8, 43, 43, 8, 43, 8, 43, 25, 25, 43, 43, 8, 43, 43, 43, 25, 25, 43, 43, 8, 43, 43, 8, 8, 43, 43, 43, 8, 43, 43, 8, 43, 43, 43, 43, 8, 43, 25, 8, 8, 8, 8, 8, 25, 43, 8, 25, 8, 8, 8, 8, 25, 43, 25, 43, 8, 8, 8, 8, 25, 43, 8, 8, 25, 8, 8, 8, 25, 43, 43, 8, 25, 8, 8, 8, 25, 43, 25, 25, 25, 8, 8, 8, 25, 43, 8, 43, 25, 8, 8, 8, 25, 43, 8, 25, 43, 8, 8, 8, 25, 43, 8, 8, 8, 25, 8, 8, 25, 43, 43, 8, 8, 25, 8, 8, 25, 43, 25, 25, 8, 25, 8, 8, 25, 43, 8, 43, 8, 25, 8, 8, 25, 43, 25, 8, 25, 25, 8, 8, 25, 43, 8, 25, 25, 25, 8, 8, 25, 43, 8, 8, 43, 25, 8, 8, 25, 43, 25, 8, 8, 43, 8, 8, 25, 43, 8, 25, 8, 43, 8, 8, 25, 43, 8, 8, 25, 43, 8, 8, 25, 43, 8, 8, 8, 8, 25, 8, 25, 43, 25, 25, 8, 8, 25, 8, 25, 43, 25, 8, 25, 8, 25, 8, 25, 43, 8, 25, 25, 8, 25, 8, 25, 43, 25, 8, 8, 25, 25, 8, 25, 43, 8, 25, 8, 25, 25, 8, 25, 43, 8, 8, 25, 25, 25, 8, 25, 43, 43, 43, 25, 25, 25, 8, 25, 43, 25, 8, 8, 8, 43, 8, 25, 43, 8, 25, 8, 8, 43, 8, 25, 43, 8, 8, 25, 8, 43, 8, 25, 43, 8, 8, 8, 25, 43, 8, 25, 43, 43, 25, 43, 43, 43, 8, 25, 43, 8, 8, 8, 8, 8, 25, 25, 43, 43, 8, 8, 8, 8, 25, 25, 43, 25, 25, 8, 8, 8, 25, 25, 43, 8, 43, 8, 8, 8, 25, 25, 43, 25, 8, 25, 8, 8, 25, 25, 43, 8, 25, 25, 8, 8, 25, 25, 43, 8, 8, 43, 8, 8, 25, 25, 43, 25, 8, 8, 25, 8, 25, 25, 43, 8, 25, 8, 25, 8, 25, 25, 43, 8, 8, 25, 25, 8, 25, 25, 43, 8, 8, 8, 43, 8, 25, 25, 43, 43, 25, 25, 43, 8, 25, 25, 43, 25, 8, 8, 8, 25, 25, 25, 43, 8, 25, 8, 8, 25, 25, 25, 43, 8, 8, 25, 8, 25, 25, 25, 43, 8, 8, 8, 25, 25, 25, 25, 43, 8, 43, 25, 43, 25, 25, 25, 43, 25, 8, 43, 43, 25, 25, 25, 43, 8, 8, 8, 8, 43, 25, 25, 43, 43, 25, 8, 25, 43, 25, 25, 43, 8, 25, 43, 25, 43, 25, 25, 43, 25, 8, 8, 8, 8, 43, 25, 43, 8, 25, 8, 8, 8, 43, 25, 43, 8, 8, 25, 8, 8, 43, 25, 43, 43, 25, 43, 8, 8, 43, 25, 43, 8, 8, 8, 25, 8, 43, 25, 43, 25, 43, 43, 43, 8, 43, 25, 43, 8, 8, 8, 8, 25, 43, 25, 43, 25, 43, 8, 25, 25, 43, 25, 43, 43, 8, 25, 25, 25, 43, 25, 43, 8, 8, 25, 43, 43, 43, 25, 43, 8, 8, 8, 8, 8, 8, 43, 43, 25, 25, 8, 8, 8, 8, 43, 43, 43, 43, 8, 8, 8, 8, 43, 43, 8, 25, 25, 8, 8, 8, 43, 43, 43, 8, 43, 8, 8, 8, 43, 43, 43, 43, 43, 8, 8, 8, 43, 43, 25, 8, 8, 25, 8, 8, 43, 43, 8, 25, 8, 25, 8, 8, 43, 43, 8, 8, 25, 25, 8, 8, 43, 43, 43, 8, 43, 43, 8, 8, 43, 43, 43, 43, 43, 43, 8, 8, 43, 43, 8, 8, 8, 25, 25, 8, 43, 43, 25, 25, 43, 25, 25, 8, 43, 43, 43, 8, 8, 8, 43, 8, 43, 43, 43, 43, 8, 8, 43, 8, 43, 43, 43, 8, 43, 8, 43, 8, 43, 43, 8, 43, 43, 8, 43, 8, 43, 43, 43, 43, 43, 8, 43, 8, 43, 43, 43, 8, 8, 43, 43, 8, 43, 43, 8, 43, 8, 43, 43, 8, 43, 43, 43, 43, 8, 43, 43, 8, 43, 43, 8, 43, 43, 43, 43, 8, 43, 43, 25, 8, 8, 8, 8, 25, 43, 43, 8, 25, 8, 8, 8, 25, 43, 43, 8, 8, 25, 8, 8, 25, 43, 43, 8, 8, 8, 25, 8, 25, 43, 43, 25, 43, 8, 43, 8, 25, 43, 43, 8, 25, 43, 43, 8, 25, 43, 43, 8, 8, 8, 8, 25, 25, 43, 43, 25, 43, 25, 8, 25, 25, 43, 43, 25, 8, 25, 25, 43, 25, 43, 43, 43, 43, 8, 8, 8, 43, 43, 43, 8, 43, 43, 8, 8, 43, 43, 43, 43, 8, 43, 43, 8, 43, 43, 43, 8, 25, 25, 25, 25, 43, 43, 43, 43, 25, 8, 43, 25, 43, 43, 43, 8, 43, 8, 8, 43, 43, 43, 43, 43, 43, 8, 8, 43, 43, 43, 43, 8, 8, 43, 8, 43, 43, 43, 43, 43, 8, 43, 8, 43, 43, 43, 43, 8, 43, 43, 8, 43, 43, 43, 43, 8, 43, 8, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43, 43};
.global .align 4 .b8 iq3xxs_grid[1024] = {4, 4, 4, 4, 20, 4, 4, 4, 36, 4, 4, 4, 12, 12, 4, 4, 28, 12, 4, 4, 62, 12, 4, 4, 4, 20, 4, 4, 20, 20, 4, 4, 12, 28, 4, 4, 20, 36, 4, 4, 28, 62, 4, 4, 44, 62, 4, 4, 12, 4, 12, 4, 28, 4, 12, 4, 4, 12, 12, 4, 20, 12, 12, 4, 12, 20, 12, 4, 44, 20, 12, 4, 4, 28, 12, 4, 20, 28, 12, 4, 12, 36, 12, 4, 36, 44, 12, 4, 4, 62, 12, 4, 4, 4, 20, 4, 20, 4, 20, 4, 36, 4, 20, 4, 12, 12, 20, 4, 4, 20, 20, 4, 20, 20, 20, 4, 12, 28, 20, 4, 28, 28, 20, 4, 62, 28, 20, 4, 12, 44, 20, 4, 62, 44, 20, 4, 44, 62, 20, 4, 12, 4, 28, 4, 62, 4, 28, 4, 4, 12, 28, 4, 20, 12, 28, 4, 44, 20, 28, 4, 4, 62, 28, 4, 28, 12, 36, 4, 62, 28, 36, 4, 36, 36, 36, 4, 62, 44, 36, 4, 28, 62, 36, 4, 44, 62, 36, 4, 12, 4, 44, 4, 62, 4, 44, 4, 20, 28, 44, 4, 20, 44, 44, 4, 44, 28, 52, 4, 36, 52, 52, 4, 4, 12, 62, 4, 36, 12, 62, 4, 52, 12, 62, 4, 28, 36, 62, 4, 12, 52, 62, 4, 12, 4, 4, 12, 28, 4, 4, 12, 4, 12, 4, 12, 20, 12, 4, 12, 12, 20, 4, 12, 28, 20, 4, 12, 4, 28, 4, 12, 20, 28, 4, 12, 36, 28, 4, 12, 62, 36, 4, 12, 4, 44, 4, 12, 4, 4, 12, 12, 20, 4, 12, 12, 12, 12, 12, 12, 4, 20, 12, 12, 20, 20, 12, 12, 12, 4, 20, 12, 28, 4, 20, 12, 4, 12, 20, 12, 20, 12, 20, 12, 12, 20, 20, 12, 4, 28, 20, 12, 20, 62, 20, 12, 4, 4, 28, 12, 20, 4, 28, 12, 4, 20, 28, 12, 12, 28, 28, 12, 52, 36, 28, 12, 52, 52, 28, 12, 12, 4, 36, 12, 44, 4, 36, 12, 4, 44, 36, 12, 4, 20, 44, 12, 36, 20, 44, 12, 52, 36, 44, 12, 12, 62, 44, 12, 44, 4, 52, 12, 20, 20, 62, 12, 4, 36, 62, 12, 4, 4, 4, 20, 20, 4, 4, 20, 12, 12, 4, 20, 28, 12, 4, 20, 4, 20, 4, 20, 20, 20, 4, 20, 52, 20, 4, 20, 12, 28, 4, 20, 20, 36, 4, 20, 12, 4, 12, 20, 28, 4, 12, 20, 44, 4, 12, 20, 4, 12, 12, 20, 20, 12, 12, 20, 12, 20, 12, 20, 4, 28, 12, 20, 28, 52, 12, 20, 62, 52, 12, 20, 4, 62, 12, 20, 4, 4, 20, 20, 20, 4, 20, 20, 12, 12, 20, 20, 62, 12, 20, 20, 4, 20, 20, 20, 20, 20, 20, 20, 62, 28, 20, 20, 4, 36, 20, 20, 44, 44, 20, 20, 12, 4, 28, 20, 4, 12, 28, 20, 36, 12, 28, 20, 4, 62, 28, 20, 36, 62, 28, 20, 44, 28, 36, 20, 28, 44, 36, 20, 28, 4, 44, 20, 62, 20, 44, 20, 12, 36, 44, 20, 36, 62, 44, 20, 12, 4, 62, 20, 28, 4, 62, 20, 52, 12, 62, 20, 44, 36, 62, 20, 12, 4, 4, 28, 4, 12, 4, 28, 20, 12, 4, 28, 12, 20, 4, 28, 28, 20, 4, 28, 4, 44, 4, 28, 44, 52, 4, 28, 20, 62, 4, 28, 4, 4, 12, 28, 20, 4, 12, 28, 4, 20, 12, 28, 12, 28, 12, 28, 36, 36, 12, 28, 52, 36, 12, 28, 12, 4, 20, 28, 28, 4, 20, 28, 4, 12, 20, 28, 44, 20, 20, 28, 20, 44, 20, 28, 20, 62, 20, 28, 12, 12, 28, 28, 28, 28, 28, 28, 4, 28, 36, 28, 62, 36, 36, 28, 20, 62, 36, 28, 4, 4, 44, 28, 52, 4, 44, 28, 20, 20, 44, 28, 44, 44, 44, 28, 36, 12, 52, 28, 52, 28, 52, 28, 28, 52, 52, 28, 28, 28, 62, 28, 4, 52, 62, 28, 36, 4, 4, 36, 62, 12, 4, 36, 44, 28, 4, 36, 62, 28, 4, 36, 28, 44, 4, 36, 62, 44, 4, 36, 36, 62, 12, 36, 4, 20, 20, 36, 62, 28, 20, 36, 4, 36, 20, 36, 4, 52, 20, 36, 52, 52, 20, 36, 62, 4, 28, 36, 44, 36, 28, 36, 36, 4, 36, 36, 12, 44, 36, 36, 36, 52, 36, 36, 44, 20, 44, 36, 28, 36, 44, 36, 4, 62, 44, 36, 44, 4, 62, 36, 4, 12, 62, 36, 20, 12, 62, 36, 4, 28, 62, 36, 20, 12, 4, 44, 12, 36, 4, 44, 4, 62, 4, 44, 4, 4, 12, 44, 52, 4, 12, 44, 52, 20, 12, 44, 44, 44, 12, 44, 36, 12, 20, 44, 20, 28, 20, 44, 20, 62, 20, 44, 20, 4, 28, 44, 28, 44, 28, 44, 4, 12, 36, 44, 28, 20, 36, 44, 62, 20, 36, 44, 20, 62, 36, 44, 20, 4, 44, 44, 12, 28, 44, 44, 4, 44, 52, 44, 36, 20, 62, 44, 20, 36, 62, 44, 36, 20, 4, 52, 36, 36, 4, 52, 52, 36, 4, 52, 36, 52, 4, 52, 12, 20, 12, 52, 12, 52, 12, 52, 62, 12, 20, 52, 36, 52, 20, 52, 4, 28, 28, 52, 52, 28, 28, 52, 36, 36, 36, 52, 44, 4, 44, 52, 20, 44, 44, 52, 28, 28, 52, 52, 28, 4, 62, 52, 12, 20, 62, 52, 28, 4, 4, 62, 44, 4, 4, 62, 62, 4, 4, 62, 4, 12, 4, 62, 20, 28, 4, 62, 20, 44, 4, 62, 52, 20, 12, 62, 4, 36, 12, 62, 20, 12, 20, 62, 44, 36, 20, 62, 20, 44, 20, 62, 4, 4, 28, 62, 44, 12, 28, 62, 28, 28, 28, 62, 4, 52, 28, 62, 12, 20, 36, 62, 12, 36, 36, 62, 4, 4, 44, 62, 20, 4, 44, 62, 36, 20, 44, 62, 4, 28, 52, 62};
.global .align 4 .b8 iq3s_grid[2048] = {1, 1, 1, 1, 3, 1, 1, 1, 5, 1, 1, 1, 11, 1, 1, 1, 15, 1, 1, 1, 1, 3, 1, 1, 3, 3, 1, 1, 5, 3, 1, 1, 9, 3, 1, 1, 13, 3, 1, 1, 1, 5, 1, 1, 3, 5, 1, 1, 11, 5, 1, 1, 7, 7, 1, 1, 1, 9, 1, 1, 5, 9, 1, 1, 11, 9, 1, 1, 15, 9, 1, 1, 3, 11, 1, 1, 7, 11, 1, 1, 1, 13, 1, 1, 5, 13, 1, 1, 3, 15, 1, 1, 9, 15, 1, 1, 15, 15, 1, 1, 1, 1, 3, 1, 3, 1, 3, 1, 5, 1, 3, 1, 9, 1, 3, 1, 1, 3, 3, 1, 3, 3, 3, 1, 11, 3, 3, 1, 1, 5, 3, 1, 7, 5, 3, 1, 15, 5, 3, 1, 3, 7, 3, 1, 11, 7, 3, 1, 9, 9, 3, 1, 3, 13, 3, 1, 11, 13, 3, 1, 5, 15, 3, 1, 1, 1, 5, 1, 3, 1, 5, 1, 11, 1, 5, 1, 15, 1, 5, 1, 1, 3, 5, 1, 7, 3, 5, 1, 13, 3, 5, 1, 3, 5, 5, 1, 11, 5, 5, 1, 1, 7, 5, 1, 9, 7, 5, 1, 5, 9, 5, 1, 11, 9, 5, 1, 15, 9, 5, 1, 3, 11, 5, 1, 7, 11, 5, 1, 1, 15, 5, 1, 7, 15, 5, 1, 7, 1, 7, 1, 3, 3, 7, 1, 11, 3, 7, 1, 1, 5, 7, 1, 5, 5, 7, 1, 3, 7, 7, 1, 7, 7, 7, 1, 13, 7, 7, 1, 9, 9, 7, 1, 1, 11, 7, 1, 5, 11, 7, 1, 15, 13, 7, 1, 3, 15, 7, 1, 11, 15, 7, 1, 1, 1, 9, 1, 7, 3, 9, 1, 15, 3, 9, 1, 3, 5, 9, 1, 9, 5, 9, 1, 5, 7, 9, 1, 1, 9, 9, 1, 7, 9, 9, 1, 3, 11, 9, 1, 1, 15, 9, 1, 5, 1, 11, 1, 9, 1, 11, 1, 1, 5, 11, 1, 5, 5, 11, 1, 13, 5, 11, 1, 7, 7, 11, 1, 3, 9, 11, 1, 11, 9, 11, 1, 15, 9, 11, 1, 13, 13, 11, 1, 7, 15, 11, 1, 13, 1, 13, 1, 3, 3, 13, 1, 7, 3, 13, 1, 3, 7, 13, 1, 5, 11, 13, 1, 3, 15, 13, 1, 1, 1, 15, 1, 5, 1, 15, 1, 9, 1, 15, 1, 1, 5, 15, 1, 5, 5, 15, 1, 13, 5, 15, 1, 7, 7, 15, 1, 1, 11, 15, 1, 9, 11, 15, 1, 1, 1, 1, 3, 3, 1, 1, 3, 5, 1, 1, 3, 9, 1, 1, 3, 1, 3, 1, 3, 3, 3, 1, 3, 7, 3, 1, 3, 11, 3, 1, 3, 15, 3, 1, 3, 1, 5, 1, 3, 5, 5, 1, 3, 3, 7, 1, 3, 9, 7, 1, 3, 13, 7, 1, 3, 9, 11, 1, 3, 13, 11, 1, 3, 3, 13, 1, 3, 5, 15, 1, 3, 1, 1, 3, 3, 3, 1, 3, 3, 7, 1, 3, 3, 13, 1, 3, 3, 1, 3, 3, 3, 9, 3, 3, 3, 3, 5, 3, 3, 1, 7, 3, 3, 7, 7, 3, 3, 3, 9, 3, 3, 1, 11, 3, 3, 5, 11, 3, 3, 1, 15, 3, 3, 13, 15, 3, 3, 1, 1, 5, 3, 5, 3, 5, 3, 11, 3, 5, 3, 15, 3, 5, 3, 1, 5, 5, 3, 9, 5, 5, 3, 5, 7, 5, 3, 1, 9, 5, 3, 7, 9, 5, 3, 11, 11, 5, 3, 1, 13, 5, 3, 5, 15, 5, 3, 3, 1, 7, 3, 9, 1, 7, 3, 15, 1, 7, 3, 1, 3, 7, 3, 7, 3, 7, 3, 3, 5, 7, 3, 15, 5, 7, 3, 1, 7, 7, 3, 9, 7, 7, 3, 3, 9, 7, 3, 5, 13, 7, 3, 1, 15, 7, 3, 7, 1, 9, 3, 11, 1, 9, 3, 5, 3, 9, 3, 9, 3, 9, 3, 3, 7, 9, 3, 7, 7, 9, 3, 5, 9, 9, 3, 13, 9, 9, 3, 1, 11, 9, 3, 9, 11, 9, 3, 3, 1, 11, 3, 1, 3, 11, 3, 7, 3, 11, 3, 3, 5, 11, 3, 1, 7, 11, 3, 5, 7, 11, 3, 3, 11, 11, 3, 1, 5, 13, 3, 9, 5, 13, 3, 15, 5, 13, 3, 9, 9, 13, 3, 13, 9, 13, 3, 3, 1, 15, 3, 7, 1, 15, 3, 1, 3, 15, 3, 5, 3, 15, 3, 3, 5, 15, 3, 11, 7, 15, 3, 3, 9, 15, 3, 5, 13, 15, 3, 1, 15, 15, 3, 1, 1, 1, 5, 3, 1, 1, 5, 7, 1, 1, 5, 11, 1, 1, 5, 15, 1, 1, 5, 1, 3, 1, 5, 5, 3, 1, 5, 9, 3, 1, 5, 13, 3, 1, 5, 3, 5, 1, 5, 7, 5, 1, 5, 15, 5, 1, 5, 1, 7, 1, 5, 5, 7, 1, 5, 3, 9, 1, 5, 7, 9, 1, 5, 11, 9, 1, 5, 1, 11, 1, 5, 5, 11, 1, 5, 15, 13, 1, 5, 1, 15, 1, 5, 7, 15, 1, 5, 11, 15, 1, 5, 1, 1, 3, 5, 5, 1, 3, 5, 1, 3, 3, 5, 7, 3, 3, 5, 15, 3, 3, 5, 5, 5, 3, 5, 11, 5, 3, 5, 3, 7, 3, 5, 9, 7, 3, 5, 5, 9, 3, 5, 3, 11, 3, 5, 3, 1, 5, 5, 9, 1, 5, 5, 15, 1, 5, 5, 3, 5, 5, 5, 7, 5, 5, 5, 1, 7, 5, 5, 15, 7, 5, 5, 3, 9, 5, 5, 7, 11, 5, 5, 15, 11, 5, 5, 3, 15, 5, 5, 9, 15, 5, 5, 1, 1, 7, 5, 5, 1, 7, 5, 11, 1, 7, 5, 3, 3, 7, 5, 5, 5, 7, 5, 9, 5, 7, 5, 3, 7, 7, 5, 7, 7, 7, 5, 5, 9, 7, 5, 1, 11, 7, 5, 13, 13, 7, 5, 3, 1, 9, 5, 15, 1, 9, 5, 1, 5, 9, 5, 7, 5, 9, 5, 5, 7, 9, 5, 11, 7, 9, 5, 3, 9, 9, 5, 5, 15, 9, 5, 11, 15, 9, 5, 9, 1, 11, 5, 3, 3, 11, 5, 5, 5, 11, 5, 15, 7, 11, 5, 1, 9, 11, 5, 7, 11, 11, 5, 1, 15, 11, 5, 1, 1, 13, 5, 5, 1, 13, 5, 15, 1, 13, 5, 3, 5, 13, 5, 11, 11, 13, 5, 3, 13, 13, 5, 11, 1, 15, 5, 3, 3, 15, 5, 13, 5, 15, 5, 1, 7, 15, 5, 7, 9, 15, 5, 1, 11, 15, 5, 5, 1, 1, 7, 3, 3, 1, 7, 7, 3, 1, 7, 11, 3, 1, 7, 15, 3, 1, 7, 5, 5, 1, 7, 3, 7, 1, 7, 7, 7, 1, 7, 11, 7, 1, 7, 5, 9, 1, 7, 9, 9, 1, 7, 15, 9, 1, 7, 3, 11, 1, 7, 7, 13, 1, 7, 3, 15, 1, 7, 3, 1, 3, 7, 7, 1, 3, 7, 11, 1, 3, 7, 9, 3, 3, 7, 3, 5, 3, 7, 7, 5, 3, 7, 1, 9, 3, 7, 1, 13, 3, 7, 5, 15, 3, 7, 13, 15, 3, 7, 1, 1, 5, 7, 5, 3, 5, 7, 1, 5, 5, 7, 5, 7, 5, 7, 9, 7, 5, 7, 1, 11, 5, 7, 3, 1, 7, 7, 1, 3, 7, 7, 9, 3, 7, 7, 3, 5, 7, 7, 7, 5, 7, 7, 15, 5, 7, 7, 1, 7, 7, 7, 3, 9, 7, 7, 7, 9, 7, 7, 15, 9, 7, 7, 11, 11, 7, 7, 7, 15, 7, 7, 7, 1, 9, 7, 3, 3, 9, 7, 13, 3, 9, 7, 5, 5, 9, 7, 3, 7, 9, 7, 5, 11, 9, 7, 1, 13, 9, 7, 9, 13, 9, 7, 3, 1, 11, 7, 1, 3, 11, 7, 5, 3, 11, 7, 11, 5, 11, 7, 5, 7, 11, 7, 9, 9, 11, 7, 13, 11, 11, 7, 7, 15, 11, 7, 13, 3, 13, 7, 3, 9, 13, 7, 3, 1, 15, 7, 7, 1, 15, 7, 1, 5, 15, 7, 5, 5, 15, 7, 11, 7, 15, 7, 1, 1, 1, 9, 9, 1, 1, 9, 5, 3, 1, 9, 1, 5, 1, 9, 9, 5, 1, 9, 15, 5, 1, 9, 5, 7, 1, 9, 3, 9, 1, 9, 1, 11, 1, 9, 1, 15, 1, 9, 5, 1, 3, 9, 15, 1, 3, 9, 3, 3, 3, 9, 7, 3, 3, 9, 5, 5, 3, 9, 1, 7, 3, 9, 11, 7, 3, 9, 7, 9, 3, 9, 3, 11, 3, 9, 11, 11, 3, 9, 3, 1, 5, 9, 7, 1, 5, 9, 1, 3, 5, 9, 11, 3, 5, 9, 3, 5, 5, 9, 7, 7, 5, 9, 1, 9, 5, 9, 15, 11, 5, 9, 5, 13, 5, 9, 1, 15, 5, 9, 9, 1, 7, 9, 3, 3, 7, 9, 7, 3, 7, 9, 1, 5, 7, 9, 5, 5, 7, 9, 3, 7, 7, 9, 11, 7, 7, 9, 1, 1, 9, 9, 5, 1, 9, 9, 9, 5, 9, 9, 15, 7, 9, 9, 1, 9, 9, 9, 3, 15, 9, 9, 11, 1, 11, 9, 15, 1, 11, 9, 3, 5, 11, 9, 5, 13, 11, 9, 7, 3, 13, 9, 9, 7, 13, 9, 1, 13, 13, 9, 1, 3, 15, 9, 11, 3, 15, 9, 1, 7, 15, 9, 7, 9, 15, 9, 3, 11, 15, 9, 5, 1, 1, 11, 1, 3, 1, 11, 9, 3, 1, 11, 5, 5, 1, 11, 1, 9, 1, 11, 9, 9, 1, 11, 15, 9, 1, 11, 5, 11, 1, 11, 13, 13, 1, 11, 9, 15, 1, 11, 3, 1, 3, 11, 7, 1, 3, 11, 11, 1, 3, 11, 5, 3, 3, 11, 3, 5, 3, 11, 5, 7, 3, 11, 5, 15, 3, 11, 1, 1, 5, 11, 3, 3, 5, 11, 7, 5, 5, 11, 1, 7, 5, 11, 13, 7, 5, 11, 7, 11, 5, 11, 5, 1, 7, 11, 15, 1, 7, 11, 1, 3, 7, 11, 15, 5, 7, 11, 9, 9, 7, 11, 3, 11, 7, 11, 11, 13, 7, 11, 7, 15, 7, 11, 3, 1, 9, 11, 9, 1, 9, 11, 1, 5, 9, 11, 5, 7, 9, 11, 13, 9, 9, 11, 5, 3, 11, 11, 13, 5, 11, 11, 3, 11, 11, 11, 7, 11, 11, 11, 5, 9, 13, 11, 5, 1, 15, 11, 9, 1, 15, 11, 5, 5, 15, 11, 3, 3, 1, 13, 7, 3, 1, 13, 11, 3, 1, 13, 3, 7, 1, 13, 7, 7, 1, 13, 1, 13, 1, 13, 1, 1, 3, 13, 1, 5, 3, 13, 15, 5, 3, 13, 9, 13, 3, 13, 5, 3, 5, 13, 9, 7, 5, 13, 5, 9, 5, 13, 11, 11, 5, 13, 5, 13, 5, 13, 1, 15, 5, 13, 1, 1, 7, 13, 9, 3, 7, 13, 3, 5, 7, 13, 1, 9, 7, 13, 11, 5, 9, 13, 7, 9, 9, 13, 5, 13, 9, 13, 1, 1, 11, 13, 7, 1, 11, 13, 9, 7, 11, 13, 1, 13, 11, 13, 11, 1, 13, 13, 1, 9, 13, 13, 3, 3, 15, 13, 7, 3, 15, 13, 1, 1, 1, 15, 9, 1, 1, 15, 15, 1, 1, 15, 1, 5, 1, 15, 5, 5, 1, 15, 13, 7, 1, 15, 1, 9, 1, 15, 9, 11, 1, 15, 5, 13, 1, 15, 5, 1, 3, 15, 3, 3, 3, 15, 9, 5, 3, 15, 7, 9, 3, 15, 11, 9, 3, 15, 3, 1, 5, 15, 9, 1, 5, 15, 1, 3, 5, 15, 13, 3, 5, 15, 3, 5, 5, 15, 1, 7, 5, 15, 3, 11, 5, 15, 5, 1, 7, 15, 5, 7, 7, 15, 11, 7, 7, 15, 7, 11, 7, 15, 3, 1, 9, 15, 11, 1, 9, 15, 7, 3, 9, 15, 1, 5, 9, 15, 1, 11, 9, 15, 5, 5, 11, 15, 5, 9, 11, 15, 5, 1, 13, 15, 3, 7, 13, 15, 1, 1, 15, 15};
.global .align 1 .b8 kvalues_iq4nl[16] = {129, 152, 173, 191, 207, 221, 234, 246, 1, 13, 25, 38, 53, 69, 89, 113};
.global .align 1 .b8 kvalues_mxfp4[16] = {0, 1, 2, 3, 4, 6, 8, 12, 0, 255, 254, 253, 252, 250, 248, 244};
.global .align 4 .b8 iq1s_grid_gpu[8192] = {0, 0, 0, 0, 2, 0, 0, 0, 1, 1, 0, 0, 0, 2, 0, 0, 2, 2, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0, 2, 0, 2, 0, 2, 0, 0, 2, 2, 0, 2, 2, 2, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 0, 0, 0, 2, 2, 0, 0, 2, 0, 2, 0, 2, 2, 2, 0, 2, 1, 1, 1, 2, 0, 0, 2, 2, 2, 0, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 16, 1, 0, 0, 17, 1, 0, 0, 17, 0, 1, 0, 16, 1, 1, 0, 18, 1, 1, 0, 17, 2, 1, 0, 18, 2, 1, 0, 17, 1, 2, 0, 17, 0, 0, 1, 18, 1, 0, 1, 17, 2, 0, 1, 18, 0, 1, 1, 17, 1, 1, 1, 18, 2, 1, 1, 17, 0, 2, 1, 16, 1, 2, 1, 18, 1, 2, 1, 16, 2, 2, 1, 17, 1, 0, 2, 17, 0, 1, 2, 16, 1, 1, 2, 18, 1, 1, 2, 17, 1, 2, 2, 32, 0, 0, 0, 34, 0, 0, 0, 32, 2, 0, 0, 34, 2, 0, 0, 33, 1, 1, 0, 32, 0, 2, 0, 34, 0, 2, 0, 32, 2, 2, 0, 34, 2, 2, 0, 33, 1, 0, 1, 33, 0, 1, 1, 33, 2, 1, 1, 32, 1, 2, 1, 33, 2, 2, 1, 32, 0, 0, 2, 34, 0, 0, 2, 32, 2, 0, 2, 34, 2, 0, 2, 33, 0, 1, 2, 33, 1, 1, 2, 33, 2, 1, 2, 32, 0, 2, 2, 34, 0, 2, 2, 32, 2, 2, 2, 34, 2, 2, 2, 1, 16, 1, 0, 0, 17, 1, 0, 2, 17, 1, 0, 1, 17, 2, 0, 1, 16, 0, 1, 1, 18, 0, 1, 1, 17, 1, 1, 2, 18, 1, 1, 0, 17, 2, 1, 1, 17, 2, 1, 1, 16, 1, 2, 1, 18, 1, 2, 1, 17, 2, 2, 17, 16, 0, 0, 16, 17, 0, 0, 17, 17, 0, 0, 18, 17, 0, 0, 17, 17, 1, 0, 16, 18, 1, 0, 18, 18, 1, 0, 17, 18, 2, 0, 16, 16, 0, 1, 17, 17, 0, 1, 18, 18, 0, 1, 16, 16, 1, 1, 17, 16, 1, 1, 16, 17, 1, 1, 17, 17, 1, 1, 18, 17, 1, 1, 17, 18, 1, 1, 16, 16, 2, 1, 18, 16, 2, 1, 17, 17, 2, 1, 16, 18, 2, 1, 18, 18, 2, 1, 17, 16, 0, 2, 17, 16, 1, 2, 17, 17, 1, 2, 16, 18, 1, 2, 18, 18, 1, 2, 17, 16, 2, 2, 16, 17, 2, 2, 17, 17, 2, 2, 18, 17, 2, 2, 17, 18, 2, 2, 32, 17, 1, 0, 33, 18, 1, 0, 33, 16, 0, 1, 32, 17, 0, 1, 32, 16, 1, 1, 34, 16, 1, 1, 33, 17, 1, 1, 32, 18, 1, 1, 32, 16, 2, 1, 33, 16, 2, 1, 34, 17, 2, 1, 33, 18, 2, 1, 33, 17, 0, 2, 33, 16, 1, 2, 32, 17, 1, 2, 33, 18, 1, 2, 0, 32, 0, 0, 2, 32, 0, 0, 0, 34, 0, 0, 2, 34, 0, 0, 1, 33, 1, 0, 0, 32, 2, 0, 2, 32, 2, 0, 0, 34, 2, 0, 2, 34, 2, 0, 1, 33, 0, 1, 1, 32, 1, 1, 2, 33, 1, 1, 1, 33, 2, 1, 0, 32, 0, 2, 2, 32, 0, 2, 0, 34, 0, 2, 2, 34, 0, 2, 1, 33, 1, 2, 0, 32, 2, 2, 2, 32, 2, 2, 0, 34, 2, 2, 2, 34, 2, 2, 17, 33, 0, 0, 17, 32, 1, 0, 16, 33, 1, 0, 17, 34, 1, 0, 16, 33, 2, 0, 17, 33, 2, 0, 17, 32, 0, 1, 16, 32, 1, 1, 17, 32, 1, 1, 17, 33, 1, 1, 17, 32, 2, 1, 16, 33, 2, 1, 17, 34, 2, 1, 17, 32, 1, 2, 16, 33, 1, 2, 18, 33, 1, 2, 17, 34, 1, 2, 17, 33, 2, 2, 32, 32, 0, 0, 34, 32, 0, 0, 32, 34, 0, 0, 34, 34, 0, 0, 33, 33, 1, 0, 32, 32, 2, 0, 34, 32, 2, 0, 32, 34, 2, 0, 34, 34, 2, 0, 33, 33, 0, 1, 33, 32, 1, 1, 33, 34, 1, 1, 33, 32, 2, 1, 33, 33, 2, 1, 32, 32, 0, 2, 34, 32, 0, 2, 33, 33, 0, 2, 32, 34, 0, 2, 34, 34, 0, 2, 33, 33, 1, 2, 32, 32, 2, 2, 34, 32, 2, 2, 32, 34, 2, 2, 34, 34, 2, 2, 0, 0, 17, 0, 1, 0, 17, 0, 0, 1, 17, 0, 1, 2, 17, 0, 0, 1, 18, 0, 1, 1, 18, 0, 1, 0, 16, 1, 0, 1, 16, 1, 0, 0, 17, 1, 1, 1, 17, 1, 0, 2, 17, 1, 1, 0, 18, 1, 0, 1, 18, 1, 1, 1, 18, 1, 1, 2, 18, 1, 1, 0, 17, 2, 0, 1, 17, 2, 2, 1, 17, 2, 1, 0, 18, 2, 1, 1, 18, 2, 17, 0, 16, 0, 16, 1, 16, 0, 18, 1, 16, 0, 17, 2, 16, 0, 16, 0, 17, 0, 18, 0, 17, 0, 17, 1, 17, 0, 16, 2, 17, 0, 17, 0, 18, 0, 16, 1, 18, 0, 17, 2, 18, 0, 17, 1, 16, 1, 18, 2, 16, 1, 16, 0, 17, 1, 17, 0, 17, 1, 18, 0, 17, 1, 16, 1, 17, 1, 17, 1, 17, 1, 18, 1, 17, 1, 17, 2, 17, 1, 16, 0, 18, 1, 17, 1, 18, 1, 16, 1, 16, 2, 18, 0, 17, 2, 17, 1, 17, 2, 17, 0, 18, 2, 16, 1, 18, 2, 33, 0, 17, 0, 32, 1, 17, 0, 34, 1, 17, 0, 33, 1, 18, 0, 32, 0, 16, 1, 34, 1, 16, 1, 33, 2, 16, 1, 34, 0, 17, 1, 33, 1, 17, 1, 32, 2, 17, 1, 34, 2, 17, 1, 32, 1, 18, 1, 34, 1, 18, 1, 33, 1, 16, 2, 33, 0, 17, 2, 32, 1, 17, 2, 34, 1, 17, 2, 33, 1, 18, 2, 1, 16, 16, 0, 2, 17, 16, 0, 1, 18, 16, 0, 0, 17, 17, 0, 1, 17, 17, 0, 0, 18, 17, 0, 1, 18, 17, 0, 1, 16, 18, 0, 2, 17, 18, 0, 1, 16, 16, 1, 1, 17, 16, 1, 2, 17, 16, 1, 0, 18, 16, 1, 2, 18, 16, 1, 1, 16, 17, 1, 0, 17, 17, 1, 1, 17, 17, 1, 2, 17, 17, 1, 1, 18, 17, 1, 2, 16, 18, 1, 1, 17, 18, 1, 0, 18, 18, 1, 0, 17, 16, 2, 1, 18, 16, 2, 0, 16, 17, 2, 0, 17, 17, 2, 1, 17, 17, 2, 0, 18, 17, 2, 1, 18, 17, 2, 2, 18, 17, 2, 1, 16, 18, 2, 0, 17, 18, 2, 1, 17, 18, 2, 1, 18, 18, 2, 18, 16, 16, 0, 17, 17, 16, 0, 18, 18, 16, 0, 17, 16, 17, 0, 16, 17, 17, 0, 17, 17, 17, 0, 18, 17, 17, 0, 17, 18, 17, 0, 16, 16, 18, 0, 18, 16, 18, 0, 17, 17, 18, 0, 16, 18, 18, 0, 18, 18, 18, 0, 17, 16, 16, 1, 16, 17, 16, 1, 17, 17, 16, 1, 18, 17, 16, 1, 17, 16, 17, 1, 18, 16, 17, 1, 16, 17, 17, 1, 17, 17, 17, 1, 18, 17, 17, 1, 17, 18, 17, 1, 18, 18, 17, 1, 17, 16, 18, 1, 16, 17, 18, 1, 17, 17, 18, 1, 18, 17, 18, 1, 17, 18, 18, 1, 16, 16, 16, 2, 18, 16, 16, 2, 16, 17, 16, 2, 17, 17, 16, 2, 16, 18, 16, 2, 18, 18, 16, 2, 16, 16, 17, 2, 17, 16, 17, 2, 16, 17, 17, 2, 17, 17, 17, 2, 18, 17, 17, 2, 17, 18, 17, 2, 18, 18, 17, 2, 16, 16, 18, 2, 18, 16, 18, 2, 17, 17, 18, 2, 33, 16, 16, 0, 32, 17, 16, 0, 33, 17, 16, 0, 34, 17, 16, 0, 33, 17, 17, 0, 34, 17, 17, 0, 32, 18, 17, 0, 34, 18, 17, 0, 33, 16, 18, 0, 34, 17, 18, 0, 32, 16, 16, 1, 34, 16, 16, 1, 32, 17, 16, 1, 33, 17, 16, 1, 32, 18, 16, 1, 34, 18, 16, 1, 33, 16, 17, 1, 33, 17, 17, 1, 34, 17, 17, 1, 32, 18, 17, 1, 33, 18, 17, 1, 33, 16, 18, 1, 32, 17, 18, 1, 33, 17, 18, 1, 32, 18, 18, 1, 33, 18, 18, 1, 34, 18, 18, 1, 34, 17, 16, 2, 34, 18, 16, 2, 34, 16, 17, 2, 33, 17, 17, 2, 32, 17, 18, 2, 33, 18, 18, 2, 1, 32, 17, 0, 2, 33, 17, 0, 1, 33, 18, 0, 1, 32, 16, 1, 0, 33, 16, 1, 2, 33, 16, 1, 1, 34, 16, 1, 0, 32, 17, 1, 1, 33, 17, 1, 0, 34, 17, 1, 2, 34, 17, 1, 0, 32, 18, 1, 1, 32, 18, 1, 0, 33, 18, 1, 2, 33, 18, 1, 1, 34, 18, 1, 1, 33, 16, 2, 1, 32, 17, 2, 0, 33, 17, 2, 1, 33, 18, 2, 16, 32, 17, 0, 18, 32, 17, 0, 17, 33, 17, 0, 18, 34, 17, 0, 17, 32, 18, 0, 17, 33, 18, 0, 18, 32, 16, 1, 16, 33, 16, 1, 17, 33, 16, 1, 16, 34, 16, 1, 17, 32, 17, 1, 16, 33, 17, 1, 17, 33, 17, 1, 18, 33, 17, 1, 17, 34, 17, 1, 18, 34, 17, 1, 16, 32, 18, 1, 17, 33, 18, 1, 18, 34, 18, 1, 17, 34, 16, 2, 17, 32, 17, 2, 18, 32, 17, 2, 17, 33, 17, 2, 16, 34, 17, 2, 17, 32, 18, 2, 18, 33, 18, 2, 17, 34, 18, 2, 33, 34, 16, 0, 34, 33, 17, 0, 32, 33, 18, 0, 34, 33, 18, 0, 32, 33, 16, 1, 34, 33, 16, 1, 33, 34, 16, 1, 32, 32, 17, 1, 34, 32, 17, 1, 33, 33, 17, 1, 32, 34, 17, 1, 33, 32, 18, 1, 34, 33, 18, 1, 33, 34, 18, 1, 33, 33, 16, 2, 33, 32, 17, 2, 34, 33, 17, 2, 34, 34, 17, 2, 0, 0, 32, 0, 2, 0, 32, 0, 0, 2, 32, 0, 2, 2, 32, 0, 1, 1, 33, 0, 0, 0, 34, 0, 2, 0, 34, 0, 1, 1, 34, 0, 0, 2, 34, 0, 2, 2, 34, 0, 1, 1, 32, 1, 1, 0, 33, 1, 1, 2, 33, 1, 1, 0, 34, 1, 1, 1, 34, 1, 0, 0, 32, 2, 2, 0, 32, 2, 0, 2, 32, 2, 2, 2, 32, 2, 1, 1, 33, 2, 0, 0, 34, 2, 2, 0, 34, 2, 1, 1, 34, 2, 0, 2, 34, 2, 2, 2, 34, 2, 17, 1, 32, 0, 17, 0, 33, 0, 16, 1, 33, 0, 17, 2, 33, 0, 17, 1, 34, 0, 18, 0, 32, 1, 16, 1, 32, 1, 17, 2, 32, 1, 17, 1, 33, 1, 16, 2, 33, 1, 18, 2, 33, 1, 17, 0, 34, 1, 16, 1, 34, 1, 17, 1, 34, 1, 18, 1, 34, 1, 17, 1, 32, 2, 16, 0, 33, 2, 18, 1, 33, 2, 17, 2, 33, 2, 17, 1, 34, 2, 33, 0, 32, 0, 32, 2, 32, 0, 34, 2, 32, 0, 33, 0, 33, 0, 33, 1, 33, 0, 32, 0, 34, 0, 34, 0, 34, 0, 32, 2, 34, 0, 34, 2, 34, 0, 33, 1, 32, 1, 33, 0, 33, 1, 34, 1, 33, 1, 33, 2, 33, 1, 33, 1, 34, 1, 33, 0, 32, 2, 32, 2, 32, 2, 34, 2, 32, 2, 33, 0, 33, 2, 33, 1, 33, 2, 32, 0, 34, 2, 34, 0, 34, 2, 32, 2, 34, 2, 34, 2, 34, 2, 1, 17, 32, 0, 0, 17, 33, 0, 2, 17, 33, 0, 1, 18, 33, 0, 1, 17, 34, 0, 0, 17, 32, 1, 1, 17, 32, 1, 2, 17, 32, 1, 1, 18, 32, 1, 2, 16, 33, 1, 1, 17, 33, 1, 0, 18, 33, 1, 2, 18, 33, 1, 2, 17, 34, 1, 1, 17, 32, 2, 1, 16, 33, 2, 0, 17, 33, 2, 1, 18, 33, 2, 1, 16, 34, 2, 1, 17, 34, 2, 17, 18, 32, 0, 17, 17, 33, 0, 17, 16, 34, 0, 17, 18, 34, 0, 16, 16, 32, 1, 17, 17, 32, 1, 16, 18, 32, 1, 17, 16, 33, 1, 16, 17, 33, 1, 17, 17, 33, 1, 17, 18, 33, 1, 18, 16, 34, 1, 17, 17, 34, 1, 16, 18, 34, 1, 17, 18, 32, 2, 16, 16, 33, 2, 16, 17, 33, 2, 17, 17, 33, 2, 16, 18, 33, 2, 18, 18, 33, 2, 17, 16, 34, 2, 16, 17, 34, 2, 18, 17, 34, 2, 17, 18, 34, 2, 33, 17, 32, 0, 32, 16, 33, 0, 34, 16, 33, 0, 33, 18, 33, 0, 33, 17, 34, 0, 33, 16, 32, 1, 33, 18, 32, 1, 33, 17, 33, 1, 32, 16, 34, 1, 33, 16, 34, 1, 33, 18, 34, 1, 32, 17, 32, 2, 34, 17, 32, 2, 32, 16, 33, 2, 34, 18, 33, 2, 0, 32, 32, 0, 2, 32, 32, 0, 0, 34, 32, 0, 2, 34, 32, 0, 1, 33, 33, 0, 0, 32, 34, 0, 2, 32, 34, 0, 0, 34, 34, 0, 2, 34, 34, 0, 1, 33, 32, 1, 1, 32, 33, 1, 0, 33, 33, 1, 1, 33, 34, 1, 0, 32, 32, 2, 2, 32, 32, 2, 0, 34, 32, 2, 2, 34, 32, 2, 0, 32, 34, 2, 2, 32, 34, 2, 0, 34, 34, 2, 2, 34, 34, 2, 17, 34, 32, 0, 17, 32, 33, 0, 16, 33, 33, 0, 17, 34, 33, 0, 17, 33, 34, 0, 18, 33, 32, 1, 17, 34, 32, 1, 18, 32, 33, 1, 17, 33, 33, 1, 17, 32, 34, 1, 16, 33, 34, 1, 18, 33, 34, 1, 17, 34, 34, 1, 17, 33, 32, 2, 16, 32, 33, 2, 18, 33, 33, 2, 17, 34, 33, 2, 16, 33, 34, 2, 17, 33, 34, 2, 32, 32, 32, 0, 34, 32, 32, 0, 32, 34, 32, 0, 34, 34, 32, 0, 32, 32, 34, 0, 34, 32, 34, 0, 32, 34, 34, 0, 34, 34, 34, 0, 33, 33, 32, 1, 33, 32, 33, 1, 34, 33, 33, 1, 33, 34, 33, 1, 33, 33, 34, 1, 32, 32, 32, 2, 34, 32, 32, 2, 32, 34, 32, 2, 34, 34, 32, 2, 33, 33, 33, 2, 32, 32, 34, 2, 34, 32, 34, 2, 32, 34, 34, 2, 34, 34, 34, 2, 1, 1, 0, 16, 1, 0, 1, 16, 2, 1, 1, 16, 1, 1, 2, 16, 1, 2, 0, 17, 2, 0, 1, 17, 1, 1, 1, 17, 0, 2, 1, 17, 2, 2, 1, 17, 1, 0, 2, 17, 0, 1, 2, 17, 2, 1, 2, 17, 0, 1, 1, 18, 1, 2, 1, 18, 1, 0, 2, 18, 2, 1, 2, 18, 16, 0, 0, 16, 17, 0, 0, 16, 16, 1, 0, 16, 18, 1, 0, 16, 17, 2, 0, 16, 18, 0, 1, 16, 17, 1, 1, 16, 18, 1, 1, 16, 16, 2, 1, 16, 18, 2, 1, 16, 17, 0, 2, 16, 18, 1, 2, 16, 17, 2, 2, 16, 17, 1, 0, 17, 16, 2, 0, 17, 18, 2, 0, 17, 17, 0, 1, 17, 16, 1, 1, 17, 17, 1, 1, 17, 18, 1, 1, 17, 17, 2, 1, 17, 18, 2, 1, 17, 17, 1, 2, 17, 16, 2, 2, 17, 18, 2, 2, 17, 17, 0, 0, 18, 16, 1, 0, 18, 18, 1, 0, 18, 16, 0, 1, 18, 18, 0, 1, 18, 17, 1, 1, 18, 16, 0, 2, 18, 17, 0, 2, 18, 18, 0, 2, 18, 33, 1, 0, 16, 33, 0, 1, 16, 32, 1, 1, 16, 34, 1, 1, 16, 33, 1, 2, 16, 33, 0, 0, 17, 34, 0, 1, 17, 33, 1, 1, 17, 34, 2, 1, 17, 32, 1, 2, 17, 33, 2, 2, 17, 33, 2, 0, 18, 32, 1, 1, 18, 33, 1, 2, 18, 1, 16, 0, 16, 1, 17, 1, 16, 1, 18, 1, 16, 1, 18, 2, 16, 1, 17, 0, 17, 0, 18, 0, 17, 2, 18, 0, 17, 1, 16, 1, 17, 0, 17, 1, 17, 1, 17, 1, 17, 2, 17, 1, 17, 1, 16, 2, 17, 2, 16, 2, 17, 1, 17, 2, 17, 0, 18, 2, 17, 2, 18, 2, 17, 1, 16, 0, 18, 2, 17, 0, 18, 1, 18, 0, 18, 0, 16, 1, 18, 2, 16, 1, 18, 1, 17, 1, 18, 0, 16, 2, 18, 1, 16, 2, 18, 1, 18, 2, 18, 17, 16, 0, 16, 18, 16, 0, 16, 17, 17, 0, 16, 18, 18, 0, 16, 17, 16, 1, 16, 16, 17, 1, 16, 17, 17, 1, 16, 18, 17, 1, 16, 17, 18, 1, 16, 16, 16, 2, 16, 17, 17, 2, 16, 18, 18, 2, 16, 17, 16, 0, 17, 16, 17, 0, 17, 17, 17, 0, 17, 18, 17, 0, 17, 17, 18, 0, 17, 16, 16, 1, 17, 17, 16, 1, 17, 16, 17, 1, 17, 17, 17, 1, 17, 18, 17, 1, 17, 16, 18, 1, 17, 17, 18, 1, 17, 17, 16, 2, 17, 16, 17, 2, 17, 17, 17, 2, 17, 18, 17, 2, 17, 17, 18, 2, 17, 18, 16, 0, 18, 16, 17, 0, 18, 17, 17, 0, 18, 16, 18, 0, 18, 17, 16, 1, 18, 16, 17, 1, 18, 17, 17, 1, 18, 18, 17, 1, 18, 17, 18, 1, 18, 18, 18, 1, 18, 17, 17, 2, 18, 16, 18, 2, 18, 18, 18, 2, 18, 33, 16, 0, 16, 33, 17, 0, 16, 33, 18, 0, 16, 32, 17, 1, 16, 33, 17, 1, 16, 32, 18, 1, 16, 34, 18, 1, 16, 33, 16, 2, 16, 32, 17, 2, 16, 33, 18, 2, 16, 32, 16, 0, 17, 34, 16, 0, 17, 33, 17, 0, 17, 32, 18, 0, 17, 32, 16, 1, 17, 33, 16, 1, 17, 34, 16, 1, 17, 33, 17, 1, 17, 34, 17, 1, 17, 33, 18, 1, 17, 34, 16, 2, 17, 33, 17, 2, 17, 32, 18, 2, 17, 33, 16, 0, 18, 33, 17, 0, 18, 34, 18, 0, 18, 32, 17, 1, 18, 33, 17, 1, 18, 33, 16, 2, 18, 32, 17, 2, 18, 34, 17, 2, 18, 1, 33, 0, 16, 1, 32, 1, 16, 1, 33, 1, 16, 2, 34, 1, 16, 1, 33, 2, 16, 2, 32, 0, 17, 1, 34, 0, 17, 0, 32, 1, 17, 1, 33, 1, 17, 0, 34, 1, 17, 1, 32, 2, 17, 0, 33, 2, 17, 2, 33, 2, 17, 1, 34, 2, 17, 1, 33, 0, 18, 1, 32, 1, 18, 0, 33, 1, 18, 2, 33, 1, 18, 1, 34, 1, 18, 1, 33, 2, 18, 17, 32, 0, 16, 17, 33, 0, 16, 18, 33, 0, 16, 18, 34, 0, 16, 16, 32, 1, 16, 16, 33, 1, 16, 17, 33, 1, 16, 16, 34, 1, 16, 17, 32, 2, 16, 16, 33, 2, 16, 18, 33, 2, 16, 16, 32, 0, 17, 17, 33, 0, 17, 18, 34, 0, 17, 17, 32, 1, 17, 18, 32, 1, 17, 16, 33, 1, 17, 17, 33, 1, 17, 18, 33, 1, 17, 17, 34, 1, 17, 16, 32, 2, 17, 18, 32, 2, 17, 17, 33, 2, 17, 18, 33, 2, 17, 18, 34, 2, 17, 18, 33, 0, 18, 17, 34, 0, 18, 18, 32, 1, 18, 17, 33, 1, 18, 18, 33, 1, 18, 16, 34, 1, 18, 17, 32, 2, 18, 16, 33, 2, 18, 18, 33, 2, 18, 17, 34, 2, 18, 34, 33, 1, 16, 32, 33, 0, 17, 34, 33, 0, 17, 33, 34, 0, 17, 33, 33, 1, 17, 32, 34, 1, 17, 34, 34, 1, 17, 32, 33, 2, 17, 33, 34, 2, 17, 32, 33, 1, 18, 33, 33, 2, 18, 1, 0, 16, 16, 0, 1, 16, 16, 1, 1, 16, 16, 2, 1, 16, 16, 1, 2, 16, 16, 2, 0, 17, 16, 1, 1, 17, 16, 2, 2, 17, 16, 1, 0, 18, 16, 0, 1, 18, 16, 1, 2, 18, 16, 0, 0, 16, 17, 1, 1, 16, 17, 0, 2, 16, 17, 1, 0, 17, 17, 0, 1, 17, 17, 1, 1, 17, 17, 2, 1, 17, 17, 1, 2, 17, 17, 1, 1, 18, 17, 0, 2, 18, 17, 2, 1, 16, 18, 1, 2, 16, 18, 1, 1, 17, 18, 0, 2, 17, 18, 0, 0, 18, 18, 1, 0, 18, 18, 2, 1, 18, 18, 1, 2, 18, 18, 17, 1, 16, 16, 16, 2, 16, 16, 17, 2, 16, 16, 18, 2, 16, 16, 17, 0, 17, 16, 16, 1, 17, 16, 17, 1, 17, 16, 18, 1, 17, 16, 16, 2, 17, 16, 17, 2, 17, 16, 16, 0, 18, 16, 17, 1, 18, 16, 18, 1, 18, 16, 16, 2, 18, 16, 18, 2, 18, 16, 17, 0, 16, 17, 16, 1, 16, 17, 17, 1, 16, 17, 18, 1, 16, 17, 17, 2, 16, 17, 16, 0, 17, 17, 17, 0, 17, 17, 18, 0, 17, 17, 16, 1, 17, 17, 17, 1, 17, 17, 18, 1, 17, 17, 16, 2, 17, 17, 17, 2, 17, 17, 18, 2, 17, 17, 17, 0, 18, 17, 16, 1, 18, 17, 17, 1, 18, 17, 18, 1, 18, 17, 17, 2, 18, 17, 18, 0, 16, 18, 17, 1, 16, 18, 17, 0, 17, 18, 16, 1, 17, 18, 17, 1, 17, 18, 18, 1, 17, 18, 17, 2, 17, 18, 16, 0, 18, 18, 17, 1, 18, 18, 18, 2, 18, 18, 33, 0, 16, 16, 34, 1, 16, 16, 34, 0, 17, 16, 33, 1, 17, 16, 34, 2, 17, 16, 33, 0, 18, 16, 32, 1, 18, 16, 34, 0, 16, 17, 33, 1, 16, 17, 34, 2, 16, 17, 33, 0, 17, 17, 32, 1, 17, 17, 33, 1, 17, 17, 34, 1, 17, 17, 33, 2, 17, 17, 34, 0, 18, 17, 33, 1, 18, 17, 33, 1, 16, 18, 32, 0, 17, 18, 34, 0, 17, 18, 33, 1, 17, 18, 33, 2, 17, 18, 34, 2, 17, 18, 32, 1, 18, 18, 0, 17, 16, 16, 1, 17, 16, 16, 1, 16, 17, 16, 0, 17, 17, 16, 1, 17, 17, 16, 2, 17, 17, 16, 0, 18, 17, 16, 1, 18, 17, 16, 1, 16, 18, 16, 1, 17, 18, 16, 0, 18, 18, 16, 2, 18, 18, 16, 1, 16, 16, 17, 0, 17, 16, 17, 1, 17, 16, 17, 2, 17, 16, 17, 1, 18, 16, 17, 2, 18, 16, 17, 0, 16, 17, 17, 1, 16, 17, 17, 0, 17, 17, 17, 1, 17, 17, 17, 2, 17, 17, 17, 0, 18, 17, 17, 1, 18, 17, 17, 2, 18, 17, 17, 1, 16, 18, 17, 2, 16, 18, 17, 0, 17, 18, 17, 1, 17, 18, 17, 2, 17, 18, 17, 1, 18, 18, 17, 0, 16, 16, 18, 0, 18, 16, 18, 2, 18, 16, 18, 1, 16, 17, 18, 0, 17, 17, 18, 1, 17, 17, 18, 2, 17, 17, 18, 1, 18, 17, 18, 1, 16, 18, 18, 0, 17, 18, 18, 1, 17, 18, 18, 2, 18, 18, 18, 17, 16, 16, 16, 18, 16, 16, 16, 16, 17, 16, 16, 17, 17, 16, 16, 18, 17, 16, 16, 17, 18, 16, 16, 16, 16, 17, 16, 17, 16, 17, 16, 18, 16, 17, 16, 16, 17, 17, 16, 17, 17, 17, 16, 18, 17, 17, 16, 17, 18, 17, 16, 18, 18, 17, 16, 17, 16, 18, 16, 16, 17, 18, 16, 17, 17, 18, 16, 18, 17, 18, 16, 17, 18, 18, 16, 16, 16, 16, 17, 17, 16, 16, 17, 18, 16, 16, 17, 16, 17, 16, 17, 17, 17, 16, 17, 18, 17, 16, 17, 16, 18, 16, 17, 17, 18, 16, 17, 16, 16, 17, 17, 17, 16, 17, 17, 18, 16, 17, 17, 16, 17, 17, 17, 17, 17, 17, 17, 18, 17, 17, 17, 16, 18, 17, 17, 17, 18, 17, 17, 18, 18, 17, 17, 16, 16, 18, 17, 17, 16, 18, 17, 16, 17, 18, 17, 17, 17, 18, 17, 18, 17, 18, 17, 16, 18, 18, 17, 17, 18, 18, 17, 18, 18, 18, 17, 17, 16, 16, 18, 16, 17, 16, 18, 17, 17, 16, 18, 17, 18, 16, 18, 18, 18, 16, 18, 16, 16, 17, 18, 17, 16, 17, 18, 16, 17, 17, 18, 17, 17, 17, 18, 18, 17, 17, 18, 16, 18, 17, 18, 17, 18, 17, 18, 17, 16, 18, 18, 16, 17, 18, 18, 17, 17, 18, 18, 18, 17, 18, 18, 17, 18, 18, 18, 32, 16, 16, 16, 33, 16, 16, 16, 34, 16, 16, 16, 32, 17, 16, 16, 34, 17, 16, 16, 32, 18, 16, 16, 33, 18, 16, 16, 33, 16, 17, 16, 32, 17, 17, 16, 33, 17, 17, 16, 32, 18, 17, 16, 33, 18, 17, 16, 32, 16, 18, 16, 33, 16, 18, 16, 34, 16, 18, 16, 32, 17, 18, 16, 33, 17, 18, 16, 34, 17, 18, 16, 32, 18, 18, 16, 33, 18, 18, 16, 33, 16, 16, 17, 33, 17, 16, 17, 34, 17, 16, 17, 32, 18, 16, 17, 33, 18, 16, 17, 34, 18, 16, 17, 32, 16, 17, 17, 33, 16, 17, 17, 34, 16, 17, 17, 32, 17, 17, 17, 33, 17, 17, 17, 34, 17, 17, 17, 32, 18, 17, 17, 33, 18, 17, 17, 34, 18, 17, 17, 33, 16, 18, 17, 32, 17, 18, 17, 33, 17, 18, 17, 33, 18, 18, 17, 34, 16, 16, 18, 33, 17, 16, 18, 34, 17, 16, 18, 32, 18, 16, 18, 33, 18, 16, 18, 34, 18, 16, 18, 33, 16, 17, 18, 33, 17, 17, 18, 34, 18, 17, 18, 34, 16, 18, 18, 33, 17, 18, 18, 34, 17, 18, 18, 32, 18, 18, 18, 33, 18, 18, 18, 0, 33, 16, 16, 1, 33, 16, 16, 2, 33, 16, 16, 1, 34, 16, 16, 0, 32, 17, 16, 1, 33, 17, 16, 0, 34, 17, 16, 1, 32, 18, 16, 2, 34, 18, 16, 1, 33, 16, 17, 0, 34, 16, 17, 2, 34, 16, 17, 1, 32, 17, 17, 0, 33, 17, 17, 1, 33, 17, 17, 2, 33, 17, 17, 0, 34, 17, 17, 1, 34, 17, 17, 0, 32, 18, 17, 2, 32, 18, 17, 0, 33, 18, 17, 1, 33, 18, 17, 2, 32, 16, 18, 1, 34, 16, 18, 0, 32, 17, 18, 2, 32, 17, 18, 1, 33, 17, 18, 0, 34, 17, 18, 1, 32, 18, 18, 1, 34, 18, 18, 17, 32, 16, 16, 18, 32, 16, 16, 17, 33, 16, 16, 18, 34, 16, 16, 17, 32, 17, 16, 16, 33, 17, 16, 17, 33, 17, 16, 18, 33, 17, 16, 17, 34, 17, 16, 17, 33, 18, 16, 17, 32, 16, 17, 16, 33, 16, 17, 17, 33, 16, 17, 18, 33, 16, 17, 17, 34, 16, 17, 16, 32, 17, 17, 17, 32, 17, 17, 18, 32, 17, 17, 16, 33, 17, 17, 17, 33, 17, 17, 18, 33, 17, 17, 16, 34, 17, 17, 17, 34, 17, 17, 18, 34, 17, 17, 17, 32, 18, 17, 16, 33, 18, 17, 17, 33, 18, 17, 18, 33, 18, 17, 17, 34, 18, 17, 17, 32, 16, 18, 17, 33, 16, 18, 17, 34, 16, 18, 17, 32, 17, 18, 16, 33, 17, 18, 17, 33, 17, 18, 18, 33, 17, 18, 16, 34, 17, 18, 17, 34, 17, 18, 17, 33, 18, 18, 32, 33, 16, 16, 32, 34, 16, 16, 33, 33, 17, 16, 34, 34, 17, 16, 32, 32, 18, 16, 33, 33, 18, 16, 34, 33, 18, 16, 33, 34, 18, 16, 33, 33, 16, 17, 32, 34, 16, 17, 33, 34, 16, 17, 33, 32, 17, 17, 33, 33, 17, 17, 34, 33, 17, 17, 32, 34, 17, 17, 33, 34, 17, 17, 34, 32, 18, 17, 33, 33, 18, 17, 32, 34, 18, 17, 34, 34, 18, 17, 33, 32, 16, 18, 34, 34, 16, 18, 34, 32, 17, 18, 33, 33, 17, 18, 34, 33, 17, 18, 32, 34, 17, 18, 34, 34, 17, 18, 33, 32, 18, 18, 1, 1, 32, 16, 0, 1, 33, 16, 2, 1, 33, 16, 1, 2, 33, 16, 1, 1, 34, 16, 0, 1, 32, 17, 0, 0, 33, 17, 1, 1, 33, 17, 2, 1, 33, 17, 0, 2, 33, 17, 2, 2, 33, 17, 1, 0, 34, 17, 0, 1, 34, 17, 2, 1, 34, 17, 1, 2, 34, 17, 1, 0, 32, 18, 2, 1, 33, 18, 1, 1, 34, 18, 17, 0, 32, 16, 16, 1, 32, 16, 18, 1, 32, 16, 17, 2, 32, 16, 18, 0, 33, 16, 17, 1, 33, 16, 17, 0, 34, 16, 18, 0, 34, 16, 18, 1, 34, 16, 17, 2, 34, 16, 17, 1, 32, 17, 17, 2, 32, 17, 17, 0, 33, 17, 17, 1, 33, 17, 18, 1, 33, 17, 17, 2, 33, 17, 17, 1, 34, 17, 18, 1, 34, 17, 18, 2, 34, 17, 16, 1, 32, 18, 18, 2, 32, 18, 18, 0, 33, 18, 17, 1, 33, 18, 17, 0, 34, 18, 18, 1, 34, 18, 17, 2, 34, 18, 33, 0, 33, 16, 34, 1, 33, 16, 33, 2, 33, 16, 32, 0, 32, 17, 33, 0, 32, 17, 34, 1, 32, 17, 33, 1, 33, 17, 34, 1, 33, 17, 32, 2, 33, 17, 32, 0, 34, 17, 33, 1, 32, 18, 33, 0, 33, 18, 34, 1, 33, 18, 33, 1, 34, 18, 1, 16, 33, 16, 2, 16, 33, 16, 1, 17, 33, 16, 2, 17, 33, 16, 2, 18, 33, 16, 1, 16, 34, 16, 2, 17, 34, 16, 1, 18, 34, 16, 0, 16, 32, 17, 2, 16, 32, 17, 1, 17, 32, 17, 0, 18, 32, 17, 2, 18, 32, 17, 1, 16, 33, 17, 0, 17, 33, 17, 1, 17, 33, 17, 2, 17, 33, 17, 1, 18, 33, 17, 2, 18, 33, 17, 0, 16, 34, 17, 2, 16, 34, 17, 1, 17, 34, 17, 0, 17, 32, 18, 1, 17, 32, 18, 1, 18, 32, 18, 0, 16, 33, 18, 2, 16, 33, 18, 0, 17, 33, 18, 1, 17, 33, 18, 2, 17, 33, 18, 0, 18, 33, 18, 2, 18, 33, 18, 1, 16, 34, 18, 0, 17, 34, 18, 1, 18, 34, 18, 17, 17, 32, 16, 16, 18, 32, 16, 18, 18, 32, 16, 17, 16, 33, 16, 17, 17, 33, 16, 18, 17, 33, 16, 17, 18, 33, 16, 16, 17, 32, 17, 17, 17, 32, 17, 18, 17, 32, 17, 17, 18, 32, 17, 16, 16, 33, 17, 17, 16, 33, 17, 16, 17, 33, 17, 17, 17, 33, 17, 18, 17, 33, 17, 17, 18, 33, 17, 17, 16, 34, 17, 16, 17, 34, 17, 17, 17, 34, 17, 18, 17, 34, 17, 17, 18, 34, 17, 18, 17, 32, 18, 17, 18, 32, 18, 18, 18, 32, 18, 17, 16, 33, 18, 17, 17, 33, 18, 18, 17, 33, 18, 17, 18, 33, 18, 18, 18, 33, 18, 18, 16, 34, 18, 17, 17, 34, 18, 18, 17, 34, 18, 16, 18, 34, 18, 34, 16, 32, 16, 33, 18, 32, 16, 33, 17, 33, 16, 32, 16, 34, 16, 34, 17, 34, 16, 32, 18, 34, 16, 33, 18, 34, 16, 32, 16, 32, 17, 33, 17, 32, 17, 32, 18, 32, 17, 34, 18, 32, 17, 33, 16, 33, 17, 32, 17, 33, 17, 33, 17, 33, 17, 34, 17, 33, 17, 32, 18, 33, 17, 34, 18, 33, 17, 32, 16, 34, 17, 33, 17, 34, 17, 32, 18, 34, 17, 32, 16, 32, 18, 34, 16, 32, 18, 33, 17, 32, 18, 34, 18, 32, 18, 32, 17, 33, 18, 34, 17, 33, 18, 32, 18, 33, 18, 33, 18, 33, 18, 32, 16, 34, 18, 32, 17, 34, 18, 34, 17, 34, 18, 34, 18, 34, 18, 2, 33, 33, 16, 1, 34, 33, 16, 1, 33, 34, 16, 1, 32, 32, 17, 2, 32, 33, 17, 1, 33, 33, 17, 2, 34, 33, 17, 1, 32, 34, 17, 1, 34, 34, 17, 1, 33, 32, 18, 1, 32, 33, 18, 0, 34, 33, 18, 2, 33, 34, 18, 17, 32, 32, 16, 16, 33, 32, 16, 16, 32, 33, 16, 17, 33, 33, 16, 17, 32, 34, 16, 16, 33, 34, 16, 18, 33, 34, 16, 17, 34, 34, 16, 16, 32, 32, 17, 17, 32, 32, 17, 17, 33, 32, 17, 18, 33, 32, 17, 16, 34, 32, 17, 17, 32, 33, 17, 16, 33, 33, 17, 17, 33, 33, 17, 18, 33, 33, 17, 17, 34, 33, 17, 16, 32, 34, 17, 17, 33, 34, 17, 18, 34, 34, 17, 18, 32, 32, 18, 16, 33, 32, 18, 18, 34, 32, 18, 17, 33, 33, 18, 17, 32, 34, 18, 16, 33, 34, 18, 17, 33, 34, 18, 17, 34, 34, 18, 33, 32, 33, 16, 34, 33, 33, 16, 32, 34, 33, 16, 33, 32, 32, 17, 32, 33, 32, 17, 33, 34, 32, 17, 32, 32, 33, 17, 33, 33, 33, 17, 32, 34, 33, 17, 34, 34, 33, 17, 32, 33, 34, 17, 33, 33, 34, 17, 33, 34, 34, 17, 34, 33, 32, 18, 32, 33, 33, 18, 32, 34, 33, 18, 34, 34, 33, 18, 34, 33, 34, 18, 0, 0, 0, 32, 2, 0, 0, 32, 0, 2, 0, 32, 2, 2, 0, 32, 0, 0, 2, 32, 2, 0, 2, 32, 0, 2, 2, 32, 2, 2, 2, 32, 1, 1, 0, 33, 0, 0, 1, 33, 1, 0, 1, 33, 0, 1, 1, 33, 2, 1, 1, 33, 1, 2, 1, 33, 1, 1, 2, 33, 0, 0, 0, 34, 2, 0, 0, 34, 0, 2, 0, 34, 2, 2, 0, 34, 1, 1, 1, 34, 0, 0, 2, 34, 2, 0, 2, 34, 0, 2, 2, 34, 2, 2, 2, 34, 17, 1, 0, 32, 17, 0, 1, 32, 16, 1, 1, 32, 18, 1, 1, 32, 17, 2, 1, 32, 17, 1, 2, 32, 17, 0, 0, 33, 16, 1, 0, 33, 17, 2, 0, 33, 16, 0, 1, 33, 18, 0, 1, 33, 17, 1, 1, 33, 18, 1, 1, 33, 16, 2, 1, 33, 17, 2, 1, 33, 16, 1, 2, 33, 18, 1, 2, 33, 17, 2, 2, 33, 17, 1, 0, 34, 17, 2, 0, 34, 16, 1, 1, 34, 18, 1, 1, 34, 17, 2, 1, 34, 17, 1, 2, 34, 32, 0, 0, 32, 34, 0, 0, 32, 32, 2, 0, 32, 34, 2, 0, 32, 33, 1, 1, 32, 32, 0, 2, 32, 34, 0, 2, 32, 32, 2, 2, 32, 34, 2, 2, 32, 33, 0, 1, 33, 32, 1, 1, 33, 33, 2, 1, 33, 33, 1, 2, 33, 32, 0, 0, 34, 34, 0, 0, 34, 32, 2, 0, 34, 34, 2, 0, 34, 33, 1, 1, 34, 32, 0, 2, 34, 34, 0, 2, 34, 32, 2, 2, 34, 34, 2, 2, 34, 0, 17, 1, 32, 1, 18, 1, 32, 1, 16, 0, 33, 0, 17, 0, 33, 1, 16, 1, 33, 1, 17, 1, 33, 2, 18, 1, 33, 1, 16, 2, 33, 0, 17, 2, 33, 1, 18, 2, 33, 0, 17, 1, 34, 1, 18, 1, 34, 17, 16, 0, 32, 17, 18, 0, 32, 18, 16, 1, 32, 17, 17, 1, 32, 18, 18, 1, 32, 18, 17, 2, 32, 17, 18, 2, 32, 16, 16, 0, 33, 17, 16, 0, 33, 17, 17, 0, 33, 16, 18, 0, 33, 17, 16, 1, 33, 16, 17, 1, 33, 17, 17, 1, 33, 18, 17, 1, 33, 17, 18, 1, 33, 18, 18, 1, 33, 17, 17, 2, 33, 18, 17, 2, 33, 16, 18, 2, 33, 18, 18, 2, 33, 17, 16, 0, 34, 16, 17, 0, 34, 18, 17, 0, 34, 17, 18, 0, 34, 16, 16, 1, 34, 18, 16, 1, 34, 17, 17, 1, 34, 16, 18, 1, 34, 18, 17, 2, 34, 33, 16, 1, 32, 34, 17, 1, 32, 33, 18, 1, 32, 33, 17, 2, 32, 33, 16, 0, 33, 32, 17, 0, 33, 33, 18, 0, 33, 34, 18, 0, 33, 32, 16, 1, 33, 33, 17, 1, 33, 33, 18, 1, 33, 34, 18, 1, 33, 33, 16, 2, 33, 34, 17, 2, 33, 34, 18, 2, 33, 33, 17, 0, 34, 33, 16, 1, 34, 34, 18, 1, 34, 32, 17, 2, 34, 0, 32, 0, 32, 2, 32, 0, 32, 0, 34, 0, 32, 2, 34, 0, 32, 1, 33, 1, 32, 0, 32, 2, 32, 2, 32, 2, 32, 0, 34, 2, 32, 2, 34, 2, 32, 1, 32, 0, 33, 1, 33, 0, 33, 1, 32, 1, 33, 0, 33, 1, 33, 1, 34, 1, 33, 1, 33, 2, 33, 1, 34, 2, 33, 0, 32, 0, 34, 2, 32, 0, 34, 0, 34, 0, 34, 2, 34, 0, 34, 1, 33, 1, 34, 0, 32, 2, 34, 2, 32, 2, 34, 0, 34, 2, 34, 2, 34, 2, 34, 17, 33, 0, 32, 18, 33, 0, 32, 17, 32, 1, 32, 16, 33, 1, 32, 18, 33, 1, 32, 17, 33, 2, 32, 17, 32, 0, 33, 16, 33, 0, 33, 18, 33, 0, 33, 17, 34, 0, 33, 16, 32, 1, 33, 18, 32, 1, 33, 17, 33, 1, 33, 18, 34, 1, 33, 17, 32, 2, 33, 16, 33, 2, 33, 17, 33, 0, 34, 18, 33, 1, 34, 17, 34, 1, 34, 17, 33, 2, 34, 32, 32, 0, 32, 34, 32, 0, 32, 32, 34, 0, 32, 34, 34, 0, 32, 33, 33, 1, 32, 32, 32, 2, 32, 34, 32, 2, 32, 32, 34, 2, 32, 34, 34, 2, 32, 33, 33, 0, 33, 33, 32, 1, 33, 32, 33, 1, 33, 34, 33, 1, 33, 32, 32, 0, 34, 34, 32, 0, 34, 32, 34, 0, 34, 34, 34, 0, 34, 33, 33, 1, 34, 32, 32, 2, 34, 34, 32, 2, 34, 32, 34, 2, 34, 34, 34, 2, 34, 1, 1, 16, 32, 1, 0, 17, 32, 2, 1, 17, 32, 0, 2, 17, 32, 1, 2, 17, 32, 1, 1, 18, 32, 1, 0, 16, 33, 2, 1, 16, 33, 1, 2, 16, 33, 1, 1, 17, 33, 0, 2, 17, 33, 2, 2, 17, 33, 1, 2, 18, 33, 2, 2, 18, 33, 1, 1, 16, 34, 1, 0, 17, 34, 0, 1, 17, 34, 2, 1, 17, 34, 1, 2, 17, 34, 1, 1, 18, 34, 17, 0, 16, 32, 16, 1, 16, 32, 18, 1, 16, 32, 17, 2, 16, 32, 16, 0, 17, 32, 17, 1, 17, 32, 16, 2, 17, 32, 18, 2, 17, 32, 17, 0, 18, 32, 16, 1, 18, 32, 18, 1, 18, 32, 17, 2, 18, 32, 16, 0, 16, 33, 17, 1, 16, 33, 16, 0, 17, 33, 17, 0, 17, 33, 16, 1, 17, 33, 17, 1, 17, 33, 18, 1, 17, 33, 17, 2, 17, 33, 18, 0, 18, 33, 17, 1, 18, 33, 16, 1, 16, 34, 18, 1, 16, 34, 18, 0, 17, 34, 17, 1, 17, 34, 16, 2, 17, 34, 17, 0, 18, 34, 16, 1, 18, 34, 18, 1, 18, 34, 17, 2, 18, 34, 33, 1, 16, 32, 33, 0, 17, 32, 32, 1, 17, 32, 33, 2, 17, 32, 33, 1, 18, 32, 32, 1, 16, 33, 34, 1, 16, 33, 33, 2, 16, 33, 32, 0, 17, 33, 34, 0, 17, 33, 33, 1, 17, 33, 32, 2, 17, 33, 34, 1, 18, 33, 33, 2, 18, 33, 33, 1, 16, 34, 32, 1, 17, 34, 34, 1, 17, 34, 33, 2, 18, 34, 1, 16, 16, 32, 0, 17, 16, 32, 2, 17, 16, 32, 0, 16, 17, 32, 1, 17, 17, 32, 0, 18, 17, 32, 2, 17, 18, 32, 0, 16, 16, 33, 2, 18, 16, 33, 1, 16, 17, 33, 0, 17, 17, 33, 1, 17, 17, 33, 2, 17, 17, 33, 0, 18, 17, 33, 1, 18, 17, 33, 0, 16, 18, 33, 1, 16, 18, 33, 2, 16, 18, 33, 1, 17, 18, 33, 0, 17, 16, 34, 2, 17, 16, 34, 2, 16, 17, 34, 0, 17, 17, 34, 1, 17, 17, 34, 0, 18, 17, 34, 1, 16, 18, 34, 1, 18, 18, 34, 16, 16, 16, 32, 17, 17, 16, 32, 16, 18, 16, 32, 18, 18, 16, 32, 16, 16, 17, 32, 17, 16, 17, 32, 16, 17, 17, 32, 17, 17, 17, 32, 18, 17, 17, 32, 17, 18, 17, 32, 17, 16, 18, 32, 17, 17, 18, 32, 17, 18, 18, 32, 18, 18, 18, 32, 17, 16, 16, 33, 16, 17, 16, 33, 17, 17, 16, 33, 18, 17, 16, 33, 17, 18, 16, 33, 16, 16, 17, 33, 17, 16, 17, 33, 18, 16, 17, 33, 16, 17, 17, 33, 17, 17, 17, 33, 18, 17, 17, 33, 16, 18, 17, 33, 17, 18, 17, 33, 18, 18, 17, 33, 17, 16, 18, 33, 16, 17, 18, 33, 17, 17, 18, 33, 18, 17, 18, 33, 17, 18, 18, 33, 17, 16, 16, 34, 17, 17, 16, 34, 16, 18, 16, 34, 17, 16, 17, 34, 18, 16, 17, 34, 16, 17, 17, 34, 17, 17, 17, 34, 18, 17, 17, 34, 17, 18, 17, 34, 18, 18, 17, 34, 16, 16, 18, 34, 18, 16, 18, 34, 17, 17, 18, 34, 16, 18, 18, 34, 18, 18, 18, 34, 33, 16, 16, 32, 32, 17, 16, 32, 32, 16, 17, 32, 33, 17, 17, 32, 33, 18, 17, 32, 32, 16, 18, 32, 34, 17, 18, 32, 33, 18, 18, 32, 33, 17, 16, 33, 32, 18, 16, 33, 33, 18, 16, 33, 33, 16, 17, 33, 34, 16, 17, 33, 33, 17, 17, 33, 34, 17, 17, 33, 33, 18, 17, 33, 33, 17, 18, 33, 32, 18, 18, 33, 34, 16, 16, 34, 32, 17, 16, 34, 33, 18, 16, 34, 34, 18, 16, 34, 34, 16, 17, 34, 32, 17, 17, 34, 33, 17, 17, 34, 32, 17, 18, 34, 34, 17, 18, 34, 33, 18, 18, 34, 1, 33, 16, 32, 2, 33, 17, 32, 1, 34, 17, 32, 1, 33, 18, 32, 1, 32, 16, 33, 2, 33, 16, 33, 0, 32, 17, 33, 2, 32, 17, 33, 1, 33, 17, 33, 2, 33, 17, 33, 2, 34, 17, 33, 0, 33, 18, 33, 1, 33, 18, 33, 1, 33, 16, 34, 1, 32, 17, 34, 2, 33, 17, 34, 1, 34, 17, 34, 1, 33, 18, 34, 16, 33, 16, 32, 18, 33, 16, 32, 17, 34, 16, 32, 16, 32, 17, 32, 18, 32, 17, 32, 17, 33, 17, 32, 16, 34, 17, 32, 18, 34, 17, 32, 16, 32, 18, 32, 17, 32, 18, 32, 16, 33, 18, 32, 18, 33, 18, 32, 16, 32, 16, 33, 18, 32, 16, 33, 17, 33, 16, 33, 16, 34, 16, 33, 18, 34, 16, 33, 17, 32, 17, 33, 16, 33, 17, 33, 17, 33, 17, 33, 18, 33, 17, 33, 17, 34, 17, 33, 18, 32, 18, 33, 17, 33, 18, 33, 18, 33, 18, 33, 18, 34, 18, 33, 17, 32, 16, 34, 16, 33, 16, 34, 16, 32, 17, 34, 18, 32, 17, 34, 17, 33, 17, 34, 18, 34, 17, 34, 17, 32, 18, 34, 18, 33, 18, 34, 33, 33, 16, 32, 33, 33, 17, 32, 33, 33, 18, 32, 32, 33, 16, 33, 34, 33, 16, 33, 33, 34, 16, 33, 32, 32, 17, 33, 33, 33, 17, 33, 32, 34, 17, 33, 33, 32, 18, 33, 33, 33, 16, 34, 33, 32, 17, 34, 32, 33, 17, 34, 33, 33, 17, 34, 34, 33, 17, 34, 0, 0, 32, 32, 2, 0, 32, 32, 0, 2, 32, 32, 2, 2, 32, 32, 1, 1, 33, 32, 0, 0, 34, 32, 2, 0, 34, 32, 0, 2, 34, 32, 2, 2, 34, 32, 1, 1, 32, 33, 1, 0, 33, 33, 0, 1, 33, 33, 2, 1, 33, 33, 1, 2, 33, 33, 0, 0, 32, 34, 2, 0, 32, 34, 0, 2, 32, 34, 2, 2, 32, 34, 1, 1, 33, 34, 0, 0, 34, 34, 2, 0, 34, 34, 0, 2, 34, 34, 2, 2, 34, 34, 17, 1, 32, 32, 17, 2, 32, 32, 17, 0, 33, 32, 16, 1, 33, 32, 18, 1, 33, 32, 17, 2, 33, 32, 18, 2, 33, 32, 18, 1, 32, 33, 17, 2, 32, 33, 17, 0, 33, 33, 17, 1, 33, 33, 16, 2, 33, 33, 18, 2, 33, 33, 17, 0, 34, 33, 16, 1, 34, 33, 17, 1, 32, 34, 16, 0, 33, 34, 18, 0, 33, 34, 18, 1, 33, 34, 17, 2, 33, 34, 34, 0, 32, 32, 32, 2, 32, 32, 34, 2, 32, 32, 32, 0, 33, 32, 33, 2, 33, 32, 34, 0, 34, 32, 32, 2, 34, 32, 34, 2, 34, 32, 33, 1, 32, 33, 33, 0, 33, 33, 34, 1, 33, 33, 33, 2, 33, 33, 33, 1, 34, 33, 32, 0, 32, 34, 34, 0, 32, 34, 32, 2, 32, 34, 34, 2, 32, 34, 33, 1, 33, 34, 32, 0, 34, 34, 34, 0, 34, 34, 32, 2, 34, 34, 34, 2, 34, 34, 1, 18, 33, 32, 1, 17, 34, 32, 1, 16, 32, 33, 0, 17, 32, 33, 0, 16, 33, 33, 0, 17, 33, 33, 1, 17, 33, 33, 0, 18, 33, 33, 2, 18, 33, 33, 1, 16, 34, 33, 1, 17, 34, 33, 2, 17, 34, 33, 0, 18, 34, 33, 1, 18, 34, 33, 1, 17, 32, 34, 18, 17, 32, 32, 17, 18, 32, 32, 16, 16, 33, 32, 18, 16, 33, 32, 17, 17, 33, 32, 16, 18, 33, 32, 18, 17, 34, 32, 17, 18, 34, 32, 18, 16, 32, 33, 17, 17, 32, 33, 17, 16, 33, 33, 16, 17, 33, 33, 17, 17, 33, 33, 18, 17, 33, 33, 17, 18, 33, 33, 17, 17, 34, 33, 18, 18, 34, 33, 17, 16, 32, 34, 16, 17, 32, 34, 17, 17, 32, 34, 18, 17, 32, 34, 17, 18, 32, 34, 18, 16, 33, 34, 17, 17, 33, 34, 16, 18, 33, 34, 33, 17, 32, 32, 33, 16, 33, 32, 34, 17, 33, 32, 34, 18, 33, 32, 33, 16, 34, 32, 33, 17, 34, 32, 32, 17, 32, 33, 34, 17, 32, 33, 34, 18, 32, 33, 34, 16, 33, 33, 33, 17, 33, 33, 34, 17, 33, 33, 32, 18, 33, 33, 32, 16, 34, 33, 34, 16, 34, 33, 34, 17, 32, 34, 32, 16, 33, 34, 33, 17, 33, 34, 34, 17, 33, 34, 33, 18, 33, 34, 33, 16, 34, 34, 32, 17, 34, 34, 34, 17, 34, 34, 0, 32, 32, 32, 2, 32, 32, 32, 0, 34, 32, 32, 2, 34, 32, 32, 0, 32, 34, 32, 2, 32, 34, 32, 0, 34, 34, 32, 2, 34, 34, 32, 1, 32, 33, 33, 0, 33, 33, 33, 2, 33, 33, 33, 1, 34, 33, 33, 0, 32, 32, 34, 2, 32, 32, 34, 0, 34, 32, 34, 2, 34, 32, 34, 1, 33, 33, 34, 0, 32, 34, 34, 2, 32, 34, 34, 0, 34, 34, 34, 2, 34, 34, 34, 17, 33, 32, 32, 16, 33, 33, 32, 17, 34, 33, 32, 17, 32, 34, 32, 17, 33, 34, 32, 17, 32, 32, 33, 16, 32, 33, 33, 17, 33, 33, 33, 18, 34, 33, 33, 17, 32, 34, 33, 18, 33, 34, 33, 17, 34, 34, 33, 16, 32, 33, 34, 18, 33, 33, 34, 32, 32, 32, 32, 34, 32, 32, 32, 32, 34, 32, 32, 34, 34, 32, 32, 32, 32, 34, 32, 34, 32, 34, 32, 32, 34, 34, 32, 34, 34, 34, 32, 33, 32, 33, 33, 32, 33, 33, 33, 34, 33, 33, 33, 32, 32, 32, 34, 34, 32, 32, 34, 32, 34, 32, 34, 34, 34, 32, 34, 33, 33, 33, 34, 32, 32, 34, 34, 34, 32, 34, 34, 32, 34, 34, 34, 34, 34, 34, 34};













.entry _Z8norm_f32ILi32EEvPKfPfixxxf(
.param .u64 _Z8norm_f32ILi32EEvPKfPfixxxf_param_0,
.param .u64 _Z8norm_f32ILi32EEvPKfPfixxxf_param_1,
.param .u32 _Z8norm_f32ILi32EEvPKfPfixxxf_param_2,
.param .u64 _Z8norm_f32ILi32EEvPKfPfixxxf_param_3,
.param .u64 _Z8norm_f32ILi32EEvPKfPfixxxf_param_4,
.param .u64 _Z8norm_f32ILi32EEvPKfPfixxxf_param_5,
.param .f32 _Z8norm_f32ILi32EEvPKfPfixxxf_param_6
)
{
.reg .pred %p<21>;
.reg .f32 %f<86>;
.reg .b32 %r<83>;
.reg .b64 %rd<82>;


ld.param.u64 %rd23, [_Z8norm_f32ILi32EEvPKfPfixxxf_param_0];
ld.param.u64 %rd24, [_Z8norm_f32ILi32EEvPKfPfixxxf_param_1];
ld.param.u32 %r23, [_Z8norm_f32ILi32EEvPKfPfixxxf_param_2];
ld.param.u64 %rd25, [_Z8norm_f32ILi32EEvPKfPfixxxf_param_3];
ld.param.u64 %rd26, [_Z8norm_f32ILi32EEvPKfPfixxxf_param_4];
ld.param.u64 %rd27, [_Z8norm_f32ILi32EEvPKfPfixxxf_param_5];
ld.param.f32 %f17, [_Z8norm_f32ILi32EEvPKfPfixxxf_param_6];
mov.u32 %r24, %nctaid.x;
mov.u32 %r25, %ctaid.x;
cvt.s64.s32 %rd1, %r25;
mov.u32 %r26, %ctaid.z;
mov.u32 %r27, %nctaid.y;
mov.u32 %r28, %ctaid.y;
mad.lo.s32 %r29, %r26, %r27, %r28;
mad.lo.s32 %r30, %r29, %r24, %r25;
mul.lo.s32 %r31, %r30, %r23;
cvt.s64.s32 %rd2, %r31;
mov.u32 %r81, %tid.x;
setp.ge.s32 %p1, %r81, %r23;
mov.f32 %f84, 0f00000000;
mov.f32 %f85, %f84;
@%p1 bra $L__BB0_7;

mov.u32 %r77, %tid.x;
not.b32 %r33, %r77;
add.s32 %r2, %r33, %r23;
shr.u32 %r34, %r2, 5;
add.s32 %r35, %r34, 1;
and.b32 %r76, %r35, 3;
setp.eq.s32 %p2, %r76, 0;
mov.f32 %f85, 0f00000000;
mov.f32 %f84, %f85;
@%p2 bra $L__BB0_4;

cvt.s64.s32 %rd28, %r26;
mul.lo.s64 %rd29, %rd27, %rd28;
cvt.s64.s32 %rd30, %r28;
mul.lo.s64 %rd31, %rd26, %rd30;
add.s64 %rd32, %rd29, %rd31;
mul.lo.s64 %rd33, %rd25, %rd1;
add.s64 %rd34, %rd32, %rd33;
mov.u32 %r77, %tid.x;
cvt.s64.s32 %rd35, %r77;
add.s64 %rd36, %rd34, %rd35;
cvta.to.global.u64 %rd37, %rd23;
shl.b64 %rd38, %rd36, 2;
add.s64 %rd76, %rd37, %rd38;
mov.f32 %f85, 0f00000000;

$L__BB0_3:
.pragma "nounroll";
ld.global.f32 %f25, [%rd76];
add.ftz.f32 %f85, %f85, %f25;
fma.rn.ftz.f32 %f84, %f25, %f25, %f84;
add.s32 %r77, %r77, 32;
add.s64 %rd76, %rd76, 128;
add.s32 %r76, %r76, -1;
setp.ne.s32 %p3, %r76, 0;
@%p3 bra $L__BB0_3;

$L__BB0_4:
setp.lt.u32 %p4, %r2, 96;
@%p4 bra $L__BB0_7;

cvt.s64.s32 %rd39, %r26;
mul.lo.s64 %rd40, %rd27, %rd39;
cvt.s64.s32 %rd41, %r28;
mul.lo.s64 %rd42, %rd26, %rd41;
add.s64 %rd43, %rd40, %rd42;
mul.lo.s64 %rd44, %rd25, %rd1;
add.s64 %rd45, %rd43, %rd44;
cvta.to.global.u64 %rd46, %rd23;
shl.b64 %rd47, %rd45, 2;
add.s64 %rd77, %rd46, %rd47;
mul.wide.s32 %rd7, %r77, 4;

$L__BB0_6:
add.s64 %rd48, %rd77, %rd7;
ld.global.f32 %f26, [%rd48];
add.ftz.f32 %f27, %f85, %f26;
fma.rn.ftz.f32 %f28, %f26, %f26, %f84;
ld.global.f32 %f29, [%rd48+128];
add.ftz.f32 %f30, %f27, %f29;
fma.rn.ftz.f32 %f31, %f29, %f29, %f28;
ld.global.f32 %f32, [%rd48+256];
add.ftz.f32 %f33, %f30, %f32;
fma.rn.ftz.f32 %f34, %f32, %f32, %f31;
ld.global.f32 %f35, [%rd48+384];
add.ftz.f32 %f85, %f33, %f35;
fma.rn.ftz.f32 %f84, %f35, %f35, %f34;
add.s64 %rd77, %rd77, 512;
add.s32 %r77, %r77, 128;
setp.lt.s32 %p5, %r77, %r23;
@%p5 bra $L__BB0_6;

$L__BB0_7:
mov.b32 %r41, %f85;
mov.u32 %r42, 31;
mov.u32 %r43, 16;
mov.u32 %r44, -1;
shfl.sync.bfly.b32 %r45|%p7, %r41, %r43, %r42, %r44;
mov.b32 %f36, %r45;
add.ftz.f32 %f37, %f85, %f36;
mov.b32 %r46, %f84;
shfl.sync.bfly.b32 %r47|%p8, %r46, %r43, %r42, %r44;
mov.b32 %f38, %r47;
add.ftz.f32 %f39, %f84, %f38;
mov.b32 %r48, %f37;
mov.u32 %r49, 8;
shfl.sync.bfly.b32 %r50|%p9, %r48, %r49, %r42, %r44;
mov.b32 %f40, %r50;
add.ftz.f32 %f41, %f37, %f40;
mov.b32 %r51, %f39;
shfl.sync.bfly.b32 %r52|%p10, %r51, %r49, %r42, %r44;
mov.b32 %f42, %r52;
add.ftz.f32 %f43, %f39, %f42;
mov.b32 %r53, %f41;
mov.u32 %r54, 4;
shfl.sync.bfly.b32 %r55|%p11, %r53, %r54, %r42, %r44;
mov.b32 %f44, %r55;
add.ftz.f32 %f45, %f41, %f44;
mov.b32 %r56, %f43;
shfl.sync.bfly.b32 %r57|%p12, %r56, %r54, %r42, %r44;
mov.b32 %f46, %r57;
add.ftz.f32 %f47, %f43, %f46;
mov.b32 %r58, %f45;
mov.u32 %r59, 2;
shfl.sync.bfly.b32 %r60|%p13, %r58, %r59, %r42, %r44;
mov.b32 %f48, %r60;
add.ftz.f32 %f49, %f45, %f48;
mov.b32 %r61, %f47;
shfl.sync.bfly.b32 %r62|%p14, %r61, %r59, %r42, %r44;
mov.b32 %f50, %r62;
add.ftz.f32 %f51, %f47, %f50;
mov.b32 %r63, %f49;
mov.u32 %r64, 1;
shfl.sync.bfly.b32 %r65|%p15, %r63, %r64, %r42, %r44;
mov.b32 %f52, %r65;
add.ftz.f32 %f53, %f49, %f52;
mov.b32 %r66, %f51;
shfl.sync.bfly.b32 %r67|%p16, %r66, %r64, %r42, %r44;
mov.b32 %f54, %r67;
add.ftz.f32 %f55, %f51, %f54;
cvt.rn.f32.s32 %f56, %r23;
div.approx.ftz.f32 %f15, %f53, %f56;
div.approx.ftz.f32 %f57, %f55, %f56;
mul.ftz.f32 %f58, %f15, %f15;
sub.ftz.f32 %f59, %f57, %f58;
add.ftz.f32 %f60, %f59, %f17;
rsqrt.approx.ftz.f32 %f16, %f60;
@%p1 bra $L__BB0_14;

not.b32 %r68, %r81;
add.s32 %r13, %r68, %r23;
shr.u32 %r69, %r13, 5;
add.s32 %r70, %r69, 1;
and.b32 %r80, %r70, 3;
setp.eq.s32 %p17, %r80, 0;
@%p17 bra $L__BB0_11;

mov.u32 %r81, %tid.x;
cvt.s64.s32 %rd49, %r81;
add.s64 %rd50, %rd49, %rd2;
cvta.to.global.u64 %rd51, %rd24;
shl.b64 %rd52, %rd50, 2;
add.s64 %rd79, %rd51, %rd52;
cvt.s64.s32 %rd53, %r26;
mul.lo.s64 %rd54, %rd27, %rd53;
cvt.s64.s32 %rd55, %r28;
mul.lo.s64 %rd56, %rd26, %rd55;
add.s64 %rd57, %rd54, %rd56;
mul.lo.s64 %rd58, %rd25, %rd1;
add.s64 %rd59, %rd57, %rd58;
add.s64 %rd60, %rd59, %rd49;
cvta.to.global.u64 %rd61, %rd23;
shl.b64 %rd62, %rd60, 2;
add.s64 %rd78, %rd61, %rd62;

$L__BB0_10:
.pragma "nounroll";
ld.global.f32 %f61, [%rd78];
sub.ftz.f32 %f62, %f61, %f15;
mul.ftz.f32 %f63, %f16, %f62;
st.global.f32 [%rd79], %f63;
add.s32 %r81, %r81, 32;
add.s64 %rd79, %rd79, 128;
add.s64 %rd78, %rd78, 128;
add.s32 %r80, %r80, -1;
setp.ne.s32 %p18, %r80, 0;
@%p18 bra $L__BB0_10;

$L__BB0_11:
setp.lt.u32 %p19, %r13, 96;
@%p19 bra $L__BB0_14;

cvta.to.global.u64 %rd63, %rd24;
shl.b64 %rd64, %rd2, 2;
add.s64 %rd81, %rd63, %rd64;
cvt.s64.s32 %rd65, %r26;
mul.lo.s64 %rd66, %rd27, %rd65;
cvt.s64.s32 %rd67, %r28;
mul.lo.s64 %rd68, %rd26, %rd67;
add.s64 %rd69, %rd66, %rd68;
mul.lo.s64 %rd70, %rd25, %rd1;
add.s64 %rd71, %rd69, %rd70;
cvta.to.global.u64 %rd72, %rd23;
shl.b64 %rd73, %rd71, 2;
add.s64 %rd80, %rd72, %rd73;
mul.wide.s32 %rd18, %r81, 4;

$L__BB0_13:
add.s64 %rd74, %rd80, %rd18;
ld.global.f32 %f64, [%rd74];
sub.ftz.f32 %f65, %f64, %f15;
mul.ftz.f32 %f66, %f16, %f65;
add.s64 %rd75, %rd81, %rd18;
st.global.f32 [%rd75], %f66;
ld.global.f32 %f67, [%rd74+128];
sub.ftz.f32 %f68, %f67, %f15;
mul.ftz.f32 %f69, %f16, %f68;
st.global.f32 [%rd75+128], %f69;
ld.global.f32 %f70, [%rd74+256];
sub.ftz.f32 %f71, %f70, %f15;
mul.ftz.f32 %f72, %f16, %f71;
st.global.f32 [%rd75+256], %f72;
ld.global.f32 %f73, [%rd74+384];
sub.ftz.f32 %f74, %f73, %f15;
mul.ftz.f32 %f75, %f16, %f74;
st.global.f32 [%rd75+384], %f75;
add.s64 %rd81, %rd81, 512;
add.s64 %rd80, %rd80, 512;
add.s32 %r81, %r81, 128;
setp.lt.s32 %p20, %r81, %r23;
@%p20 bra $L__BB0_13;

$L__BB0_14:
ret;

}
.entry _Z8norm_f32ILi1024EEvPKfPfixxxf(
.param .u64 _Z8norm_f32ILi1024EEvPKfPfixxxf_param_0,
.param .u64 _Z8norm_f32ILi1024EEvPKfPfixxxf_param_1,
.param .u32 _Z8norm_f32ILi1024EEvPKfPfixxxf_param_2,
.param .u64 _Z8norm_f32ILi1024EEvPKfPfixxxf_param_3,
.param .u64 _Z8norm_f32ILi1024EEvPKfPfixxxf_param_4,
.param .u64 _Z8norm_f32ILi1024EEvPKfPfixxxf_param_5,
.param .f32 _Z8norm_f32ILi1024EEvPKfPfixxxf_param_6
)
{
.reg .pred %p<32>;
.reg .f32 %f<110>;
.reg .b32 %r<105>;
.reg .b64 %rd<72>;

.shared .align 8 .b8 _ZZ8norm_f32ILi1024EEvPKfPfixxxfE5s_sum[256];

ld.param.u64 %rd30, [_Z8norm_f32ILi1024EEvPKfPfixxxf_param_0];
ld.param.u64 %rd31, [_Z8norm_f32ILi1024EEvPKfPfixxxf_param_1];
ld.param.u32 %r21, [_Z8norm_f32ILi1024EEvPKfPfixxxf_param_2];
ld.param.u64 %rd27, [_Z8norm_f32ILi1024EEvPKfPfixxxf_param_3];
ld.param.u64 %rd28, [_Z8norm_f32ILi1024EEvPKfPfixxxf_param_4];
ld.param.u64 %rd29, [_Z8norm_f32ILi1024EEvPKfPfixxxf_param_5];
ld.param.f32 %f19, [_Z8norm_f32ILi1024EEvPKfPfixxxf_param_6];
cvta.to.global.u64 %rd1, %rd31;
cvta.to.global.u64 %rd2, %rd30;
mov.u32 %r22, %ctaid.z;
cvt.s64.s32 %rd3, %r22;
mov.u32 %r23, %ctaid.y;
cvt.s64.s32 %rd4, %r23;
mov.u32 %r24, %ctaid.x;
cvt.s64.s32 %rd5, %r24;
mov.u32 %r25, %nctaid.y;
mad.lo.s32 %r26, %r22, %r25, %r23;
mov.u32 %r27, %nctaid.x;
mad.lo.s32 %r28, %r26, %r27, %r24;
mul.lo.s32 %r29, %r28, %r21;
cvt.s64.s32 %rd6, %r29;
mov.u32 %r103, %tid.x;
setp.ge.s32 %p1, %r103, %r21;
mov.f32 %f108, 0f00000000;
mov.f32 %f109, %f108;
@%p1 bra $L__BB1_7;

not.b32 %r30, %r103;
add.s32 %r2, %r30, %r21;
shr.u32 %r31, %r2, 10;
add.s32 %r32, %r31, 1;
and.b32 %r98, %r32, 3;
setp.eq.s32 %p2, %r98, 0;
mov.f32 %f109, 0f00000000;
mov.u32 %r99, %r103;
mov.f32 %f108, %f109;
@%p2 bra $L__BB1_4;

mul.lo.s64 %rd32, %rd29, %rd3;
mul.lo.s64 %rd33, %rd28, %rd4;
add.s64 %rd34, %rd32, %rd33;
mul.lo.s64 %rd35, %rd27, %rd5;
add.s64 %rd36, %rd34, %rd35;
cvt.s64.s32 %rd37, %r103;
add.s64 %rd38, %rd36, %rd37;
shl.b64 %rd39, %rd38, 2;
add.s64 %rd66, %rd2, %rd39;
mov.f32 %f109, 0f00000000;
mov.u32 %r99, %r103;

$L__BB1_3:
.pragma "nounroll";
ld.global.f32 %f27, [%rd66];
add.ftz.f32 %f109, %f109, %f27;
fma.rn.ftz.f32 %f108, %f27, %f27, %f108;
add.s32 %r99, %r99, 1024;
add.s64 %rd66, %rd66, 4096;
add.s32 %r98, %r98, -1;
setp.ne.s32 %p3, %r98, 0;
@%p3 bra $L__BB1_3;

$L__BB1_4:
setp.lt.u32 %p4, %r2, 3072;
@%p4 bra $L__BB1_7;

mul.lo.s64 %rd40, %rd29, %rd3;
mul.lo.s64 %rd41, %rd28, %rd4;
add.s64 %rd42, %rd40, %rd41;
mul.lo.s64 %rd43, %rd27, %rd5;
add.s64 %rd44, %rd42, %rd43;
shl.b64 %rd45, %rd44, 2;
add.s64 %rd67, %rd2, %rd45;
mul.wide.s32 %rd11, %r99, 4;

$L__BB1_6:
add.s64 %rd46, %rd67, %rd11;
ld.global.f32 %f28, [%rd46];
add.ftz.f32 %f29, %f109, %f28;
fma.rn.ftz.f32 %f30, %f28, %f28, %f108;
ld.global.f32 %f31, [%rd46+4096];
add.ftz.f32 %f32, %f29, %f31;
fma.rn.ftz.f32 %f33, %f31, %f31, %f30;
ld.global.f32 %f34, [%rd46+8192];
add.ftz.f32 %f35, %f32, %f34;
fma.rn.ftz.f32 %f36, %f34, %f34, %f33;
ld.global.f32 %f37, [%rd46+12288];
add.ftz.f32 %f109, %f35, %f37;
fma.rn.ftz.f32 %f108, %f37, %f37, %f36;
add.s64 %rd67, %rd67, 16384;
add.s32 %r99, %r99, 4096;
setp.lt.s32 %p5, %r99, %r21;
@%p5 bra $L__BB1_6;

$L__BB1_7:
mov.b32 %r33, %f109;
mov.u32 %r34, 31;
mov.u32 %r35, 16;
mov.u32 %r36, -1;
shfl.sync.bfly.b32 %r37|%p6, %r33, %r35, %r34, %r36;
mov.b32 %f38, %r37;
add.ftz.f32 %f39, %f109, %f38;
mov.b32 %r38, %f108;
shfl.sync.bfly.b32 %r39|%p7, %r38, %r35, %r34, %r36;
mov.b32 %f40, %r39;
add.ftz.f32 %f41, %f108, %f40;
mov.b32 %r40, %f39;
mov.u32 %r41, 8;
shfl.sync.bfly.b32 %r42|%p8, %r40, %r41, %r34, %r36;
mov.b32 %f42, %r42;
add.ftz.f32 %f43, %f39, %f42;
mov.b32 %r43, %f41;
shfl.sync.bfly.b32 %r44|%p9, %r43, %r41, %r34, %r36;
mov.b32 %f44, %r44;
add.ftz.f32 %f45, %f41, %f44;
mov.b32 %r45, %f43;
mov.u32 %r46, 4;
shfl.sync.bfly.b32 %r47|%p10, %r45, %r46, %r34, %r36;
mov.b32 %f46, %r47;
add.ftz.f32 %f47, %f43, %f46;
mov.b32 %r48, %f45;
shfl.sync.bfly.b32 %r49|%p11, %r48, %r46, %r34, %r36;
mov.b32 %f48, %r49;
add.ftz.f32 %f49, %f45, %f48;
mov.b32 %r50, %f47;
mov.u32 %r51, 2;
shfl.sync.bfly.b32 %r52|%p12, %r50, %r51, %r34, %r36;
mov.b32 %f50, %r52;
add.ftz.f32 %f51, %f47, %f50;
mov.b32 %r53, %f49;
shfl.sync.bfly.b32 %r54|%p13, %r53, %r51, %r34, %r36;
mov.b32 %f52, %r54;
add.ftz.f32 %f53, %f49, %f52;
mov.b32 %r55, %f51;
mov.u32 %r56, 1;
shfl.sync.bfly.b32 %r57|%p14, %r55, %r56, %r34, %r36;
mov.b32 %f54, %r57;
add.ftz.f32 %f15, %f51, %f54;
mov.b32 %r58, %f53;
shfl.sync.bfly.b32 %r59|%p15, %r58, %r56, %r34, %r36;
mov.b32 %f55, %r59;
add.ftz.f32 %f16, %f53, %f55;
and.b32 %r11, %r103, 31;
setp.ne.s32 %p16, %r11, 0;
@%p16 bra $L__BB1_9;

shr.u32 %r60, %r103, 2;
and.b32 %r61, %r60, 1073741816;
mov.u32 %r62, _ZZ8norm_f32ILi1024EEvPKfPfixxxfE5s_sum;
add.s32 %r63, %r62, %r61;
st.shared.v2.f32 [%r63], {%f15, %f16};

$L__BB1_9:
bar.sync 0;
shl.b32 %r64, %r11, 3;
mov.u32 %r65, _ZZ8norm_f32ILi1024EEvPKfPfixxxfE5s_sum;
add.s32 %r66, %r65, %r64;
ld.shared.v2.f32 {%f56, %f57}, [%r66];
mov.b32 %r68, %f56;
shfl.sync.bfly.b32 %r72|%p18, %r68, %r35, %r34, %r36;
mov.b32 %f60, %r72;
add.ftz.f32 %f61, %f56, %f60;
mov.b32 %r73, %f57;
shfl.sync.bfly.b32 %r74|%p19, %r73, %r35, %r34, %r36;
mov.b32 %f62, %r74;
add.ftz.f32 %f63, %f57, %f62;
mov.b32 %r75, %f61;
shfl.sync.bfly.b32 %r77|%p20, %r75, %r41, %r34, %r36;
mov.b32 %f64, %r77;
add.ftz.f32 %f65, %f61, %f64;
mov.b32 %r78, %f63;
shfl.sync.bfly.b32 %r79|%p21, %r78, %r41, %r34, %r36;
mov.b32 %f66, %r79;
add.ftz.f32 %f67, %f63, %f66;
mov.b32 %r80, %f65;
shfl.sync.bfly.b32 %r82|%p22, %r80, %r46, %r34, %r36;
mov.b32 %f68, %r82;
add.ftz.f32 %f69, %f65, %f68;
mov.b32 %r83, %f67;
shfl.sync.bfly.b32 %r84|%p23, %r83, %r46, %r34, %r36;
mov.b32 %f70, %r84;
add.ftz.f32 %f71, %f67, %f70;
mov.b32 %r85, %f69;
shfl.sync.bfly.b32 %r87|%p24, %r85, %r51, %r34, %r36;
mov.b32 %f72, %r87;
add.ftz.f32 %f73, %f69, %f72;
mov.b32 %r88, %f71;
shfl.sync.bfly.b32 %r89|%p25, %r88, %r51, %r34, %r36;
mov.b32 %f74, %r89;
add.ftz.f32 %f75, %f71, %f74;
mov.b32 %r90, %f73;
shfl.sync.bfly.b32 %r91|%p26, %r90, %r56, %r34, %r36;
mov.b32 %f76, %r91;
add.ftz.f32 %f77, %f73, %f76;
mov.b32 %r92, %f75;
shfl.sync.bfly.b32 %r93|%p27, %r92, %r56, %r34, %r36;
mov.b32 %f78, %r93;
add.ftz.f32 %f79, %f75, %f78;
cvt.rn.f32.s32 %f80, %r21;
div.approx.ftz.f32 %f17, %f77, %f80;
div.approx.ftz.f32 %f81, %f79, %f80;
mul.ftz.f32 %f82, %f17, %f17;
sub.ftz.f32 %f83, %f81, %f82;
add.ftz.f32 %f84, %f83, %f19;
rsqrt.approx.ftz.f32 %f18, %f84;
@%p1 bra $L__BB1_16;

not.b32 %r94, %r103;
add.s32 %r12, %r94, %r21;
shr.u32 %r95, %r12, 10;
add.s32 %r96, %r95, 1;
and.b32 %r102, %r96, 3;
setp.eq.s32 %p28, %r102, 0;
@%p28 bra $L__BB1_13;

cvt.s64.s32 %rd47, %r103;
add.s64 %rd48, %rd47, %rd6;
shl.b64 %rd49, %rd48, 2;
add.s64 %rd69, %rd1, %rd49;
mul.lo.s64 %rd50, %rd28, %rd4;
mul.lo.s64 %rd51, %rd29, %rd3;
add.s64 %rd52, %rd51, %rd50;
mul.lo.s64 %rd53, %rd27, %rd5;
add.s64 %rd54, %rd52, %rd53;
add.s64 %rd55, %rd54, %rd47;
shl.b64 %rd56, %rd55, 2;
add.s64 %rd68, %rd2, %rd56;

$L__BB1_12:
.pragma "nounroll";
ld.global.f32 %f85, [%rd68];
sub.ftz.f32 %f86, %f85, %f17;
mul.ftz.f32 %f87, %f18, %f86;
st.global.f32 [%rd69], %f87;
add.s32 %r103, %r103, 1024;
add.s64 %rd69, %rd69, 4096;
add.s64 %rd68, %rd68, 4096;
add.s32 %r102, %r102, -1;
setp.ne.s32 %p29, %r102, 0;
@%p29 bra $L__BB1_12;

$L__BB1_13:
setp.lt.u32 %p30, %r12, 3072;
@%p30 bra $L__BB1_16;

shl.b64 %rd57, %rd6, 2;
add.s64 %rd71, %rd1, %rd57;
mul.lo.s64 %rd58, %rd28, %rd4;
mul.lo.s64 %rd59, %rd29, %rd3;
add.s64 %rd60, %rd59, %rd58;
mul.lo.s64 %rd61, %rd27, %rd5;
add.s64 %rd62, %rd60, %rd61;
shl.b64 %rd63, %rd62, 2;
add.s64 %rd70, %rd2, %rd63;
mul.wide.s32 %rd22, %r103, 4;

$L__BB1_15:
add.s64 %rd64, %rd70, %rd22;
ld.global.f32 %f88, [%rd64];
sub.ftz.f32 %f89, %f88, %f17;
mul.ftz.f32 %f90, %f18, %f89;
add.s64 %rd65, %rd71, %rd22;
st.global.f32 [%rd65], %f90;
ld.global.f32 %f91, [%rd64+4096];
sub.ftz.f32 %f92, %f91, %f17;
mul.ftz.f32 %f93, %f18, %f92;
st.global.f32 [%rd65+4096], %f93;
ld.global.f32 %f94, [%rd64+8192];
sub.ftz.f32 %f95, %f94, %f17;
mul.ftz.f32 %f96, %f18, %f95;
st.global.f32 [%rd65+8192], %f96;
ld.global.f32 %f97, [%rd64+12288];
sub.ftz.f32 %f98, %f97, %f17;
mul.ftz.f32 %f99, %f18, %f98;
st.global.f32 [%rd65+12288], %f99;
add.s64 %rd71, %rd71, 16384;
add.s64 %rd70, %rd70, 16384;
add.s32 %r103, %r103, 4096;
setp.lt.s32 %p31, %r103, %r21;
@%p31 bra $L__BB1_15;

$L__BB1_16:
ret;

}
.entry _Z14group_norm_f32ILi32EEvPKfPfiif(
.param .u64 _Z14group_norm_f32ILi32EEvPKfPfiif_param_0,
.param .u64 _Z14group_norm_f32ILi32EEvPKfPfiif_param_1,
.param .u32 _Z14group_norm_f32ILi32EEvPKfPfiif_param_2,
.param .u32 _Z14group_norm_f32ILi32EEvPKfPfiif_param_3,
.param .f32 _Z14group_norm_f32ILi32EEvPKfPfiif_param_4
)
{
.reg .pred %p<26>;
.reg .f32 %f<90>;
.reg .b32 %r<104>;
.reg .b64 %rd<46>;


ld.param.u64 %rd27, [_Z14group_norm_f32ILi32EEvPKfPfiif_param_0];
ld.param.u64 %rd28, [_Z14group_norm_f32ILi32EEvPKfPfiif_param_1];
ld.param.u32 %r32, [_Z14group_norm_f32ILi32EEvPKfPfiif_param_2];
ld.param.u32 %r33, [_Z14group_norm_f32ILi32EEvPKfPfiif_param_3];
ld.param.f32 %f18, [_Z14group_norm_f32ILi32EEvPKfPfiif_param_4];
cvta.to.global.u64 %rd1, %rd27;
cvta.to.global.u64 %rd2, %rd28;
mov.u32 %r34, %ctaid.x;
mul.lo.s32 %r1, %r34, %r32;
mov.u32 %r2, %tid.x;
add.s32 %r102, %r1, %r2;
add.s32 %r35, %r1, %r32;
min.u32 %r4, %r35, %r33;
setp.ge.s32 %p1, %r102, %r4;
mov.f32 %f89, 0f00000000;
mov.f32 %f84, %f89;
@%p1 bra $L__BB2_7;

mov.u32 %r36, -2;
sub.s32 %r37, %r36, %r1;
sub.s32 %r38, %r37, %r2;
not.b32 %r39, %r4;
sub.s32 %r5, %r38, %r39;
shr.u32 %r40, %r5, 5;
add.s32 %r41, %r40, 1;
and.b32 %r93, %r41, 3;
setp.eq.s32 %p2, %r93, 0;
mov.f32 %f84, 0f00000000;
mov.u32 %r94, %r102;
@%p2 bra $L__BB2_4;

mul.wide.s32 %rd29, %r102, 4;
add.s64 %rd38, %rd1, %rd29;
mov.f32 %f84, 0f00000000;
mov.u32 %r94, %r102;

$L__BB2_3:
.pragma "nounroll";
ld.global.f32 %f23, [%rd38];
add.ftz.f32 %f84, %f84, %f23;
add.s32 %r94, %r94, 32;
add.s64 %rd38, %rd38, 128;
add.s32 %r93, %r93, -1;
setp.ne.s32 %p3, %r93, 0;
@%p3 bra $L__BB2_3;

$L__BB2_4:
setp.lt.u32 %p4, %r5, 96;
@%p4 bra $L__BB2_7;

mul.wide.s32 %rd30, %r94, 4;
add.s64 %rd31, %rd1, %rd30;
add.s64 %rd39, %rd31, 256;

$L__BB2_6:
ld.global.f32 %f24, [%rd39+-256];
add.ftz.f32 %f25, %f84, %f24;
ld.global.f32 %f26, [%rd39+-128];
add.ftz.f32 %f27, %f25, %f26;
ld.global.f32 %f28, [%rd39];
add.ftz.f32 %f29, %f27, %f28;
ld.global.f32 %f30, [%rd39+128];
add.ftz.f32 %f84, %f29, %f30;
add.s64 %rd39, %rd39, 512;
add.s32 %r94, %r94, 128;
setp.lt.s32 %p5, %r94, %r4;
@%p5 bra $L__BB2_6;

$L__BB2_7:
mov.b32 %r42, %f84;
mov.u32 %r43, 31;
mov.u32 %r44, 16;
mov.u32 %r45, -1;
shfl.sync.bfly.b32 %r46|%p6, %r42, %r44, %r43, %r45;
mov.b32 %f32, %r46;
add.ftz.f32 %f33, %f84, %f32;
mov.b32 %r47, %f33;
mov.u32 %r48, 8;
shfl.sync.bfly.b32 %r49|%p7, %r47, %r48, %r43, %r45;
mov.b32 %f34, %r49;
add.ftz.f32 %f35, %f33, %f34;
mov.b32 %r50, %f35;
mov.u32 %r51, 4;
shfl.sync.bfly.b32 %r52|%p8, %r50, %r51, %r43, %r45;
mov.b32 %f36, %r52;
add.ftz.f32 %f37, %f35, %f36;
mov.b32 %r53, %f37;
mov.u32 %r54, 2;
shfl.sync.bfly.b32 %r55|%p9, %r53, %r54, %r43, %r45;
mov.b32 %f38, %r55;
add.ftz.f32 %f39, %f37, %f38;
mov.b32 %r56, %f39;
mov.u32 %r57, 1;
shfl.sync.bfly.b32 %r58|%p10, %r56, %r57, %r43, %r45;
mov.b32 %f40, %r58;
add.ftz.f32 %f41, %f39, %f40;
cvt.rn.f32.s32 %f8, %r32;
div.approx.ftz.f32 %f9, %f41, %f8;
@%p1 bra $L__BB2_14;

mov.u32 %r59, -2;
sub.s32 %r60, %r59, %r1;
sub.s32 %r62, %r60, %r2;
not.b32 %r63, %r4;
sub.s32 %r14, %r62, %r63;
shr.u32 %r64, %r14, 5;
add.s32 %r65, %r64, 1;
and.b32 %r97, %r65, 3;
setp.eq.s32 %p12, %r97, 0;
mov.f32 %f89, 0f00000000;
mov.u32 %r98, %r102;
@%p12 bra $L__BB2_11;

mul.wide.s32 %rd32, %r102, 4;
add.s64 %rd41, %rd2, %rd32;
add.s64 %rd40, %rd1, %rd32;
mov.f32 %f89, 0f00000000;
mov.u32 %r98, %r102;

$L__BB2_10:
.pragma "nounroll";
ld.global.f32 %f45, [%rd40];
sub.ftz.f32 %f46, %f45, %f9;
st.global.f32 [%rd41], %f46;
fma.rn.ftz.f32 %f89, %f46, %f46, %f89;
add.s32 %r98, %r98, 32;
add.s64 %rd41, %rd41, 128;
add.s64 %rd40, %rd40, 128;
add.s32 %r97, %r97, -1;
setp.ne.s32 %p13, %r97, 0;
@%p13 bra $L__BB2_10;

$L__BB2_11:
setp.lt.u32 %p14, %r14, 96;
@%p14 bra $L__BB2_14;

mul.wide.s32 %rd33, %r98, 4;
add.s64 %rd34, %rd33, 256;
add.s64 %rd43, %rd1, %rd34;
add.s64 %rd42, %rd2, %rd34;

$L__BB2_13:
ld.global.f32 %f47, [%rd43+-256];
sub.ftz.f32 %f48, %f47, %f9;
st.global.f32 [%rd42+-256], %f48;
fma.rn.ftz.f32 %f49, %f48, %f48, %f89;
ld.global.f32 %f50, [%rd43+-128];
sub.ftz.f32 %f51, %f50, %f9;
st.global.f32 [%rd42+-128], %f51;
fma.rn.ftz.f32 %f52, %f51, %f51, %f49;
ld.global.f32 %f53, [%rd43];
sub.ftz.f32 %f54, %f53, %f9;
st.global.f32 [%rd42], %f54;
fma.rn.ftz.f32 %f55, %f54, %f54, %f52;
ld.global.f32 %f56, [%rd43+128];
sub.ftz.f32 %f57, %f56, %f9;
st.global.f32 [%rd42+128], %f57;
fma.rn.ftz.f32 %f89, %f57, %f57, %f55;
add.s64 %rd43, %rd43, 512;
add.s64 %rd42, %rd42, 512;
add.s32 %r98, %r98, 128;
setp.lt.s32 %p15, %r98, %r4;
@%p15 bra $L__BB2_13;

$L__BB2_14:
mov.b32 %r66, %f89;
shfl.sync.bfly.b32 %r70|%p16, %r66, %r44, %r43, %r45;
mov.b32 %f58, %r70;
add.ftz.f32 %f59, %f89, %f58;
mov.b32 %r71, %f59;
shfl.sync.bfly.b32 %r73|%p17, %r71, %r48, %r43, %r45;
mov.b32 %f60, %r73;
add.ftz.f32 %f61, %f59, %f60;
mov.b32 %r74, %f61;
shfl.sync.bfly.b32 %r76|%p18, %r74, %r51, %r43, %r45;
mov.b32 %f62, %r76;
add.ftz.f32 %f63, %f61, %f62;
mov.b32 %r77, %f63;
shfl.sync.bfly.b32 %r79|%p19, %r77, %r54, %r43, %r45;
mov.b32 %f64, %r79;
add.ftz.f32 %f65, %f63, %f64;
mov.b32 %r80, %f65;
shfl.sync.bfly.b32 %r82|%p20, %r80, %r57, %r43, %r45;
mov.b32 %f66, %r82;
add.ftz.f32 %f67, %f65, %f66;
div.approx.ftz.f32 %f68, %f67, %f8;
add.ftz.f32 %f69, %f68, %f18;
rsqrt.approx.ftz.f32 %f17, %f69;
@%p1 bra $L__BB2_21;

mov.u32 %r85, -2;
sub.s32 %r86, %r85, %r1;
sub.s32 %r88, %r86, %r2;
not.b32 %r89, %r4;
sub.s32 %r23, %r88, %r89;
shr.u32 %r90, %r23, 5;
add.s32 %r91, %r90, 1;
and.b32 %r101, %r91, 3;
setp.eq.s32 %p22, %r101, 0;
@%p22 bra $L__BB2_18;

mul.wide.s32 %rd35, %r102, 4;
add.s64 %rd44, %rd2, %rd35;

$L__BB2_17:
.pragma "nounroll";
ld.global.f32 %f70, [%rd44];
mul.ftz.f32 %f71, %f17, %f70;
st.global.f32 [%rd44], %f71;
add.s32 %r102, %r102, 32;
add.s64 %rd44, %rd44, 128;
add.s32 %r101, %r101, -1;
setp.ne.s32 %p23, %r101, 0;
@%p23 bra $L__BB2_17;

$L__BB2_18:
setp.lt.u32 %p24, %r23, 96;
@%p24 bra $L__BB2_21;

mul.wide.s32 %rd36, %r102, 4;
add.s64 %rd37, %rd2, %rd36;
add.s64 %rd45, %rd37, 256;

$L__BB2_20:
ld.global.f32 %f72, [%rd45+-256];
mul.ftz.f32 %f73, %f17, %f72;
st.global.f32 [%rd45+-256], %f73;
ld.global.f32 %f74, [%rd45+-128];
mul.ftz.f32 %f75, %f17, %f74;
st.global.f32 [%rd45+-128], %f75;
ld.global.f32 %f76, [%rd45];
mul.ftz.f32 %f77, %f17, %f76;
st.global.f32 [%rd45], %f77;
ld.global.f32 %f78, [%rd45+128];
mul.ftz.f32 %f79, %f17, %f78;
st.global.f32 [%rd45+128], %f79;
add.s64 %rd45, %rd45, 512;
add.s32 %r102, %r102, 128;
setp.lt.s32 %p25, %r102, %r4;
@%p25 bra $L__BB2_20;

$L__BB2_21:
ret;

}
.entry _Z14group_norm_f32ILi1024EEvPKfPfiif(
.param .u64 _Z14group_norm_f32ILi1024EEvPKfPfiif_param_0,
.param .u64 _Z14group_norm_f32ILi1024EEvPKfPfiif_param_1,
.param .u32 _Z14group_norm_f32ILi1024EEvPKfPfiif_param_2,
.param .u32 _Z14group_norm_f32ILi1024EEvPKfPfiif_param_3,
.param .f32 _Z14group_norm_f32ILi1024EEvPKfPfiif_param_4
)
{
.reg .pred %p<38>;
.reg .f32 %f<112>;
.reg .b32 %r<155>;
.reg .b64 %rd<52>;

.shared .align 4 .b8 _ZZ14group_norm_f32ILi1024EEvPKfPfiifE5s_sum[128];

.shared .align 4 .b8 _ZZ14group_norm_f32ILi1024EEvPKfPfiifE5s_sum_0[128];

ld.param.u64 %rd25, [_Z14group_norm_f32ILi1024EEvPKfPfiif_param_0];
ld.param.u64 %rd26, [_Z14group_norm_f32ILi1024EEvPKfPfiif_param_1];
ld.param.u32 %r33, [_Z14group_norm_f32ILi1024EEvPKfPfiif_param_2];
ld.param.u32 %r34, [_Z14group_norm_f32ILi1024EEvPKfPfiif_param_3];
ld.param.f32 %f20, [_Z14group_norm_f32ILi1024EEvPKfPfiif_param_4];
mov.u32 %r35, %ctaid.x;
mul.lo.s32 %r1, %r35, %r33;
mov.u32 %r2, %tid.x;
add.s32 %r153, %r1, %r2;
add.s32 %r36, %r1, %r33;
min.u32 %r4, %r36, %r34;
setp.ge.s32 %p1, %r153, %r4;
mov.f32 %f106, 0f00000000;
@%p1 bra $L__BB3_7;

mov.u32 %r37, -2;
sub.s32 %r38, %r37, %r1;
sub.s32 %r39, %r38, %r2;
not.b32 %r40, %r4;
sub.s32 %r5, %r39, %r40;
shr.u32 %r41, %r5, 10;
add.s32 %r42, %r41, 1;
and.b32 %r144, %r42, 3;
setp.eq.s32 %p2, %r144, 0;
mov.f32 %f106, 0f00000000;
mov.u32 %r145, %r153;
@%p2 bra $L__BB3_4;

cvta.to.global.u64 %rd27, %rd25;
mul.wide.s32 %rd28, %r153, 4;
add.s64 %rd44, %rd27, %rd28;
mov.f32 %f106, 0f00000000;
mov.u32 %r145, %r153;

$L__BB3_3:
.pragma "nounroll";
ld.global.f32 %f25, [%rd44];
add.ftz.f32 %f106, %f106, %f25;
add.s32 %r145, %r145, 1024;
add.s64 %rd44, %rd44, 4096;
add.s32 %r144, %r144, -1;
setp.ne.s32 %p3, %r144, 0;
@%p3 bra $L__BB3_3;

$L__BB3_4:
setp.lt.u32 %p4, %r5, 3072;
@%p4 bra $L__BB3_7;

cvta.to.global.u64 %rd29, %rd25;
mul.wide.s32 %rd30, %r145, 4;
add.s64 %rd31, %rd29, %rd30;
add.s64 %rd45, %rd31, 8192;

$L__BB3_6:
ld.global.f32 %f26, [%rd45+-8192];
add.ftz.f32 %f27, %f106, %f26;
ld.global.f32 %f28, [%rd45+-4096];
add.ftz.f32 %f29, %f27, %f28;
ld.global.f32 %f30, [%rd45];
add.ftz.f32 %f31, %f29, %f30;
ld.global.f32 %f32, [%rd45+4096];
add.ftz.f32 %f106, %f31, %f32;
add.s64 %rd45, %rd45, 16384;
add.s32 %r145, %r145, 4096;
setp.lt.s32 %p5, %r145, %r4;
@%p5 bra $L__BB3_6;

$L__BB3_7:
mov.b32 %r43, %f106;
mov.u32 %r44, 31;
mov.u32 %r45, 16;
mov.u32 %r46, -1;
shfl.sync.bfly.b32 %r47|%p6, %r43, %r45, %r44, %r46;
mov.b32 %f33, %r47;
add.ftz.f32 %f34, %f106, %f33;
mov.b32 %r48, %f34;
mov.u32 %r49, 8;
shfl.sync.bfly.b32 %r50|%p7, %r48, %r49, %r44, %r46;
mov.b32 %f35, %r50;
add.ftz.f32 %f36, %f34, %f35;
mov.b32 %r51, %f36;
mov.u32 %r52, 4;
shfl.sync.bfly.b32 %r53|%p8, %r51, %r52, %r44, %r46;
mov.b32 %f37, %r53;
add.ftz.f32 %f38, %f36, %f37;
mov.b32 %r54, %f38;
mov.u32 %r55, 2;
shfl.sync.bfly.b32 %r56|%p9, %r54, %r55, %r44, %r46;
mov.b32 %f39, %r56;
add.ftz.f32 %f40, %f38, %f39;
mov.b32 %r57, %f40;
mov.u32 %r58, 1;
shfl.sync.bfly.b32 %r59|%p10, %r57, %r58, %r44, %r46;
mov.b32 %f41, %r59;
add.ftz.f32 %f8, %f40, %f41;
and.b32 %r14, %r2, 31;
setp.ne.s32 %p11, %r14, 0;
@%p11 bra $L__BB3_9;

shr.u32 %r60, %r2, 3;
and.b32 %r61, %r60, 536870908;
mov.u32 %r62, _ZZ14group_norm_f32ILi1024EEvPKfPfiifE5s_sum;
add.s32 %r63, %r62, %r61;
st.shared.f32 [%r63], %f8;

$L__BB3_9:
bar.sync 0;
shl.b32 %r64, %r14, 2;
mov.u32 %r65, _ZZ14group_norm_f32ILi1024EEvPKfPfiifE5s_sum;
add.s32 %r66, %r65, %r64;
ld.shared.f32 %f43, [%r66];
mov.b32 %r68, %f43;
shfl.sync.bfly.b32 %r72|%p13, %r68, %r45, %r44, %r46;
mov.b32 %f44, %r72;
add.ftz.f32 %f45, %f43, %f44;
mov.b32 %r73, %f45;
shfl.sync.bfly.b32 %r75|%p14, %r73, %r49, %r44, %r46;
mov.b32 %f46, %r75;
add.ftz.f32 %f47, %f45, %f46;
mov.b32 %r76, %f47;
shfl.sync.bfly.b32 %r78|%p15, %r76, %r52, %r44, %r46;
mov.b32 %f48, %r78;
add.ftz.f32 %f49, %f47, %f48;
mov.b32 %r79, %f49;
shfl.sync.bfly.b32 %r80|%p16, %r79, %r55, %r44, %r46;
mov.b32 %f50, %r80;
add.ftz.f32 %f51, %f49, %f50;
mov.b32 %r81, %f51;
shfl.sync.bfly.b32 %r83|%p17, %r81, %r58, %r44, %r46;
mov.b32 %f52, %r83;
add.ftz.f32 %f53, %f51, %f52;
cvt.rn.f32.s32 %f9, %r33;
div.approx.ftz.f32 %f10, %f53, %f9;
mov.f32 %f111, 0f00000000;
@%p1 bra $L__BB3_16;

mov.u32 %r86, -2;
sub.s32 %r87, %r86, %r1;
sub.s32 %r88, %r87, %r2;
not.b32 %r89, %r4;
sub.s32 %r15, %r88, %r89;
shr.u32 %r90, %r15, 10;
add.s32 %r91, %r90, 1;
and.b32 %r148, %r91, 3;
setp.eq.s32 %p18, %r148, 0;
mov.f32 %f111, 0f00000000;
mov.u32 %r149, %r153;
@%p18 bra $L__BB3_13;

cvta.to.global.u64 %rd32, %rd26;
mul.wide.s32 %rd33, %r153, 4;
add.s64 %rd47, %rd32, %rd33;
cvta.to.global.u64 %rd34, %rd25;
add.s64 %rd46, %rd34, %rd33;
mov.f32 %f111, 0f00000000;
mov.u32 %r149, %r153;

$L__BB3_12:
.pragma "nounroll";
ld.global.f32 %f57, [%rd46];
sub.ftz.f32 %f58, %f57, %f10;
st.global.f32 [%rd47], %f58;
fma.rn.ftz.f32 %f111, %f58, %f58, %f111;
add.s32 %r149, %r149, 1024;
add.s64 %rd47, %rd47, 4096;
add.s64 %rd46, %rd46, 4096;
add.s32 %r148, %r148, -1;
setp.ne.s32 %p19, %r148, 0;
@%p19 bra $L__BB3_12;

$L__BB3_13:
setp.lt.u32 %p20, %r15, 3072;
@%p20 bra $L__BB3_16;

cvta.to.global.u64 %rd35, %rd25;
mul.wide.s32 %rd36, %r149, 4;
add.s64 %rd37, %rd36, 8192;
add.s64 %rd49, %rd35, %rd37;
cvta.to.global.u64 %rd38, %rd26;
add.s64 %rd48, %rd38, %rd37;

$L__BB3_15:
ld.global.f32 %f59, [%rd49+-8192];
sub.ftz.f32 %f60, %f59, %f10;
st.global.f32 [%rd48+-8192], %f60;
fma.rn.ftz.f32 %f61, %f60, %f60, %f111;
ld.global.f32 %f62, [%rd49+-4096];
sub.ftz.f32 %f63, %f62, %f10;
st.global.f32 [%rd48+-4096], %f63;
fma.rn.ftz.f32 %f64, %f63, %f63, %f61;
ld.global.f32 %f65, [%rd49];
sub.ftz.f32 %f66, %f65, %f10;
st.global.f32 [%rd48], %f66;
fma.rn.ftz.f32 %f67, %f66, %f66, %f64;
ld.global.f32 %f68, [%rd49+4096];
sub.ftz.f32 %f69, %f68, %f10;
st.global.f32 [%rd48+4096], %f69;
fma.rn.ftz.f32 %f111, %f69, %f69, %f67;
add.s64 %rd49, %rd49, 16384;
add.s64 %rd48, %rd48, 16384;
add.s32 %r149, %r149, 4096;
setp.lt.s32 %p21, %r149, %r4;
@%p21 bra $L__BB3_15;

$L__BB3_16:
mov.b32 %r92, %f111;
mov.u32 %r93, 31;
mov.u32 %r94, 16;
mov.u32 %r95, -1;
shfl.sync.bfly.b32 %r96|%p22, %r92, %r94, %r93, %r95;
mov.b32 %f70, %r96;
add.ftz.f32 %f71, %f111, %f70;
mov.b32 %r97, %f71;
mov.u32 %r98, 8;
shfl.sync.bfly.b32 %r99|%p23, %r97, %r98, %r93, %r95;
mov.b32 %f72, %r99;
add.ftz.f32 %f73, %f71, %f72;
mov.b32 %r100, %f73;
mov.u32 %r101, 4;
shfl.sync.bfly.b32 %r102|%p24, %r100, %r101, %r93, %r95;
mov.b32 %f74, %r102;
add.ftz.f32 %f75, %f73, %f74;
mov.b32 %r103, %f75;
mov.u32 %r104, 2;
shfl.sync.bfly.b32 %r105|%p25, %r103, %r104, %r93, %r95;
mov.b32 %f76, %r105;
add.ftz.f32 %f77, %f75, %f76;
mov.b32 %r106, %f77;
mov.u32 %r107, 1;
shfl.sync.bfly.b32 %r108|%p26, %r106, %r107, %r93, %r95;
mov.b32 %f78, %r108;
add.ftz.f32 %f18, %f77, %f78;
@%p11 bra $L__BB3_18;

shr.u32 %r110, %r2, 3;
and.b32 %r111, %r110, 536870908;
mov.u32 %r112, _ZZ14group_norm_f32ILi1024EEvPKfPfiifE5s_sum_0;
add.s32 %r113, %r112, %r111;
st.shared.f32 [%r113], %f18;

$L__BB3_18:
bar.sync 0;
mov.u32 %r115, _ZZ14group_norm_f32ILi1024EEvPKfPfiifE5s_sum_0;
add.s32 %r116, %r115, %r64;
ld.shared.f32 %f79, [%r116];
mov.b32 %r118, %f79;
shfl.sync.bfly.b32 %r122|%p29, %r118, %r94, %r93, %r95;
mov.b32 %f80, %r122;
add.ftz.f32 %f81, %f79, %f80;
mov.b32 %r123, %f81;
shfl.sync.bfly.b32 %r125|%p30, %r123, %r98, %r93, %r95;
mov.b32 %f82, %r125;
add.ftz.f32 %f83, %f81, %f82;
mov.b32 %r126, %f83;
shfl.sync.bfly.b32 %r128|%p31, %r126, %r101, %r93, %r95;
mov.b32 %f84, %r128;
add.ftz.f32 %f85, %f83, %f84;
mov.b32 %r129, %f85;
shfl.sync.bfly.b32 %r130|%p32, %r129, %r104, %r93, %r95;
mov.b32 %f86, %r130;
add.ftz.f32 %f87, %f85, %f86;
mov.b32 %r131, %f87;
shfl.sync.bfly.b32 %r133|%p33, %r131, %r107, %r93, %r95;
mov.b32 %f88, %r133;
add.ftz.f32 %f89, %f87, %f88;
div.approx.ftz.f32 %f90, %f89, %f9;
add.ftz.f32 %f91, %f90, %f20;
rsqrt.approx.ftz.f32 %f19, %f91;
@%p1 bra $L__BB3_25;

mov.u32 %r136, -2;
sub.s32 %r137, %r136, %r1;
sub.s32 %r139, %r137, %r2;
not.b32 %r140, %r4;
sub.s32 %r24, %r139, %r140;
shr.u32 %r141, %r24, 10;
add.s32 %r142, %r141, 1;
and.b32 %r152, %r142, 3;
setp.eq.s32 %p34, %r152, 0;
@%p34 bra $L__BB3_22;

cvta.to.global.u64 %rd39, %rd26;
mul.wide.s32 %rd40, %r153, 4;
add.s64 %rd50, %rd39, %rd40;

$L__BB3_21:
.pragma "nounroll";
ld.global.f32 %f92, [%rd50];
mul.ftz.f32 %f93, %f19, %f92;
st.global.f32 [%rd50], %f93;
add.s32 %r153, %r153, 1024;
add.s64 %rd50, %rd50, 4096;
add.s32 %r152, %r152, -1;
setp.ne.s32 %p35, %r152, 0;
@%p35 bra $L__BB3_21;

$L__BB3_22:
setp.lt.u32 %p36, %r24, 3072;
@%p36 bra $L__BB3_25;

cvta.to.global.u64 %rd41, %rd26;
mul.wide.s32 %rd42, %r153, 4;
add.s64 %rd43, %rd41, %rd42;
add.s64 %rd51, %rd43, 8192;

$L__BB3_24:
ld.global.f32 %f94, [%rd51+-8192];
mul.ftz.f32 %f95, %f19, %f94;
st.global.f32 [%rd51+-8192], %f95;
ld.global.f32 %f96, [%rd51+-4096];
mul.ftz.f32 %f97, %f19, %f96;
st.global.f32 [%rd51+-4096], %f97;
ld.global.f32 %f98, [%rd51];
mul.ftz.f32 %f99, %f19, %f98;
st.global.f32 [%rd51], %f99;
ld.global.f32 %f100, [%rd51+4096];
mul.ftz.f32 %f101, %f19, %f100;
st.global.f32 [%rd51+4096], %f101;
add.s64 %rd51, %rd51, 16384;
add.s32 %r153, %r153, 4096;
setp.lt.s32 %p37, %r153, %r4;
@%p37 bra $L__BB3_24;

$L__BB3_25:
ret;

}
.entry _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_(
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_0,
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_1,
.param .u32 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_2,
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_3,
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_4,
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_5,
.param .f32 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_6,
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_7,
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_8,
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_9,
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_10,
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14[12],
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_15,
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_16,
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_17,
.param .u64 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_18,
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_19[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_20[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_21[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_22[12]
)
{
.reg .pred %p<23>;
.reg .f32 %f<64>;
.reg .b32 %r<92>;
.reg .b64 %rd<73>;

.shared .align 4 .b8 _ZZ12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum[128];

ld.param.u64 %rd30, [_Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_0];
ld.param.u64 %rd26, [_Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_1];
ld.param.u32 %r21, [_Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_2];
ld.param.u64 %rd27, [_Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_3];
ld.param.u64 %rd28, [_Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_4];
ld.param.u64 %rd29, [_Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_5];
ld.param.f32 %f12, [_Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_6];
cvta.to.global.u64 %rd1, %rd30;
mov.u32 %r22, %ctaid.z;
cvt.s64.s32 %rd2, %r22;
mov.u32 %r23, %ctaid.y;
cvt.s64.s32 %rd3, %r23;
mov.u32 %r24, %ctaid.x;
cvt.s64.s32 %rd4, %r24;
mov.u32 %r25, %nctaid.y;
mad.lo.s32 %r26, %r22, %r25, %r23;
mov.u32 %r27, %nctaid.x;
mad.lo.s32 %r28, %r26, %r27, %r24;
mul.lo.s32 %r29, %r28, %r21;
cvt.s64.s32 %rd5, %r29;
mov.u32 %r90, %tid.x;
setp.ge.s32 %p1, %r90, %r21;
mov.f32 %f62, 0f00000000;
@%p1 bra $L__BB4_7;

not.b32 %r30, %r90;
add.s32 %r2, %r30, %r21;
shr.u32 %r31, %r2, 8;
add.s32 %r32, %r31, 1;
and.b32 %r85, %r32, 3;
setp.eq.s32 %p2, %r85, 0;
mov.f32 %f62, 0f00000000;
mov.u32 %r86, %r90;
@%p2 bra $L__BB4_4;

mul.lo.s64 %rd31, %rd29, %rd2;
mul.lo.s64 %rd32, %rd28, %rd3;
add.s64 %rd33, %rd31, %rd32;
mul.lo.s64 %rd34, %rd27, %rd4;
add.s64 %rd35, %rd33, %rd34;
cvt.s64.s32 %rd36, %r90;
add.s64 %rd37, %rd35, %rd36;
shl.b64 %rd38, %rd37, 2;
add.s64 %rd67, %rd1, %rd38;
mov.f32 %f62, 0f00000000;
mov.u32 %r86, %r90;

$L__BB4_3:
.pragma "nounroll";
ld.global.f32 %f17, [%rd67];
fma.rn.ftz.f32 %f62, %f17, %f17, %f62;
add.s32 %r86, %r86, 256;
add.s64 %rd67, %rd67, 1024;
add.s32 %r85, %r85, -1;
setp.ne.s32 %p3, %r85, 0;
@%p3 bra $L__BB4_3;

$L__BB4_4:
setp.lt.u32 %p4, %r2, 768;
@%p4 bra $L__BB4_7;

mul.lo.s64 %rd39, %rd29, %rd2;
mul.lo.s64 %rd40, %rd28, %rd3;
add.s64 %rd41, %rd39, %rd40;
mul.lo.s64 %rd42, %rd27, %rd4;
add.s64 %rd43, %rd41, %rd42;
shl.b64 %rd44, %rd43, 2;
add.s64 %rd68, %rd1, %rd44;
mul.wide.s32 %rd10, %r86, 4;

$L__BB4_6:
add.s64 %rd45, %rd68, %rd10;
ld.global.f32 %f18, [%rd45];
fma.rn.ftz.f32 %f19, %f18, %f18, %f62;
ld.global.f32 %f20, [%rd45+1024];
fma.rn.ftz.f32 %f21, %f20, %f20, %f19;
ld.global.f32 %f22, [%rd45+2048];
fma.rn.ftz.f32 %f23, %f22, %f22, %f21;
ld.global.f32 %f24, [%rd45+3072];
fma.rn.ftz.f32 %f62, %f24, %f24, %f23;
add.s64 %rd68, %rd68, 4096;
add.s32 %r86, %r86, 1024;
setp.lt.s32 %p5, %r86, %r21;
@%p5 bra $L__BB4_6;

$L__BB4_7:
mov.b32 %r33, %f62;
mov.u32 %r34, 31;
mov.u32 %r35, 16;
mov.u32 %r36, -1;
shfl.sync.bfly.b32 %r37|%p6, %r33, %r35, %r34, %r36;
mov.b32 %f25, %r37;
add.ftz.f32 %f26, %f62, %f25;
mov.b32 %r38, %f26;
mov.u32 %r39, 8;
shfl.sync.bfly.b32 %r40|%p7, %r38, %r39, %r34, %r36;
mov.b32 %f27, %r40;
add.ftz.f32 %f28, %f26, %f27;
mov.b32 %r41, %f28;
mov.u32 %r42, 4;
shfl.sync.bfly.b32 %r43|%p8, %r41, %r42, %r34, %r36;
mov.b32 %f29, %r43;
add.ftz.f32 %f30, %f28, %f29;
mov.b32 %r44, %f30;
mov.u32 %r45, 2;
shfl.sync.bfly.b32 %r46|%p9, %r44, %r45, %r34, %r36;
mov.b32 %f31, %r46;
add.ftz.f32 %f32, %f30, %f31;
mov.b32 %r47, %f32;
mov.u32 %r48, 1;
shfl.sync.bfly.b32 %r49|%p10, %r47, %r48, %r34, %r36;
mov.b32 %f33, %r49;
add.ftz.f32 %f8, %f32, %f33;
shr.s32 %r50, %r90, 31;
shr.u32 %r51, %r50, 27;
add.s32 %r52, %r90, %r51;
and.b32 %r53, %r52, -32;
sub.s32 %r11, %r90, %r53;
setp.ne.s32 %p11, %r11, 0;
@%p11 bra $L__BB4_9;

shr.s32 %r57, %r52, 5;
shl.b32 %r58, %r57, 2;
mov.u32 %r59, _ZZ12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum;
add.s32 %r60, %r59, %r58;
st.shared.f32 [%r60], %f8;

$L__BB4_9:
bar.sync 0;
setp.gt.s32 %p12, %r11, 7;
mov.f32 %f63, 0f00000000;
@%p12 bra $L__BB4_11;

shl.b32 %r61, %r11, 2;
mov.u32 %r62, _ZZ12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum;
add.s32 %r63, %r62, %r61;
ld.shared.f32 %f63, [%r63];

$L__BB4_11:
mov.b32 %r64, %f63;
mov.u32 %r65, 31;
mov.u32 %r66, 16;
mov.u32 %r67, -1;
shfl.sync.bfly.b32 %r68|%p13, %r64, %r66, %r65, %r67;
mov.b32 %f35, %r68;
add.ftz.f32 %f36, %f63, %f35;
mov.b32 %r69, %f36;
mov.u32 %r70, 8;
shfl.sync.bfly.b32 %r71|%p14, %r69, %r70, %r65, %r67;
mov.b32 %f37, %r71;
add.ftz.f32 %f38, %f36, %f37;
mov.b32 %r72, %f38;
mov.u32 %r73, 4;
shfl.sync.bfly.b32 %r74|%p15, %r72, %r73, %r65, %r67;
mov.b32 %f39, %r74;
add.ftz.f32 %f40, %f38, %f39;
mov.b32 %r75, %f40;
mov.u32 %r76, 2;
shfl.sync.bfly.b32 %r77|%p16, %r75, %r76, %r65, %r67;
mov.b32 %f41, %r77;
add.ftz.f32 %f42, %f40, %f41;
mov.b32 %r78, %f42;
mov.u32 %r79, 1;
shfl.sync.bfly.b32 %r80|%p17, %r78, %r79, %r65, %r67;
mov.b32 %f43, %r80;
add.ftz.f32 %f44, %f42, %f43;
cvt.rn.f32.s32 %f45, %r21;
div.approx.ftz.f32 %f46, %f44, %f45;
add.ftz.f32 %f47, %f46, %f12;
rsqrt.approx.ftz.f32 %f11, %f47;
@%p1 bra $L__BB4_18;

not.b32 %r81, %r90;
add.s32 %r12, %r81, %r21;
shr.u32 %r82, %r12, 8;
add.s32 %r83, %r82, 1;
and.b32 %r89, %r83, 3;
setp.eq.s32 %p19, %r89, 0;
@%p19 bra $L__BB4_15;

cvt.s64.s32 %rd46, %r90;
add.s64 %rd47, %rd46, %rd5;
cvta.to.global.u64 %rd48, %rd26;
shl.b64 %rd49, %rd47, 2;
add.s64 %rd70, %rd48, %rd49;
mul.lo.s64 %rd50, %rd28, %rd3;
mul.lo.s64 %rd51, %rd29, %rd2;
add.s64 %rd52, %rd51, %rd50;
mul.lo.s64 %rd53, %rd27, %rd4;
add.s64 %rd54, %rd52, %rd53;
add.s64 %rd55, %rd54, %rd46;
shl.b64 %rd56, %rd55, 2;
add.s64 %rd69, %rd1, %rd56;

$L__BB4_14:
.pragma "nounroll";
ld.global.f32 %f48, [%rd69];
mul.ftz.f32 %f49, %f11, %f48;
st.global.f32 [%rd70], %f49;
add.s32 %r90, %r90, 256;
add.s64 %rd70, %rd70, 1024;
add.s64 %rd69, %rd69, 1024;
add.s32 %r89, %r89, -1;
setp.ne.s32 %p20, %r89, 0;
@%p20 bra $L__BB4_14;

$L__BB4_15:
setp.lt.u32 %p21, %r12, 768;
@%p21 bra $L__BB4_18;

cvta.to.global.u64 %rd57, %rd26;
shl.b64 %rd58, %rd5, 2;
add.s64 %rd72, %rd57, %rd58;
mul.lo.s64 %rd59, %rd28, %rd3;
mul.lo.s64 %rd60, %rd29, %rd2;
add.s64 %rd61, %rd60, %rd59;
mul.lo.s64 %rd62, %rd27, %rd4;
add.s64 %rd63, %rd61, %rd62;
shl.b64 %rd64, %rd63, 2;
add.s64 %rd71, %rd1, %rd64;
mul.wide.s32 %rd21, %r90, 4;

$L__BB4_17:
add.s64 %rd65, %rd71, %rd21;
ld.global.f32 %f50, [%rd65];
mul.ftz.f32 %f51, %f11, %f50;
add.s64 %rd66, %rd72, %rd21;
st.global.f32 [%rd66], %f51;
ld.global.f32 %f52, [%rd65+1024];
mul.ftz.f32 %f53, %f11, %f52;
st.global.f32 [%rd66+1024], %f53;
ld.global.f32 %f54, [%rd65+2048];
mul.ftz.f32 %f55, %f11, %f54;
st.global.f32 [%rd66+2048], %f55;
ld.global.f32 %f56, [%rd65+3072];
mul.ftz.f32 %f57, %f11, %f56;
st.global.f32 [%rd66+3072], %f57;
add.s64 %rd72, %rd72, 4096;
add.s64 %rd71, %rd71, 4096;
add.s32 %r90, %r90, 1024;
setp.lt.s32 %p22, %r90, %r21;
@%p22 bra $L__BB4_17;

$L__BB4_18:
ret;

}
.entry _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_(
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_0,
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_1,
.param .u32 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_2,
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_3,
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_4,
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_5,
.param .f32 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_6,
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_7,
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_8,
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_9,
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_10,
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14[12],
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_15,
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_16,
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_17,
.param .u64 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_18,
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_19[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_20[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_21[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_22[12]
)
{
.reg .pred %p<22>;
.reg .f32 %f<61>;
.reg .b32 %r<92>;
.reg .b64 %rd<73>;

.shared .align 4 .b8 _ZZ12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum[128];

ld.param.u64 %rd30, [_Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_0];
ld.param.u64 %rd26, [_Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_1];
ld.param.u32 %r21, [_Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_2];
ld.param.u64 %rd27, [_Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_3];
ld.param.u64 %rd28, [_Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_4];
ld.param.u64 %rd29, [_Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_5];
ld.param.f32 %f10, [_Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_6];
cvta.to.global.u64 %rd1, %rd30;
mov.u32 %r22, %ctaid.z;
cvt.s64.s32 %rd2, %r22;
mov.u32 %r23, %ctaid.y;
cvt.s64.s32 %rd3, %r23;
mov.u32 %r24, %ctaid.x;
cvt.s64.s32 %rd4, %r24;
mov.u32 %r25, %nctaid.y;
mad.lo.s32 %r26, %r22, %r25, %r23;
mov.u32 %r27, %nctaid.x;
mad.lo.s32 %r28, %r26, %r27, %r24;
mul.lo.s32 %r29, %r28, %r21;
cvt.s64.s32 %rd5, %r29;
mov.u32 %r90, %tid.x;
setp.ge.s32 %p1, %r90, %r21;
mov.f32 %f60, 0f00000000;
@%p1 bra $L__BB5_7;

not.b32 %r30, %r90;
add.s32 %r2, %r30, %r21;
shr.u32 %r31, %r2, 10;
add.s32 %r32, %r31, 1;
and.b32 %r85, %r32, 3;
setp.eq.s32 %p2, %r85, 0;
mov.f32 %f60, 0f00000000;
mov.u32 %r86, %r90;
@%p2 bra $L__BB5_4;

mul.lo.s64 %rd31, %rd29, %rd2;
mul.lo.s64 %rd32, %rd28, %rd3;
add.s64 %rd33, %rd31, %rd32;
mul.lo.s64 %rd34, %rd27, %rd4;
add.s64 %rd35, %rd33, %rd34;
cvt.s64.s32 %rd36, %r90;
add.s64 %rd37, %rd35, %rd36;
shl.b64 %rd38, %rd37, 2;
add.s64 %rd67, %rd1, %rd38;
mov.f32 %f60, 0f00000000;
mov.u32 %r86, %r90;

$L__BB5_3:
.pragma "nounroll";
ld.global.f32 %f15, [%rd67];
fma.rn.ftz.f32 %f60, %f15, %f15, %f60;
add.s32 %r86, %r86, 1024;
add.s64 %rd67, %rd67, 4096;
add.s32 %r85, %r85, -1;
setp.ne.s32 %p3, %r85, 0;
@%p3 bra $L__BB5_3;

$L__BB5_4:
setp.lt.u32 %p4, %r2, 3072;
@%p4 bra $L__BB5_7;

mul.lo.s64 %rd39, %rd29, %rd2;
mul.lo.s64 %rd40, %rd28, %rd3;
add.s64 %rd41, %rd39, %rd40;
mul.lo.s64 %rd42, %rd27, %rd4;
add.s64 %rd43, %rd41, %rd42;
shl.b64 %rd44, %rd43, 2;
add.s64 %rd68, %rd1, %rd44;
mul.wide.s32 %rd10, %r86, 4;

$L__BB5_6:
add.s64 %rd45, %rd68, %rd10;
ld.global.f32 %f16, [%rd45];
fma.rn.ftz.f32 %f17, %f16, %f16, %f60;
ld.global.f32 %f18, [%rd45+4096];
fma.rn.ftz.f32 %f19, %f18, %f18, %f17;
ld.global.f32 %f20, [%rd45+8192];
fma.rn.ftz.f32 %f21, %f20, %f20, %f19;
ld.global.f32 %f22, [%rd45+12288];
fma.rn.ftz.f32 %f60, %f22, %f22, %f21;
add.s64 %rd68, %rd68, 16384;
add.s32 %r86, %r86, 4096;
setp.lt.s32 %p5, %r86, %r21;
@%p5 bra $L__BB5_6;

$L__BB5_7:
mov.b32 %r33, %f60;
mov.u32 %r34, 31;
mov.u32 %r35, 16;
mov.u32 %r36, -1;
shfl.sync.bfly.b32 %r37|%p6, %r33, %r35, %r34, %r36;
mov.b32 %f23, %r37;
add.ftz.f32 %f24, %f60, %f23;
mov.b32 %r38, %f24;
mov.u32 %r39, 8;
shfl.sync.bfly.b32 %r40|%p7, %r38, %r39, %r34, %r36;
mov.b32 %f25, %r40;
add.ftz.f32 %f26, %f24, %f25;
mov.b32 %r41, %f26;
mov.u32 %r42, 4;
shfl.sync.bfly.b32 %r43|%p8, %r41, %r42, %r34, %r36;
mov.b32 %f27, %r43;
add.ftz.f32 %f28, %f26, %f27;
mov.b32 %r44, %f28;
mov.u32 %r45, 2;
shfl.sync.bfly.b32 %r46|%p9, %r44, %r45, %r34, %r36;
mov.b32 %f29, %r46;
add.ftz.f32 %f30, %f28, %f29;
mov.b32 %r47, %f30;
mov.u32 %r48, 1;
shfl.sync.bfly.b32 %r49|%p10, %r47, %r48, %r34, %r36;
mov.b32 %f31, %r49;
add.ftz.f32 %f8, %f30, %f31;
shr.s32 %r50, %r90, 31;
shr.u32 %r51, %r50, 27;
add.s32 %r52, %r90, %r51;
and.b32 %r53, %r52, -32;
sub.s32 %r11, %r90, %r53;
setp.ne.s32 %p11, %r11, 0;
@%p11 bra $L__BB5_9;

shr.s32 %r57, %r52, 5;
shl.b32 %r58, %r57, 2;
mov.u32 %r59, _ZZ12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum;
add.s32 %r60, %r59, %r58;
st.shared.f32 [%r60], %f8;

$L__BB5_9:
bar.sync 0;
shl.b32 %r61, %r11, 2;
mov.u32 %r62, _ZZ12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum;
add.s32 %r63, %r62, %r61;
ld.shared.f32 %f32, [%r63];
mov.b32 %r65, %f32;
shfl.sync.bfly.b32 %r69|%p13, %r65, %r35, %r34, %r36;
mov.b32 %f33, %r69;
add.ftz.f32 %f34, %f32, %f33;
mov.b32 %r70, %f34;
shfl.sync.bfly.b32 %r72|%p14, %r70, %r39, %r34, %r36;
mov.b32 %f35, %r72;
add.ftz.f32 %f36, %f34, %f35;
mov.b32 %r73, %f36;
shfl.sync.bfly.b32 %r75|%p15, %r73, %r42, %r34, %r36;
mov.b32 %f37, %r75;
add.ftz.f32 %f38, %f36, %f37;
mov.b32 %r76, %f38;
shfl.sync.bfly.b32 %r77|%p16, %r76, %r45, %r34, %r36;
mov.b32 %f39, %r77;
add.ftz.f32 %f40, %f38, %f39;
mov.b32 %r78, %f40;
shfl.sync.bfly.b32 %r80|%p17, %r78, %r48, %r34, %r36;
mov.b32 %f41, %r80;
add.ftz.f32 %f42, %f40, %f41;
cvt.rn.f32.s32 %f43, %r21;
div.approx.ftz.f32 %f44, %f42, %f43;
add.ftz.f32 %f45, %f44, %f10;
rsqrt.approx.ftz.f32 %f9, %f45;
@%p1 bra $L__BB5_16;

not.b32 %r81, %r90;
add.s32 %r12, %r81, %r21;
shr.u32 %r82, %r12, 10;
add.s32 %r83, %r82, 1;
and.b32 %r89, %r83, 3;
setp.eq.s32 %p18, %r89, 0;
@%p18 bra $L__BB5_13;

cvt.s64.s32 %rd46, %r90;
add.s64 %rd47, %rd46, %rd5;
cvta.to.global.u64 %rd48, %rd26;
shl.b64 %rd49, %rd47, 2;
add.s64 %rd70, %rd48, %rd49;
mul.lo.s64 %rd50, %rd28, %rd3;
mul.lo.s64 %rd51, %rd29, %rd2;
add.s64 %rd52, %rd51, %rd50;
mul.lo.s64 %rd53, %rd27, %rd4;
add.s64 %rd54, %rd52, %rd53;
add.s64 %rd55, %rd54, %rd46;
shl.b64 %rd56, %rd55, 2;
add.s64 %rd69, %rd1, %rd56;

$L__BB5_12:
.pragma "nounroll";
ld.global.f32 %f46, [%rd69];
mul.ftz.f32 %f47, %f9, %f46;
st.global.f32 [%rd70], %f47;
add.s32 %r90, %r90, 1024;
add.s64 %rd70, %rd70, 4096;
add.s64 %rd69, %rd69, 4096;
add.s32 %r89, %r89, -1;
setp.ne.s32 %p19, %r89, 0;
@%p19 bra $L__BB5_12;

$L__BB5_13:
setp.lt.u32 %p20, %r12, 3072;
@%p20 bra $L__BB5_16;

cvta.to.global.u64 %rd57, %rd26;
shl.b64 %rd58, %rd5, 2;
add.s64 %rd72, %rd57, %rd58;
mul.lo.s64 %rd59, %rd28, %rd3;
mul.lo.s64 %rd60, %rd29, %rd2;
add.s64 %rd61, %rd60, %rd59;
mul.lo.s64 %rd62, %rd27, %rd4;
add.s64 %rd63, %rd61, %rd62;
shl.b64 %rd64, %rd63, 2;
add.s64 %rd71, %rd1, %rd64;
mul.wide.s32 %rd21, %r90, 4;

$L__BB5_15:
add.s64 %rd65, %rd71, %rd21;
ld.global.f32 %f48, [%rd65];
mul.ftz.f32 %f49, %f9, %f48;
add.s64 %rd66, %rd72, %rd21;
st.global.f32 [%rd66], %f49;
ld.global.f32 %f50, [%rd65+4096];
mul.ftz.f32 %f51, %f9, %f50;
st.global.f32 [%rd66+4096], %f51;
ld.global.f32 %f52, [%rd65+8192];
mul.ftz.f32 %f53, %f9, %f52;
st.global.f32 [%rd66+8192], %f53;
ld.global.f32 %f54, [%rd65+12288];
mul.ftz.f32 %f55, %f9, %f54;
st.global.f32 [%rd66+12288], %f55;
add.s64 %rd72, %rd72, 16384;
add.s64 %rd71, %rd71, 16384;
add.s32 %r90, %r90, 4096;
setp.lt.s32 %p21, %r90, %r21;
@%p21 bra $L__BB5_15;

$L__BB5_16:
ret;

}
.entry _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_(
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_0,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_1,
.param .u32 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_2,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_3,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_4,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_5,
.param .f32 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_6,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_7,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_8,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_9,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_10,
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14[12],
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_15,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_16,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_17,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_18,
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_19[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_20[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_21[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_22[12]
)
{
.reg .pred %p<23>;
.reg .f32 %f<74>;
.reg .b32 %r<152>;
.reg .b64 %rd<105>;

.shared .align 4 .b8 _ZZ12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum[128];

ld.param.u64 %rd35, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_0];
ld.param.u64 %rd36, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_1];
ld.param.u32 %r29, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_2];
ld.param.u64 %rd29, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_3];
ld.param.u64 %rd30, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_4];
ld.param.u64 %rd31, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_5];
ld.param.f32 %f12, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_6];
ld.param.u64 %rd37, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_7];
ld.param.u64 %rd32, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_8];
ld.param.u64 %rd33, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_9];
ld.param.u64 %rd34, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_10];
ld.param.u32 %r41, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14+8];
ld.param.u32 %r40, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14+4];
ld.param.u32 %r39, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14];
ld.param.u32 %r38, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13+8];
ld.param.u32 %r37, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13+4];
ld.param.u32 %r36, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13];
ld.param.u32 %r35, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12+8];
ld.param.u32 %r34, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12+4];
ld.param.u32 %r33, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12];
ld.param.u32 %r32, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11+8];
ld.param.u32 %r31, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11+4];
ld.param.u32 %r30, [_Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11];
cvta.to.global.u64 %rd1, %rd36;
cvta.to.global.u64 %rd2, %rd37;
cvta.to.global.u64 %rd3, %rd35;
mov.u32 %r1, %ctaid.z;
cvt.s64.s32 %rd4, %r1;
mov.u32 %r2, %ctaid.y;
cvt.s64.s32 %rd5, %r2;
mov.u32 %r3, %ctaid.x;
cvt.s64.s32 %rd6, %r3;
mov.u32 %r42, %nctaid.y;
mad.lo.s32 %r43, %r1, %r42, %r2;
mov.u32 %r44, %nctaid.x;
mad.lo.s32 %r45, %r43, %r44, %r3;
mul.lo.s32 %r46, %r45, %r29;
cvt.s64.s32 %rd7, %r46;
mov.u32 %r150, %tid.x;
setp.ge.s32 %p1, %r150, %r29;
mov.f32 %f72, 0f00000000;
@%p1 bra $L__BB6_7;

not.b32 %r47, %r150;
add.s32 %r5, %r47, %r29;
shr.u32 %r48, %r5, 8;
add.s32 %r49, %r48, 1;
and.b32 %r145, %r49, 3;
setp.eq.s32 %p2, %r145, 0;
mov.f32 %f72, 0f00000000;
mov.u32 %r146, %r150;
@%p2 bra $L__BB6_4;

mul.lo.s64 %rd38, %rd31, %rd4;
mul.lo.s64 %rd39, %rd30, %rd5;
add.s64 %rd40, %rd38, %rd39;
mul.lo.s64 %rd41, %rd29, %rd6;
add.s64 %rd42, %rd40, %rd41;
cvt.s64.s32 %rd43, %r150;
add.s64 %rd44, %rd42, %rd43;
shl.b64 %rd45, %rd44, 2;
add.s64 %rd99, %rd3, %rd45;
mov.f32 %f72, 0f00000000;
mov.u32 %r146, %r150;

$L__BB6_3:
.pragma "nounroll";
ld.global.f32 %f17, [%rd99];
fma.rn.ftz.f32 %f72, %f17, %f17, %f72;
add.s32 %r146, %r146, 256;
add.s64 %rd99, %rd99, 1024;
add.s32 %r145, %r145, -1;
setp.ne.s32 %p3, %r145, 0;
@%p3 bra $L__BB6_3;

$L__BB6_4:
setp.lt.u32 %p4, %r5, 768;
@%p4 bra $L__BB6_7;

mul.lo.s64 %rd46, %rd31, %rd4;
mul.lo.s64 %rd47, %rd30, %rd5;
add.s64 %rd48, %rd46, %rd47;
mul.lo.s64 %rd49, %rd29, %rd6;
add.s64 %rd50, %rd48, %rd49;
shl.b64 %rd51, %rd50, 2;
add.s64 %rd100, %rd3, %rd51;
mul.wide.s32 %rd12, %r146, 4;

$L__BB6_6:
add.s64 %rd52, %rd100, %rd12;
ld.global.f32 %f18, [%rd52];
fma.rn.ftz.f32 %f19, %f18, %f18, %f72;
ld.global.f32 %f20, [%rd52+1024];
fma.rn.ftz.f32 %f21, %f20, %f20, %f19;
ld.global.f32 %f22, [%rd52+2048];
fma.rn.ftz.f32 %f23, %f22, %f22, %f21;
ld.global.f32 %f24, [%rd52+3072];
fma.rn.ftz.f32 %f72, %f24, %f24, %f23;
add.s64 %rd100, %rd100, 4096;
add.s32 %r146, %r146, 1024;
setp.lt.s32 %p5, %r146, %r29;
@%p5 bra $L__BB6_6;

$L__BB6_7:
mov.b32 %r50, %f72;
mov.u32 %r51, 31;
mov.u32 %r52, 16;
mov.u32 %r53, -1;
shfl.sync.bfly.b32 %r54|%p6, %r50, %r52, %r51, %r53;
mov.b32 %f25, %r54;
add.ftz.f32 %f26, %f72, %f25;
mov.b32 %r55, %f26;
mov.u32 %r56, 8;
shfl.sync.bfly.b32 %r57|%p7, %r55, %r56, %r51, %r53;
mov.b32 %f27, %r57;
add.ftz.f32 %f28, %f26, %f27;
mov.b32 %r58, %f28;
mov.u32 %r59, 4;
shfl.sync.bfly.b32 %r60|%p8, %r58, %r59, %r51, %r53;
mov.b32 %f29, %r60;
add.ftz.f32 %f30, %f28, %f29;
mov.b32 %r61, %f30;
mov.u32 %r62, 2;
shfl.sync.bfly.b32 %r63|%p9, %r61, %r62, %r51, %r53;
mov.b32 %f31, %r63;
add.ftz.f32 %f32, %f30, %f31;
mov.b32 %r64, %f32;
mov.u32 %r65, 1;
shfl.sync.bfly.b32 %r66|%p10, %r64, %r65, %r51, %r53;
mov.b32 %f33, %r66;
add.ftz.f32 %f8, %f32, %f33;
shr.s32 %r67, %r150, 31;
shr.u32 %r68, %r67, 27;
add.s32 %r69, %r150, %r68;
and.b32 %r70, %r69, -32;
sub.s32 %r14, %r150, %r70;
setp.ne.s32 %p11, %r14, 0;
@%p11 bra $L__BB6_9;

shr.s32 %r74, %r69, 5;
shl.b32 %r75, %r74, 2;
mov.u32 %r76, _ZZ12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum;
add.s32 %r77, %r76, %r75;
st.shared.f32 [%r77], %f8;

$L__BB6_9:
bar.sync 0;
setp.gt.s32 %p12, %r14, 7;
mov.f32 %f73, 0f00000000;
@%p12 bra $L__BB6_11;

shl.b32 %r78, %r14, 2;
mov.u32 %r79, _ZZ12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum;
add.s32 %r80, %r79, %r78;
ld.shared.f32 %f73, [%r80];

$L__BB6_11:
mov.b32 %r81, %f73;
mov.u32 %r82, 31;
mov.u32 %r83, 16;
mov.u32 %r84, -1;
shfl.sync.bfly.b32 %r85|%p13, %r81, %r83, %r82, %r84;
mov.b32 %f35, %r85;
add.ftz.f32 %f36, %f73, %f35;
mov.b32 %r86, %f36;
mov.u32 %r87, 8;
shfl.sync.bfly.b32 %r88|%p14, %r86, %r87, %r82, %r84;
mov.b32 %f37, %r88;
add.ftz.f32 %f38, %f36, %f37;
mov.b32 %r89, %f38;
mov.u32 %r90, 4;
shfl.sync.bfly.b32 %r91|%p15, %r89, %r90, %r82, %r84;
mov.b32 %f39, %r91;
add.ftz.f32 %f40, %f38, %f39;
mov.b32 %r92, %f40;
mov.u32 %r93, 2;
shfl.sync.bfly.b32 %r94|%p16, %r92, %r93, %r82, %r84;
mov.b32 %f41, %r94;
add.ftz.f32 %f42, %f40, %f41;
mov.b32 %r95, %f42;
mov.u32 %r96, 1;
shfl.sync.bfly.b32 %r97|%p17, %r95, %r96, %r82, %r84;
mov.b32 %f43, %r97;
add.ftz.f32 %f44, %f42, %f43;
cvt.rn.f32.s32 %f45, %r29;
div.approx.ftz.f32 %f46, %f44, %f45;
add.ftz.f32 %f47, %f46, %f12;
rsqrt.approx.ftz.f32 %f11, %f47;
@%p1 bra $L__BB6_18;

mul.hi.u32 %r98, %r2, %r36;
add.s32 %r99, %r98, %r2;
shr.u32 %r100, %r99, %r37;
mul.lo.s32 %r101, %r100, %r38;
sub.s32 %r102, %r2, %r101;
cvt.u64.u32 %rd53, %r102;
mul.lo.s64 %rd54, %rd53, %rd33;
mul.hi.u32 %r103, %r3, %r33;
add.s32 %r104, %r103, %r3;
shr.u32 %r105, %r104, %r34;
mul.lo.s32 %r106, %r105, %r35;
sub.s32 %r107, %r3, %r106;
cvt.u64.u32 %rd55, %r107;
mul.lo.s64 %rd56, %rd55, %rd32;
add.s64 %rd57, %rd54, %rd56;
mul.hi.u32 %r108, %r1, %r39;
add.s32 %r109, %r108, %r1;
shr.u32 %r110, %r109, %r40;
mul.lo.s32 %r111, %r110, %r41;
sub.s32 %r112, %r1, %r111;
cvt.u64.u32 %rd58, %r112;
mul.lo.s64 %rd59, %rd58, %rd34;
add.s64 %rd15, %rd57, %rd59;
not.b32 %r113, %r150;
add.s32 %r18, %r113, %r29;
shr.u32 %r114, %r18, 8;
add.s32 %r115, %r114, 1;
and.b32 %r149, %r115, 3;
setp.eq.s32 %p19, %r149, 0;
@%p19 bra $L__BB6_15;

cvt.s64.s32 %rd60, %r150;
add.s64 %rd61, %rd60, %rd7;
shl.b64 %rd62, %rd61, 2;
add.s64 %rd102, %rd1, %rd62;
mul.lo.s64 %rd63, %rd30, %rd5;
mul.lo.s64 %rd64, %rd31, %rd4;
add.s64 %rd65, %rd64, %rd63;
mul.lo.s64 %rd66, %rd29, %rd6;
add.s64 %rd67, %rd65, %rd66;
add.s64 %rd68, %rd67, %rd60;
shl.b64 %rd69, %rd68, 2;
add.s64 %rd101, %rd3, %rd69;
neg.s32 %r20, %r32;

$L__BB6_14:
.pragma "nounroll";
mul.hi.u32 %r116, %r150, %r30;
add.s32 %r117, %r116, %r150;
shr.u32 %r118, %r117, %r31;
mad.lo.s32 %r119, %r20, %r118, %r150;
ld.global.f32 %f48, [%rd101];
mul.ftz.f32 %f49, %f11, %f48;
cvt.s64.s32 %rd70, %r119;
add.s64 %rd71, %rd15, %rd70;
shl.b64 %rd72, %rd71, 2;
add.s64 %rd73, %rd2, %rd72;
ld.global.f32 %f50, [%rd73];
mul.ftz.f32 %f51, %f49, %f50;
st.global.f32 [%rd102], %f51;
add.s32 %r150, %r150, 256;
add.s64 %rd102, %rd102, 1024;
add.s64 %rd101, %rd101, 1024;
add.s32 %r149, %r149, -1;
setp.ne.s32 %p20, %r149, 0;
@%p20 bra $L__BB6_14;

$L__BB6_15:
setp.lt.u32 %p21, %r18, 768;
@%p21 bra $L__BB6_18;

shl.b64 %rd74, %rd7, 2;
add.s64 %rd104, %rd1, %rd74;
mul.lo.s64 %rd75, %rd30, %rd5;
mul.lo.s64 %rd76, %rd31, %rd4;
add.s64 %rd77, %rd76, %rd75;
mul.lo.s64 %rd78, %rd29, %rd6;
add.s64 %rd79, %rd77, %rd78;
shl.b64 %rd80, %rd79, 2;
add.s64 %rd103, %rd3, %rd80;
neg.s32 %r26, %r32;
mul.wide.s32 %rd24, %r150, 4;

$L__BB6_17:
mul.hi.u32 %r120, %r150, %r30;
add.s32 %r121, %r120, %r150;
shr.u32 %r122, %r121, %r31;
mad.lo.s32 %r123, %r26, %r122, %r150;
add.s64 %rd81, %rd103, %rd24;
ld.global.f32 %f52, [%rd81];
mul.ftz.f32 %f53, %f11, %f52;
cvt.s64.s32 %rd82, %r123;
add.s64 %rd83, %rd15, %rd82;
shl.b64 %rd84, %rd83, 2;
add.s64 %rd85, %rd2, %rd84;
ld.global.f32 %f54, [%rd85];
mul.ftz.f32 %f55, %f53, %f54;
add.s64 %rd86, %rd104, %rd24;
st.global.f32 [%rd86], %f55;
add.s32 %r124, %r150, 256;
mul.hi.u32 %r125, %r124, %r30;
add.s32 %r126, %r125, %r150;
add.s32 %r127, %r126, 256;
shr.u32 %r128, %r127, %r31;
mad.lo.s32 %r129, %r26, %r128, %r124;
ld.global.f32 %f56, [%rd81+1024];
mul.ftz.f32 %f57, %f11, %f56;
cvt.s64.s32 %rd87, %r129;
add.s64 %rd88, %rd15, %rd87;
shl.b64 %rd89, %rd88, 2;
add.s64 %rd90, %rd2, %rd89;
ld.global.f32 %f58, [%rd90];
mul.ftz.f32 %f59, %f57, %f58;
st.global.f32 [%rd86+1024], %f59;
add.s32 %r130, %r150, 512;
mul.hi.u32 %r131, %r130, %r30;
add.s32 %r132, %r131, %r150;
add.s32 %r133, %r132, 512;
shr.u32 %r134, %r133, %r31;
mad.lo.s32 %r135, %r26, %r134, %r150;
add.s32 %r136, %r135, 512;
ld.global.f32 %f60, [%rd81+2048];
mul.ftz.f32 %f61, %f11, %f60;
cvt.s64.s32 %rd91, %r136;
add.s64 %rd92, %rd15, %rd91;
shl.b64 %rd93, %rd92, 2;
add.s64 %rd94, %rd2, %rd93;
ld.global.f32 %f62, [%rd94];
mul.ftz.f32 %f63, %f61, %f62;
st.global.f32 [%rd86+2048], %f63;
add.s32 %r137, %r150, 768;
mul.hi.u32 %r138, %r137, %r30;
add.s32 %r139, %r138, %r150;
add.s32 %r140, %r139, 768;
shr.u32 %r141, %r140, %r31;
mad.lo.s32 %r142, %r26, %r141, %r150;
add.s32 %r143, %r142, 768;
ld.global.f32 %f64, [%rd81+3072];
mul.ftz.f32 %f65, %f11, %f64;
cvt.s64.s32 %rd95, %r143;
add.s64 %rd96, %rd15, %rd95;
shl.b64 %rd97, %rd96, 2;
add.s64 %rd98, %rd2, %rd97;
ld.global.f32 %f66, [%rd98];
mul.ftz.f32 %f67, %f65, %f66;
st.global.f32 [%rd86+3072], %f67;
add.s64 %rd104, %rd104, 4096;
add.s64 %rd103, %rd103, 4096;
add.s32 %r150, %r150, 1024;
setp.lt.s32 %p22, %r150, %r29;
@%p22 bra $L__BB6_17;

$L__BB6_18:
ret;

}
.entry _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_(
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_0,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_1,
.param .u32 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_2,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_3,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_4,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_5,
.param .f32 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_6,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_7,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_8,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_9,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_10,
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14[12],
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_15,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_16,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_17,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_18,
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_19[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_20[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_21[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_22[12]
)
{
.reg .pred %p<22>;
.reg .f32 %f<72>;
.reg .b32 %r<163>;
.reg .b64 %rd<105>;

.shared .align 4 .b8 _ZZ12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum[128];

ld.param.u64 %rd35, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_0];
ld.param.u64 %rd36, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_1];
ld.param.u32 %r29, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_2];
ld.param.u64 %rd29, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_3];
ld.param.u64 %rd30, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_4];
ld.param.u64 %rd31, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_5];
ld.param.u64 %rd37, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_7];
ld.param.u64 %rd32, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_8];
ld.param.u64 %rd33, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_9];
ld.param.u64 %rd34, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_10];
ld.param.u32 %r41, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14+8];
ld.param.u32 %r32, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11+8];
ld.param.u32 %r31, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11+4];
ld.param.u32 %r30, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11];
cvta.to.global.u64 %rd1, %rd36;
cvta.to.global.u64 %rd2, %rd37;
cvta.to.global.u64 %rd3, %rd35;
mov.u32 %r1, %ctaid.z;
cvt.s64.s32 %rd4, %r1;
mov.u32 %r2, %ctaid.y;
cvt.s64.s32 %rd5, %r2;
mov.u32 %r3, %ctaid.x;
cvt.s64.s32 %rd6, %r3;
mov.u32 %r42, %nctaid.y;
mad.lo.s32 %r43, %r1, %r42, %r2;
mov.u32 %r44, %nctaid.x;
mad.lo.s32 %r45, %r43, %r44, %r3;
mul.lo.s32 %r46, %r45, %r29;
cvt.s64.s32 %rd7, %r46;
mov.u32 %r161, %tid.x;
setp.ge.s32 %p1, %r161, %r29;
mov.f32 %f71, 0f00000000;
@%p1 bra $L__BB7_7;

not.b32 %r47, %r161;
add.s32 %r5, %r47, %r29;
shr.u32 %r48, %r5, 10;
add.s32 %r49, %r48, 1;
and.b32 %r156, %r49, 3;
setp.eq.s32 %p2, %r156, 0;
mov.f32 %f71, 0f00000000;
mov.u32 %r157, %r161;
@%p2 bra $L__BB7_4;

mul.lo.s64 %rd38, %rd31, %rd4;
mul.lo.s64 %rd39, %rd30, %rd5;
add.s64 %rd40, %rd38, %rd39;
mul.lo.s64 %rd41, %rd29, %rd6;
add.s64 %rd42, %rd40, %rd41;
cvt.s64.s32 %rd43, %r161;
add.s64 %rd44, %rd42, %rd43;
shl.b64 %rd45, %rd44, 2;
add.s64 %rd99, %rd3, %rd45;
mov.f32 %f71, 0f00000000;
mov.u32 %r157, %r161;

$L__BB7_3:
.pragma "nounroll";
ld.global.f32 %f15, [%rd99];
fma.rn.ftz.f32 %f71, %f15, %f15, %f71;
add.s32 %r157, %r157, 1024;
add.s64 %rd99, %rd99, 4096;
add.s32 %r156, %r156, -1;
setp.ne.s32 %p3, %r156, 0;
@%p3 bra $L__BB7_3;

$L__BB7_4:
setp.lt.u32 %p4, %r5, 3072;
@%p4 bra $L__BB7_7;

mul.lo.s64 %rd46, %rd31, %rd4;
mul.lo.s64 %rd47, %rd30, %rd5;
add.s64 %rd48, %rd46, %rd47;
mul.lo.s64 %rd49, %rd29, %rd6;
add.s64 %rd50, %rd48, %rd49;
shl.b64 %rd51, %rd50, 2;
add.s64 %rd100, %rd3, %rd51;
mul.wide.s32 %rd12, %r157, 4;

$L__BB7_6:
add.s64 %rd52, %rd100, %rd12;
ld.global.f32 %f16, [%rd52];
fma.rn.ftz.f32 %f17, %f16, %f16, %f71;
ld.global.f32 %f18, [%rd52+4096];
fma.rn.ftz.f32 %f19, %f18, %f18, %f17;
ld.global.f32 %f20, [%rd52+8192];
fma.rn.ftz.f32 %f21, %f20, %f20, %f19;
ld.global.f32 %f22, [%rd52+12288];
fma.rn.ftz.f32 %f71, %f22, %f22, %f21;
add.s64 %rd100, %rd100, 16384;
add.s32 %r157, %r157, 4096;
setp.lt.s32 %p5, %r157, %r29;
@%p5 bra $L__BB7_6;

$L__BB7_7:
mov.b32 %r50, %f71;
mov.u32 %r51, 31;
mov.u32 %r52, 16;
mov.u32 %r53, -1;
shfl.sync.bfly.b32 %r54|%p6, %r50, %r52, %r51, %r53;
mov.b32 %f23, %r54;
add.ftz.f32 %f24, %f71, %f23;
mov.b32 %r55, %f24;
mov.u32 %r56, 8;
shfl.sync.bfly.b32 %r57|%p7, %r55, %r56, %r51, %r53;
mov.b32 %f25, %r57;
add.ftz.f32 %f26, %f24, %f25;
mov.b32 %r58, %f26;
mov.u32 %r59, 4;
shfl.sync.bfly.b32 %r60|%p8, %r58, %r59, %r51, %r53;
mov.b32 %f27, %r60;
add.ftz.f32 %f28, %f26, %f27;
mov.b32 %r61, %f28;
mov.u32 %r62, 2;
shfl.sync.bfly.b32 %r63|%p9, %r61, %r62, %r51, %r53;
mov.b32 %f29, %r63;
add.ftz.f32 %f30, %f28, %f29;
mov.b32 %r64, %f30;
mov.u32 %r65, 1;
shfl.sync.bfly.b32 %r66|%p10, %r64, %r65, %r51, %r53;
mov.b32 %f31, %r66;
add.ftz.f32 %f8, %f30, %f31;
shr.s32 %r67, %r161, 31;
shr.u32 %r68, %r67, 27;
add.s32 %r69, %r161, %r68;
and.b32 %r70, %r69, -32;
sub.s32 %r14, %r161, %r70;
setp.ne.s32 %p11, %r14, 0;
@%p11 bra $L__BB7_9;

shr.s32 %r74, %r69, 5;
shl.b32 %r75, %r74, 2;
mov.u32 %r76, _ZZ12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum;
add.s32 %r77, %r76, %r75;
st.shared.f32 [%r77], %f8;

$L__BB7_9:
ld.param.f32 %f66, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_6];
bar.sync 0;
shl.b32 %r78, %r14, 2;
mov.u32 %r79, _ZZ12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum;
add.s32 %r80, %r79, %r78;
ld.shared.f32 %f32, [%r80];
mov.b32 %r82, %f32;
shfl.sync.bfly.b32 %r86|%p13, %r82, %r52, %r51, %r53;
mov.b32 %f33, %r86;
add.ftz.f32 %f34, %f32, %f33;
mov.b32 %r87, %f34;
shfl.sync.bfly.b32 %r89|%p14, %r87, %r56, %r51, %r53;
mov.b32 %f35, %r89;
add.ftz.f32 %f36, %f34, %f35;
mov.b32 %r90, %f36;
shfl.sync.bfly.b32 %r92|%p15, %r90, %r59, %r51, %r53;
mov.b32 %f37, %r92;
add.ftz.f32 %f38, %f36, %f37;
mov.b32 %r93, %f38;
shfl.sync.bfly.b32 %r94|%p16, %r93, %r62, %r51, %r53;
mov.b32 %f39, %r94;
add.ftz.f32 %f40, %f38, %f39;
mov.b32 %r95, %f40;
shfl.sync.bfly.b32 %r97|%p17, %r95, %r65, %r51, %r53;
mov.b32 %f41, %r97;
add.ftz.f32 %f42, %f40, %f41;
cvt.rn.f32.s32 %f43, %r29;
div.approx.ftz.f32 %f44, %f42, %f43;
add.ftz.f32 %f45, %f44, %f66;
rsqrt.approx.ftz.f32 %f9, %f45;
@%p1 bra $L__BB7_16;

ld.param.u32 %r154, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14+4];
ld.param.u32 %r153, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14];
mov.u32 %r152, %ctaid.z;
ld.param.u32 %r151, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13+8];
ld.param.u32 %r150, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13+4];
ld.param.u32 %r149, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13];
mov.u32 %r148, %ctaid.y;
ld.param.u32 %r147, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12+8];
ld.param.u32 %r146, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12+4];
ld.param.u32 %r145, [_Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12];
mov.u32 %r144, %ctaid.x;
mul.hi.u32 %r98, %r144, %r145;
add.s32 %r99, %r98, %r144;
shr.u32 %r100, %r99, %r146;
mul.lo.s32 %r101, %r100, %r147;
sub.s32 %r102, %r144, %r101;
cvt.u64.u32 %rd53, %r102;
mul.lo.s64 %rd54, %rd53, %rd32;
mul.hi.u32 %r103, %r148, %r149;
add.s32 %r104, %r103, %r148;
shr.u32 %r105, %r104, %r150;
mul.lo.s32 %r106, %r105, %r151;
sub.s32 %r107, %r148, %r106;
cvt.u64.u32 %rd55, %r107;
mul.lo.s64 %rd56, %rd55, %rd33;
add.s64 %rd57, %rd56, %rd54;
mul.hi.u32 %r108, %r152, %r153;
add.s32 %r109, %r108, %r152;
shr.u32 %r110, %r109, %r154;
mul.lo.s32 %r111, %r110, %r41;
sub.s32 %r112, %r152, %r111;
cvt.u64.u32 %rd58, %r112;
mul.lo.s64 %rd59, %rd58, %rd34;
add.s64 %rd15, %rd57, %rd59;
not.b32 %r113, %r161;
add.s32 %r18, %r113, %r29;
shr.u32 %r114, %r18, 10;
add.s32 %r115, %r114, 1;
and.b32 %r160, %r115, 3;
setp.eq.s32 %p18, %r160, 0;
@%p18 bra $L__BB7_13;

cvt.s64.s32 %rd60, %r161;
add.s64 %rd61, %rd60, %rd7;
shl.b64 %rd62, %rd61, 2;
add.s64 %rd102, %rd1, %rd62;
mul.lo.s64 %rd63, %rd30, %rd5;
mul.lo.s64 %rd64, %rd31, %rd4;
add.s64 %rd65, %rd64, %rd63;
mul.lo.s64 %rd66, %rd29, %rd6;
add.s64 %rd67, %rd65, %rd66;
add.s64 %rd68, %rd67, %rd60;
shl.b64 %rd69, %rd68, 2;
add.s64 %rd101, %rd3, %rd69;
neg.s32 %r20, %r32;

$L__BB7_12:
.pragma "nounroll";
mul.hi.u32 %r116, %r161, %r30;
add.s32 %r117, %r116, %r161;
shr.u32 %r118, %r117, %r31;
mad.lo.s32 %r119, %r20, %r118, %r161;
ld.global.f32 %f46, [%rd101];
mul.ftz.f32 %f47, %f9, %f46;
cvt.s64.s32 %rd70, %r119;
add.s64 %rd71, %rd15, %rd70;
shl.b64 %rd72, %rd71, 2;
add.s64 %rd73, %rd2, %rd72;
ld.global.f32 %f48, [%rd73];
mul.ftz.f32 %f49, %f47, %f48;
st.global.f32 [%rd102], %f49;
add.s32 %r161, %r161, 1024;
add.s64 %rd102, %rd102, 4096;
add.s64 %rd101, %rd101, 4096;
add.s32 %r160, %r160, -1;
setp.ne.s32 %p19, %r160, 0;
@%p19 bra $L__BB7_12;

$L__BB7_13:
setp.lt.u32 %p20, %r18, 3072;
@%p20 bra $L__BB7_16;

shl.b64 %rd74, %rd7, 2;
add.s64 %rd104, %rd1, %rd74;
mul.lo.s64 %rd75, %rd30, %rd5;
mul.lo.s64 %rd76, %rd31, %rd4;
add.s64 %rd77, %rd76, %rd75;
mul.lo.s64 %rd78, %rd29, %rd6;
add.s64 %rd79, %rd77, %rd78;
shl.b64 %rd80, %rd79, 2;
add.s64 %rd103, %rd3, %rd80;
neg.s32 %r26, %r32;
mul.wide.s32 %rd24, %r161, 4;

$L__BB7_15:
mul.hi.u32 %r120, %r161, %r30;
add.s32 %r121, %r120, %r161;
shr.u32 %r122, %r121, %r31;
mad.lo.s32 %r123, %r26, %r122, %r161;
add.s64 %rd81, %rd103, %rd24;
ld.global.f32 %f50, [%rd81];
mul.ftz.f32 %f51, %f9, %f50;
cvt.s64.s32 %rd82, %r123;
add.s64 %rd83, %rd15, %rd82;
shl.b64 %rd84, %rd83, 2;
add.s64 %rd85, %rd2, %rd84;
ld.global.f32 %f52, [%rd85];
mul.ftz.f32 %f53, %f51, %f52;
add.s64 %rd86, %rd104, %rd24;
st.global.f32 [%rd86], %f53;
add.s32 %r124, %r161, 1024;
mul.hi.u32 %r125, %r124, %r30;
add.s32 %r126, %r125, %r161;
add.s32 %r127, %r126, 1024;
shr.u32 %r128, %r127, %r31;
mad.lo.s32 %r129, %r26, %r128, %r124;
ld.global.f32 %f54, [%rd81+4096];
mul.ftz.f32 %f55, %f9, %f54;
cvt.s64.s32 %rd87, %r129;
add.s64 %rd88, %rd15, %rd87;
shl.b64 %rd89, %rd88, 2;
add.s64 %rd90, %rd2, %rd89;
ld.global.f32 %f56, [%rd90];
mul.ftz.f32 %f57, %f55, %f56;
st.global.f32 [%rd86+4096], %f57;
add.s32 %r130, %r161, 2048;
mul.hi.u32 %r131, %r130, %r30;
add.s32 %r132, %r131, %r161;
add.s32 %r133, %r132, 2048;
shr.u32 %r134, %r133, %r31;
mad.lo.s32 %r135, %r26, %r134, %r161;
add.s32 %r136, %r135, 2048;
ld.global.f32 %f58, [%rd81+8192];
mul.ftz.f32 %f59, %f9, %f58;
cvt.s64.s32 %rd91, %r136;
add.s64 %rd92, %rd15, %rd91;
shl.b64 %rd93, %rd92, 2;
add.s64 %rd94, %rd2, %rd93;
ld.global.f32 %f60, [%rd94];
mul.ftz.f32 %f61, %f59, %f60;
st.global.f32 [%rd86+8192], %f61;
add.s32 %r137, %r161, 3072;
mul.hi.u32 %r138, %r137, %r30;
add.s32 %r139, %r138, %r161;
add.s32 %r140, %r139, 3072;
shr.u32 %r141, %r140, %r31;
mad.lo.s32 %r142, %r26, %r141, %r161;
add.s32 %r143, %r142, 3072;
ld.global.f32 %f62, [%rd81+12288];
mul.ftz.f32 %f63, %f9, %f62;
cvt.s64.s32 %rd95, %r143;
add.s64 %rd96, %rd15, %rd95;
shl.b64 %rd97, %rd96, 2;
add.s64 %rd98, %rd2, %rd97;
ld.global.f32 %f64, [%rd98];
mul.ftz.f32 %f65, %f63, %f64;
st.global.f32 [%rd86+12288], %f65;
add.s64 %rd104, %rd104, 16384;
add.s64 %rd103, %rd103, 16384;
add.s32 %r161, %r161, 4096;
setp.lt.s32 %p21, %r161, %r29;
@%p21 bra $L__BB7_15;

$L__BB7_16:
ret;

}
.entry _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_(
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_0,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_1,
.param .u32 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_2,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_3,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_4,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_5,
.param .f32 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_6,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_7,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_8,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_9,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_10,
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14[12],
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_15,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_16,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_17,
.param .u64 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_18,
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_19[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_20[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_21[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_22[12]
)
{
.reg .pred %p<23>;
.reg .f32 %f<80>;
.reg .b32 %r<224>;
.reg .b64 %rd<138>;

.shared .align 4 .b8 _ZZ12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum[128];

ld.param.u64 %rd40, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_0];
ld.param.u64 %rd41, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_1];
ld.param.u32 %r34, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_2];
ld.param.u64 %rd31, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_3];
ld.param.u64 %rd32, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_4];
ld.param.u64 %rd33, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_5];
ld.param.u64 %rd42, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_7];
ld.param.u64 %rd34, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_8];
ld.param.u64 %rd35, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_9];
ld.param.u64 %rd36, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_10];
ld.param.u64 %rd43, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_15];
ld.param.u64 %rd37, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_16];
ld.param.u64 %rd38, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_17];
ld.param.u64 %rd39, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_18];
ld.param.u32 %r58, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_22+8];
ld.param.u32 %r57, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_22+4];
ld.param.u32 %r49, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_19+8];
ld.param.u32 %r48, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_19+4];
ld.param.u32 %r47, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_19];
ld.param.u32 %r37, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11+8];
ld.param.u32 %r36, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11+4];
ld.param.u32 %r35, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11];
cvta.to.global.u64 %rd1, %rd41;
cvta.to.global.u64 %rd2, %rd43;
cvta.to.global.u64 %rd3, %rd42;
cvta.to.global.u64 %rd4, %rd40;
mov.u32 %r1, %ctaid.z;
cvt.s64.s32 %rd5, %r1;
mov.u32 %r2, %ctaid.y;
cvt.s64.s32 %rd6, %r2;
mov.u32 %r3, %ctaid.x;
cvt.s64.s32 %rd7, %r3;
mov.u32 %r59, %nctaid.y;
mad.lo.s32 %r60, %r1, %r59, %r2;
mov.u32 %r61, %nctaid.x;
mad.lo.s32 %r62, %r60, %r61, %r3;
mul.lo.s32 %r63, %r62, %r34;
cvt.s64.s32 %rd8, %r63;
mov.u32 %r222, %tid.x;
setp.ge.s32 %p1, %r222, %r34;
mov.f32 %f78, 0f00000000;
@%p1 bra $L__BB8_7;

not.b32 %r64, %r222;
add.s32 %r5, %r64, %r34;
shr.u32 %r65, %r5, 8;
add.s32 %r66, %r65, 1;
and.b32 %r217, %r66, 3;
setp.eq.s32 %p2, %r217, 0;
mov.f32 %f78, 0f00000000;
mov.u32 %r218, %r222;
@%p2 bra $L__BB8_4;

mul.lo.s64 %rd44, %rd33, %rd5;
mul.lo.s64 %rd45, %rd32, %rd6;
add.s64 %rd46, %rd44, %rd45;
mul.lo.s64 %rd47, %rd31, %rd7;
add.s64 %rd48, %rd46, %rd47;
cvt.s64.s32 %rd49, %r222;
add.s64 %rd50, %rd48, %rd49;
shl.b64 %rd51, %rd50, 2;
add.s64 %rd132, %rd4, %rd51;
mov.f32 %f78, 0f00000000;
mov.u32 %r218, %r222;

$L__BB8_3:
.pragma "nounroll";
ld.global.f32 %f17, [%rd132];
fma.rn.ftz.f32 %f78, %f17, %f17, %f78;
add.s32 %r218, %r218, 256;
add.s64 %rd132, %rd132, 1024;
add.s32 %r217, %r217, -1;
setp.ne.s32 %p3, %r217, 0;
@%p3 bra $L__BB8_3;

$L__BB8_4:
setp.lt.u32 %p4, %r5, 768;
@%p4 bra $L__BB8_7;

mul.lo.s64 %rd52, %rd33, %rd5;
mul.lo.s64 %rd53, %rd32, %rd6;
add.s64 %rd54, %rd52, %rd53;
mul.lo.s64 %rd55, %rd31, %rd7;
add.s64 %rd56, %rd54, %rd55;
shl.b64 %rd57, %rd56, 2;
add.s64 %rd133, %rd4, %rd57;
mul.wide.s32 %rd13, %r218, 4;

$L__BB8_6:
add.s64 %rd58, %rd133, %rd13;
ld.global.f32 %f18, [%rd58];
fma.rn.ftz.f32 %f19, %f18, %f18, %f78;
ld.global.f32 %f20, [%rd58+1024];
fma.rn.ftz.f32 %f21, %f20, %f20, %f19;
ld.global.f32 %f22, [%rd58+2048];
fma.rn.ftz.f32 %f23, %f22, %f22, %f21;
ld.global.f32 %f24, [%rd58+3072];
fma.rn.ftz.f32 %f78, %f24, %f24, %f23;
add.s64 %rd133, %rd133, 4096;
add.s32 %r218, %r218, 1024;
setp.lt.s32 %p5, %r218, %r34;
@%p5 bra $L__BB8_6;

$L__BB8_7:
mov.b32 %r67, %f78;
mov.u32 %r68, 31;
mov.u32 %r69, 16;
mov.u32 %r70, -1;
shfl.sync.bfly.b32 %r71|%p6, %r67, %r69, %r68, %r70;
mov.b32 %f25, %r71;
add.ftz.f32 %f26, %f78, %f25;
mov.b32 %r72, %f26;
mov.u32 %r73, 8;
shfl.sync.bfly.b32 %r74|%p7, %r72, %r73, %r68, %r70;
mov.b32 %f27, %r74;
add.ftz.f32 %f28, %f26, %f27;
mov.b32 %r75, %f28;
mov.u32 %r76, 4;
shfl.sync.bfly.b32 %r77|%p8, %r75, %r76, %r68, %r70;
mov.b32 %f29, %r77;
add.ftz.f32 %f30, %f28, %f29;
mov.b32 %r78, %f30;
mov.u32 %r79, 2;
shfl.sync.bfly.b32 %r80|%p9, %r78, %r79, %r68, %r70;
mov.b32 %f31, %r80;
add.ftz.f32 %f32, %f30, %f31;
mov.b32 %r81, %f32;
mov.u32 %r82, 1;
shfl.sync.bfly.b32 %r83|%p10, %r81, %r82, %r68, %r70;
mov.b32 %f33, %r83;
add.ftz.f32 %f8, %f32, %f33;
shr.s32 %r84, %r222, 31;
shr.u32 %r85, %r84, 27;
add.s32 %r86, %r222, %r85;
and.b32 %r87, %r86, -32;
sub.s32 %r14, %r222, %r87;
setp.ne.s32 %p11, %r14, 0;
@%p11 bra $L__BB8_9;

shr.s32 %r91, %r86, 5;
shl.b32 %r92, %r91, 2;
mov.u32 %r93, _ZZ12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum;
add.s32 %r94, %r93, %r92;
st.shared.f32 [%r94], %f8;

$L__BB8_9:
bar.sync 0;
setp.gt.s32 %p12, %r14, 7;
mov.f32 %f79, 0f00000000;
@%p12 bra $L__BB8_11;

shl.b32 %r95, %r14, 2;
mov.u32 %r96, _ZZ12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum;
add.s32 %r97, %r96, %r95;
ld.shared.f32 %f79, [%r97];

$L__BB8_11:
ld.param.f32 %f73, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_6];
mov.b32 %r98, %f79;
mov.u32 %r99, 31;
mov.u32 %r100, 16;
mov.u32 %r101, -1;
shfl.sync.bfly.b32 %r102|%p13, %r98, %r100, %r99, %r101;
mov.b32 %f35, %r102;
add.ftz.f32 %f36, %f79, %f35;
mov.b32 %r103, %f36;
mov.u32 %r104, 8;
shfl.sync.bfly.b32 %r105|%p14, %r103, %r104, %r99, %r101;
mov.b32 %f37, %r105;
add.ftz.f32 %f38, %f36, %f37;
mov.b32 %r106, %f38;
mov.u32 %r107, 4;
shfl.sync.bfly.b32 %r108|%p15, %r106, %r107, %r99, %r101;
mov.b32 %f39, %r108;
add.ftz.f32 %f40, %f38, %f39;
mov.b32 %r109, %f40;
mov.u32 %r110, 2;
shfl.sync.bfly.b32 %r111|%p16, %r109, %r110, %r99, %r101;
mov.b32 %f41, %r111;
add.ftz.f32 %f42, %f40, %f41;
mov.b32 %r112, %f42;
mov.u32 %r113, 1;
shfl.sync.bfly.b32 %r114|%p17, %r112, %r113, %r99, %r101;
mov.b32 %f43, %r114;
add.ftz.f32 %f44, %f42, %f43;
cvt.rn.f32.s32 %f45, %r34;
div.approx.ftz.f32 %f46, %f44, %f45;
add.ftz.f32 %f47, %f46, %f73;
rsqrt.approx.ftz.f32 %f11, %f47;
@%p1 bra $L__BB8_18;

ld.param.u32 %r215, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_22];
ld.param.u32 %r214, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_20+8];
ld.param.u32 %r213, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_20+4];
ld.param.u32 %r212, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_20];
ld.param.u32 %r211, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_21+8];
ld.param.u32 %r210, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_21+4];
ld.param.u32 %r209, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_21];
ld.param.u32 %r208, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14+8];
ld.param.u32 %r207, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14+4];
ld.param.u32 %r206, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14];
mov.u32 %r205, %ctaid.z;
ld.param.u32 %r204, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12+8];
ld.param.u32 %r203, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12+4];
ld.param.u32 %r202, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12];
mov.u32 %r201, %ctaid.x;
ld.param.u32 %r200, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13+8];
ld.param.u32 %r199, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13+4];
ld.param.u32 %r198, [_Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13];
mov.u32 %r197, %ctaid.y;
mul.hi.u32 %r115, %r197, %r198;
add.s32 %r116, %r115, %r197;
shr.u32 %r117, %r116, %r199;
mul.lo.s32 %r118, %r117, %r200;
sub.s32 %r119, %r197, %r118;
cvt.u64.u32 %rd59, %r119;
mul.lo.s64 %rd60, %rd59, %rd35;
mul.hi.u32 %r120, %r201, %r202;
add.s32 %r121, %r120, %r201;
shr.u32 %r122, %r121, %r203;
mul.lo.s32 %r123, %r122, %r204;
sub.s32 %r124, %r201, %r123;
cvt.u64.u32 %rd61, %r124;
mul.lo.s64 %rd62, %rd61, %rd34;
add.s64 %rd63, %rd60, %rd62;
mul.hi.u32 %r125, %r205, %r206;
add.s32 %r126, %r125, %r205;
shr.u32 %r127, %r126, %r207;
mul.lo.s32 %r128, %r127, %r208;
sub.s32 %r129, %r205, %r128;
cvt.u64.u32 %rd64, %r129;
mul.lo.s64 %rd65, %rd64, %rd36;
add.s64 %rd16, %rd63, %rd65;
mul.hi.u32 %r130, %r197, %r209;
add.s32 %r131, %r130, %r197;
shr.u32 %r132, %r131, %r210;
mul.lo.s32 %r133, %r132, %r211;
sub.s32 %r134, %r197, %r133;
cvt.s64.s32 %rd66, %r134;
mul.lo.s64 %rd67, %rd66, %rd38;
mul.hi.u32 %r135, %r201, %r212;
add.s32 %r136, %r135, %r201;
shr.u32 %r137, %r136, %r213;
mul.lo.s32 %r138, %r137, %r214;
sub.s32 %r139, %r201, %r138;
cvt.s64.s32 %rd68, %r139;
mul.lo.s64 %rd69, %rd68, %rd37;
add.s64 %rd70, %rd67, %rd69;
mul.hi.u32 %r140, %r205, %r215;
add.s32 %r141, %r140, %r205;
shr.u32 %r142, %r141, %r57;
mul.lo.s32 %r143, %r142, %r58;
sub.s32 %r144, %r205, %r143;
cvt.s64.s32 %rd71, %r144;
mul.lo.s64 %rd72, %rd71, %rd39;
add.s64 %rd17, %rd70, %rd72;
not.b32 %r145, %r222;
add.s32 %r21, %r145, %r34;
shr.u32 %r146, %r21, 8;
add.s32 %r147, %r146, 1;
and.b32 %r221, %r147, 3;
setp.eq.s32 %p19, %r221, 0;
@%p19 bra $L__BB8_15;

cvt.s64.s32 %rd73, %r222;
add.s64 %rd74, %rd73, %rd8;
shl.b64 %rd75, %rd74, 2;
add.s64 %rd135, %rd1, %rd75;
mul.lo.s64 %rd76, %rd32, %rd6;
mul.lo.s64 %rd77, %rd33, %rd5;
add.s64 %rd78, %rd77, %rd76;
mul.lo.s64 %rd79, %rd31, %rd7;
add.s64 %rd80, %rd78, %rd79;
add.s64 %rd81, %rd80, %rd73;
shl.b64 %rd82, %rd81, 2;
add.s64 %rd134, %rd4, %rd82;
neg.s32 %r23, %r49;
neg.s32 %r24, %r37;

$L__BB8_14:
.pragma "nounroll";
mul.hi.u32 %r148, %r222, %r35;
add.s32 %r149, %r148, %r222;
shr.u32 %r150, %r149, %r36;
mad.lo.s32 %r151, %r24, %r150, %r222;
mul.hi.u32 %r152, %r222, %r47;
add.s32 %r153, %r152, %r222;
shr.u32 %r154, %r153, %r48;
mad.lo.s32 %r155, %r23, %r154, %r222;
ld.global.f32 %f48, [%rd134];
mul.ftz.f32 %f49, %f11, %f48;
cvt.s64.s32 %rd83, %r151;
add.s64 %rd84, %rd16, %rd83;
shl.b64 %rd85, %rd84, 2;
add.s64 %rd86, %rd3, %rd85;
ld.global.f32 %f50, [%rd86];
cvt.s64.s32 %rd87, %r155;
add.s64 %rd88, %rd17, %rd87;
shl.b64 %rd89, %rd88, 2;
add.s64 %rd90, %rd2, %rd89;
ld.global.f32 %f51, [%rd90];
fma.rn.ftz.f32 %f52, %f49, %f50, %f51;
st.global.f32 [%rd135], %f52;
add.s32 %r222, %r222, 256;
add.s64 %rd135, %rd135, 1024;
add.s64 %rd134, %rd134, 1024;
add.s32 %r221, %r221, -1;
setp.ne.s32 %p20, %r221, 0;
@%p20 bra $L__BB8_14;

$L__BB8_15:
setp.lt.u32 %p21, %r21, 768;
@%p21 bra $L__BB8_18;

shl.b64 %rd91, %rd8, 2;
add.s64 %rd137, %rd1, %rd91;
mul.lo.s64 %rd92, %rd32, %rd6;
mul.lo.s64 %rd93, %rd33, %rd5;
add.s64 %rd94, %rd93, %rd92;
mul.lo.s64 %rd95, %rd31, %rd7;
add.s64 %rd96, %rd94, %rd95;
shl.b64 %rd97, %rd96, 2;
add.s64 %rd136, %rd4, %rd97;
neg.s32 %r30, %r49;
neg.s32 %r31, %r37;
mul.wide.s32 %rd26, %r222, 4;

$L__BB8_17:
mul.hi.u32 %r156, %r222, %r35;
add.s32 %r157, %r156, %r222;
shr.u32 %r158, %r157, %r36;
mad.lo.s32 %r159, %r31, %r158, %r222;
mul.hi.u32 %r160, %r222, %r47;
add.s32 %r161, %r160, %r222;
shr.u32 %r162, %r161, %r48;
mad.lo.s32 %r163, %r30, %r162, %r222;
add.s64 %rd98, %rd136, %rd26;
ld.global.f32 %f53, [%rd98];
mul.ftz.f32 %f54, %f11, %f53;
cvt.s64.s32 %rd99, %r159;
add.s64 %rd100, %rd16, %rd99;
shl.b64 %rd101, %rd100, 2;
add.s64 %rd102, %rd3, %rd101;
ld.global.f32 %f55, [%rd102];
cvt.s64.s32 %rd103, %r163;
add.s64 %rd104, %rd17, %rd103;
shl.b64 %rd105, %rd104, 2;
add.s64 %rd106, %rd2, %rd105;
ld.global.f32 %f56, [%rd106];
fma.rn.ftz.f32 %f57, %f54, %f55, %f56;
add.s64 %rd107, %rd137, %rd26;
st.global.f32 [%rd107], %f57;
add.s32 %r164, %r222, 256;
mul.hi.u32 %r165, %r164, %r35;
add.s32 %r166, %r165, %r222;
add.s32 %r167, %r166, 256;
shr.u32 %r168, %r167, %r36;
mad.lo.s32 %r169, %r31, %r168, %r164;
mul.hi.u32 %r170, %r164, %r47;
add.s32 %r171, %r170, %r222;
add.s32 %r172, %r171, 256;
shr.u32 %r173, %r172, %r48;
mad.lo.s32 %r174, %r30, %r173, %r164;
ld.global.f32 %f58, [%rd98+1024];
mul.ftz.f32 %f59, %f11, %f58;
cvt.s64.s32 %rd108, %r169;
add.s64 %rd109, %rd16, %rd108;
shl.b64 %rd110, %rd109, 2;
add.s64 %rd111, %rd3, %rd110;
ld.global.f32 %f60, [%rd111];
cvt.s64.s32 %rd112, %r174;
add.s64 %rd113, %rd17, %rd112;
shl.b64 %rd114, %rd113, 2;
add.s64 %rd115, %rd2, %rd114;
ld.global.f32 %f61, [%rd115];
fma.rn.ftz.f32 %f62, %f59, %f60, %f61;
st.global.f32 [%rd107+1024], %f62;
add.s32 %r175, %r222, 512;
mul.hi.u32 %r176, %r175, %r35;
add.s32 %r177, %r176, %r222;
add.s32 %r178, %r177, 512;
shr.u32 %r179, %r178, %r36;
mad.lo.s32 %r180, %r31, %r179, %r175;
mul.hi.u32 %r181, %r175, %r47;
add.s32 %r182, %r181, %r222;
add.s32 %r183, %r182, 512;
shr.u32 %r184, %r183, %r48;
mad.lo.s32 %r185, %r30, %r184, %r175;
ld.global.f32 %f63, [%rd98+2048];
mul.ftz.f32 %f64, %f11, %f63;
cvt.s64.s32 %rd116, %r180;
add.s64 %rd117, %rd16, %rd116;
shl.b64 %rd118, %rd117, 2;
add.s64 %rd119, %rd3, %rd118;
ld.global.f32 %f65, [%rd119];
cvt.s64.s32 %rd120, %r185;
add.s64 %rd121, %rd17, %rd120;
shl.b64 %rd122, %rd121, 2;
add.s64 %rd123, %rd2, %rd122;
ld.global.f32 %f66, [%rd123];
fma.rn.ftz.f32 %f67, %f64, %f65, %f66;
st.global.f32 [%rd107+2048], %f67;
add.s32 %r186, %r222, 768;
mul.hi.u32 %r187, %r186, %r35;
add.s32 %r188, %r187, %r222;
add.s32 %r189, %r188, 768;
shr.u32 %r190, %r189, %r36;
mad.lo.s32 %r191, %r31, %r190, %r186;
mul.hi.u32 %r192, %r186, %r47;
add.s32 %r193, %r192, %r222;
add.s32 %r194, %r193, 768;
shr.u32 %r195, %r194, %r48;
mad.lo.s32 %r196, %r30, %r195, %r186;
ld.global.f32 %f68, [%rd98+3072];
mul.ftz.f32 %f69, %f11, %f68;
cvt.s64.s32 %rd124, %r191;
add.s64 %rd125, %rd16, %rd124;
shl.b64 %rd126, %rd125, 2;
add.s64 %rd127, %rd3, %rd126;
ld.global.f32 %f70, [%rd127];
cvt.s64.s32 %rd128, %r196;
add.s64 %rd129, %rd17, %rd128;
shl.b64 %rd130, %rd129, 2;
add.s64 %rd131, %rd2, %rd130;
ld.global.f32 %f71, [%rd131];
fma.rn.ftz.f32 %f72, %f69, %f70, %f71;
st.global.f32 [%rd107+3072], %f72;
add.s64 %rd137, %rd137, 4096;
add.s64 %rd136, %rd136, 4096;
add.s32 %r222, %r222, 1024;
setp.lt.s32 %p22, %r222, %r34;
@%p22 bra $L__BB8_17;

$L__BB8_18:
ret;

}
.entry _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_(
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_0,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_1,
.param .u32 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_2,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_3,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_4,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_5,
.param .f32 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_6,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_7,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_8,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_9,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_10,
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14[12],
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_15,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_16,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_17,
.param .u64 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_18,
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_19[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_20[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_21[12],
.param .align 4 .b8 _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_22[12]
)
{
.reg .pred %p<22>;
.reg .f32 %f<77>;
.reg .b32 %r<226>;
.reg .b64 %rd<143>;

.shared .align 4 .b8 _ZZ12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum[128];

ld.param.u64 %rd40, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_0];
ld.param.u64 %rd41, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_1];
ld.param.u32 %r34, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_2];
ld.param.u64 %rd31, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_3];
ld.param.u64 %rd32, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_4];
ld.param.u64 %rd33, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_5];
ld.param.u64 %rd42, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_7];
ld.param.u64 %rd43, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_15];
ld.param.u64 %rd39, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_18];
ld.param.u32 %r49, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_19+8];
ld.param.u32 %r48, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_19+4];
ld.param.u32 %r47, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_19];
ld.param.u32 %r37, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11+8];
ld.param.u32 %r36, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11+4];
ld.param.u32 %r35, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_11];
cvta.to.global.u64 %rd1, %rd41;
cvta.to.global.u64 %rd2, %rd43;
cvta.to.global.u64 %rd3, %rd42;
cvta.to.global.u64 %rd4, %rd40;
mov.u32 %r1, %ctaid.z;
cvt.s64.s32 %rd5, %r1;
mov.u32 %r2, %ctaid.y;
cvt.s64.s32 %rd6, %r2;
mov.u32 %r3, %ctaid.x;
cvt.s64.s32 %rd7, %r3;
mov.u32 %r59, %nctaid.y;
mad.lo.s32 %r60, %r1, %r59, %r2;
mov.u32 %r61, %nctaid.x;
mad.lo.s32 %r62, %r60, %r61, %r3;
mul.lo.s32 %r63, %r62, %r34;
cvt.s64.s32 %rd8, %r63;
mov.u32 %r224, %tid.x;
setp.ge.s32 %p1, %r224, %r34;
mov.f32 %f76, 0f00000000;
@%p1 bra $L__BB9_7;

not.b32 %r64, %r224;
add.s32 %r5, %r64, %r34;
shr.u32 %r65, %r5, 10;
add.s32 %r66, %r65, 1;
and.b32 %r219, %r66, 3;
setp.eq.s32 %p2, %r219, 0;
mov.f32 %f76, 0f00000000;
mov.u32 %r220, %r224;
@%p2 bra $L__BB9_4;

mul.lo.s64 %rd44, %rd33, %rd5;
mul.lo.s64 %rd45, %rd32, %rd6;
add.s64 %rd46, %rd44, %rd45;
mul.lo.s64 %rd47, %rd31, %rd7;
add.s64 %rd48, %rd46, %rd47;
cvt.s64.s32 %rd49, %r224;
add.s64 %rd50, %rd48, %rd49;
shl.b64 %rd51, %rd50, 2;
add.s64 %rd137, %rd4, %rd51;
mov.f32 %f76, 0f00000000;
mov.u32 %r220, %r224;

$L__BB9_3:
.pragma "nounroll";
ld.global.f32 %f15, [%rd137];
fma.rn.ftz.f32 %f76, %f15, %f15, %f76;
add.s32 %r220, %r220, 1024;
add.s64 %rd137, %rd137, 4096;
add.s32 %r219, %r219, -1;
setp.ne.s32 %p3, %r219, 0;
@%p3 bra $L__BB9_3;

$L__BB9_4:
setp.lt.u32 %p4, %r5, 3072;
@%p4 bra $L__BB9_7;

mul.lo.s64 %rd52, %rd33, %rd5;
mul.lo.s64 %rd53, %rd32, %rd6;
add.s64 %rd54, %rd52, %rd53;
mul.lo.s64 %rd55, %rd31, %rd7;
add.s64 %rd56, %rd54, %rd55;
shl.b64 %rd57, %rd56, 2;
add.s64 %rd138, %rd4, %rd57;
mul.wide.s32 %rd13, %r220, 4;

$L__BB9_6:
add.s64 %rd58, %rd138, %rd13;
ld.global.f32 %f16, [%rd58];
fma.rn.ftz.f32 %f17, %f16, %f16, %f76;
ld.global.f32 %f18, [%rd58+4096];
fma.rn.ftz.f32 %f19, %f18, %f18, %f17;
ld.global.f32 %f20, [%rd58+8192];
fma.rn.ftz.f32 %f21, %f20, %f20, %f19;
ld.global.f32 %f22, [%rd58+12288];
fma.rn.ftz.f32 %f76, %f22, %f22, %f21;
add.s64 %rd138, %rd138, 16384;
add.s32 %r220, %r220, 4096;
setp.lt.s32 %p5, %r220, %r34;
@%p5 bra $L__BB9_6;

$L__BB9_7:
mov.b32 %r67, %f76;
mov.u32 %r68, 31;
mov.u32 %r69, 16;
mov.u32 %r70, -1;
shfl.sync.bfly.b32 %r71|%p6, %r67, %r69, %r68, %r70;
mov.b32 %f23, %r71;
add.ftz.f32 %f24, %f76, %f23;
mov.b32 %r72, %f24;
mov.u32 %r73, 8;
shfl.sync.bfly.b32 %r74|%p7, %r72, %r73, %r68, %r70;
mov.b32 %f25, %r74;
add.ftz.f32 %f26, %f24, %f25;
mov.b32 %r75, %f26;
mov.u32 %r76, 4;
shfl.sync.bfly.b32 %r77|%p8, %r75, %r76, %r68, %r70;
mov.b32 %f27, %r77;
add.ftz.f32 %f28, %f26, %f27;
mov.b32 %r78, %f28;
mov.u32 %r79, 2;
shfl.sync.bfly.b32 %r80|%p9, %r78, %r79, %r68, %r70;
mov.b32 %f29, %r80;
add.ftz.f32 %f30, %f28, %f29;
mov.b32 %r81, %f30;
mov.u32 %r82, 1;
shfl.sync.bfly.b32 %r83|%p10, %r81, %r82, %r68, %r70;
mov.b32 %f31, %r83;
add.ftz.f32 %f8, %f30, %f31;
shr.s32 %r84, %r224, 31;
shr.u32 %r85, %r84, 27;
add.s32 %r86, %r224, %r85;
and.b32 %r87, %r86, -32;
sub.s32 %r14, %r224, %r87;
setp.ne.s32 %p11, %r14, 0;
@%p11 bra $L__BB9_9;

shr.s32 %r91, %r86, 5;
shl.b32 %r92, %r91, 2;
mov.u32 %r93, _ZZ12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum;
add.s32 %r94, %r93, %r92;
st.shared.f32 [%r94], %f8;

$L__BB9_9:
ld.param.f32 %f71, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_6];
bar.sync 0;
shl.b32 %r95, %r14, 2;
mov.u32 %r96, _ZZ12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_E5s_sum;
add.s32 %r97, %r96, %r95;
ld.shared.f32 %f32, [%r97];
mov.b32 %r99, %f32;
shfl.sync.bfly.b32 %r103|%p13, %r99, %r69, %r68, %r70;
mov.b32 %f33, %r103;
add.ftz.f32 %f34, %f32, %f33;
mov.b32 %r104, %f34;
shfl.sync.bfly.b32 %r106|%p14, %r104, %r73, %r68, %r70;
mov.b32 %f35, %r106;
add.ftz.f32 %f36, %f34, %f35;
mov.b32 %r107, %f36;
shfl.sync.bfly.b32 %r109|%p15, %r107, %r76, %r68, %r70;
mov.b32 %f37, %r109;
add.ftz.f32 %f38, %f36, %f37;
mov.b32 %r110, %f38;
shfl.sync.bfly.b32 %r111|%p16, %r110, %r79, %r68, %r70;
mov.b32 %f39, %r111;
add.ftz.f32 %f40, %f38, %f39;
mov.b32 %r112, %f40;
shfl.sync.bfly.b32 %r114|%p17, %r112, %r82, %r68, %r70;
mov.b32 %f41, %r114;
add.ftz.f32 %f42, %f40, %f41;
cvt.rn.f32.s32 %f43, %r34;
div.approx.ftz.f32 %f44, %f42, %f43;
add.ftz.f32 %f45, %f44, %f71;
rsqrt.approx.ftz.f32 %f9, %f45;
@%p1 bra $L__BB9_16;

ld.param.u32 %r217, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_22+8];
ld.param.u32 %r216, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_22+4];
ld.param.u32 %r215, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_22];
ld.param.u64 %rd136, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_17];
ld.param.u32 %r214, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_21+8];
ld.param.u32 %r213, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_21+4];
ld.param.u32 %r212, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_21];
ld.param.u64 %rd135, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_16];
ld.param.u32 %r211, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_20+8];
ld.param.u32 %r210, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_20+4];
ld.param.u32 %r209, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_20];
ld.param.u64 %rd134, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_10];
ld.param.u32 %r208, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14+8];
ld.param.u32 %r207, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14+4];
ld.param.u32 %r206, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_14];
mov.u32 %r205, %ctaid.z;
ld.param.u64 %rd133, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_9];
ld.param.u32 %r204, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13+8];
ld.param.u32 %r203, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13+4];
ld.param.u32 %r202, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_13];
mov.u32 %r201, %ctaid.y;
ld.param.u64 %rd132, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_8];
ld.param.u32 %r200, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12+8];
ld.param.u32 %r199, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12+4];
ld.param.u32 %r198, [_Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3__param_12];
mov.u32 %r197, %ctaid.x;
mul.hi.u32 %r115, %r197, %r198;
add.s32 %r116, %r115, %r197;
shr.u32 %r117, %r116, %r199;
mul.lo.s32 %r118, %r117, %r200;
sub.s32 %r119, %r197, %r118;
cvt.u64.u32 %rd59, %r119;
mul.lo.s64 %rd60, %rd59, %rd132;
mul.hi.u32 %r120, %r201, %r202;
add.s32 %r121, %r120, %r201;
shr.u32 %r122, %r121, %r203;
mul.lo.s32 %r123, %r122, %r204;
sub.s32 %r124, %r201, %r123;
cvt.u64.u32 %rd61, %r124;
mul.lo.s64 %rd62, %rd61, %rd133;
add.s64 %rd63, %rd62, %rd60;
mul.hi.u32 %r125, %r205, %r206;
add.s32 %r126, %r125, %r205;
shr.u32 %r127, %r126, %r207;
mul.lo.s32 %r128, %r127, %r208;
sub.s32 %r129, %r205, %r128;
cvt.u64.u32 %rd64, %r129;
mul.lo.s64 %rd65, %rd64, %rd134;
add.s64 %rd16, %rd63, %rd65;
mul.hi.u32 %r130, %r197, %r209;
add.s32 %r131, %r130, %r197;
shr.u32 %r132, %r131, %r210;
mul.lo.s32 %r133, %r132, %r211;
sub.s32 %r134, %r197, %r133;
cvt.s64.s32 %rd66, %r134;
mul.lo.s64 %rd67, %rd66, %rd135;
mul.hi.u32 %r135, %r201, %r212;
add.s32 %r136, %r135, %r201;
shr.u32 %r137, %r136, %r213;
mul.lo.s32 %r138, %r137, %r214;
sub.s32 %r139, %r201, %r138;
cvt.s64.s32 %rd68, %r139;
mul.lo.s64 %rd69, %rd68, %rd136;
add.s64 %rd70, %rd69, %rd67;
mul.hi.u32 %r140, %r205, %r215;
add.s32 %r141, %r140, %r205;
shr.u32 %r142, %r141, %r216;
mul.lo.s32 %r143, %r142, %r217;
sub.s32 %r144, %r205, %r143;
cvt.s64.s32 %rd71, %r144;
mul.lo.s64 %rd72, %rd71, %rd39;
add.s64 %rd17, %rd70, %rd72;
not.b32 %r145, %r224;
add.s32 %r21, %r145, %r34;
shr.u32 %r146, %r21, 10;
add.s32 %r147, %r146, 1;
and.b32 %r223, %r147, 3;
setp.eq.s32 %p18, %r223, 0;
@%p18 bra $L__BB9_13;

cvt.s64.s32 %rd73, %r224;
add.s64 %rd74, %rd73, %rd8;
shl.b64 %rd75, %rd74, 2;
add.s64 %rd140, %rd1, %rd75;
mul.lo.s64 %rd76, %rd32, %rd6;
mul.lo.s64 %rd77, %rd33, %rd5;
add.s64 %rd78, %rd77, %rd76;
mul.lo.s64 %rd79, %rd31, %rd7;
add.s64 %rd80, %rd78, %rd79;
add.s64 %rd81, %rd80, %rd73;
shl.b64 %rd82, %rd81, 2;
add.s64 %rd139, %rd4, %rd82;
neg.s32 %r23, %r49;
neg.s32 %r24, %r37;

$L__BB9_12:
.pragma "nounroll";
mul.hi.u32 %r148, %r224, %r35;
add.s32 %r149, %r148, %r224;
shr.u32 %r150, %r149, %r36;
mad.lo.s32 %r151, %r24, %r150, %r224;
mul.hi.u32 %r152, %r224, %r47;
add.s32 %r153, %r152, %r224;
shr.u32 %r154, %r153, %r48;
mad.lo.s32 %r155, %r23, %r154, %r224;
ld.global.f32 %f46, [%rd139];
mul.ftz.f32 %f47, %f9, %f46;
cvt.s64.s32 %rd83, %r151;
add.s64 %rd84, %rd16, %rd83;
shl.b64 %rd85, %rd84, 2;
add.s64 %rd86, %rd3, %rd85;
ld.global.f32 %f48, [%rd86];
cvt.s64.s32 %rd87, %r155;
add.s64 %rd88, %rd17, %rd87;
shl.b64 %rd89, %rd88, 2;
add.s64 %rd90, %rd2, %rd89;
ld.global.f32 %f49, [%rd90];
fma.rn.ftz.f32 %f50, %f47, %f48, %f49;
st.global.f32 [%rd140], %f50;
add.s32 %r224, %r224, 1024;
add.s64 %rd140, %rd140, 4096;
add.s64 %rd139, %rd139, 4096;
add.s32 %r223, %r223, -1;
setp.ne.s32 %p19, %r223, 0;
@%p19 bra $L__BB9_12;

$L__BB9_13:
setp.lt.u32 %p20, %r21, 3072;
@%p20 bra $L__BB9_16;

shl.b64 %rd91, %rd8, 2;
add.s64 %rd142, %rd1, %rd91;
mul.lo.s64 %rd92, %rd32, %rd6;
mul.lo.s64 %rd93, %rd33, %rd5;
add.s64 %rd94, %rd93, %rd92;
mul.lo.s64 %rd95, %rd31, %rd7;
add.s64 %rd96, %rd94, %rd95;
shl.b64 %rd97, %rd96, 2;
add.s64 %rd141, %rd4, %rd97;
neg.s32 %r30, %r49;
neg.s32 %r31, %r37;
mul.wide.s32 %rd26, %r224, 4;

$L__BB9_15:
mul.hi.u32 %r156, %r224, %r35;
add.s32 %r157, %r156, %r224;
shr.u32 %r158, %r157, %r36;
mad.lo.s32 %r159, %r31, %r158, %r224;
mul.hi.u32 %r160, %r224, %r47;
add.s32 %r161, %r160, %r224;
shr.u32 %r162, %r161, %r48;
mad.lo.s32 %r163, %r30, %r162, %r224;
add.s64 %rd98, %rd141, %rd26;
ld.global.f32 %f51, [%rd98];
mul.ftz.f32 %f52, %f9, %f51;
cvt.s64.s32 %rd99, %r159;
add.s64 %rd100, %rd16, %rd99;
shl.b64 %rd101, %rd100, 2;
add.s64 %rd102, %rd3, %rd101;
ld.global.f32 %f53, [%rd102];
cvt.s64.s32 %rd103, %r163;
add.s64 %rd104, %rd17, %rd103;
shl.b64 %rd105, %rd104, 2;
add.s64 %rd106, %rd2, %rd105;
ld.global.f32 %f54, [%rd106];
fma.rn.ftz.f32 %f55, %f52, %f53, %f54;
add.s64 %rd107, %rd142, %rd26;
st.global.f32 [%rd107], %f55;
add.s32 %r164, %r224, 1024;
mul.hi.u32 %r165, %r164, %r35;
add.s32 %r166, %r165, %r224;
add.s32 %r167, %r166, 1024;
shr.u32 %r168, %r167, %r36;
mad.lo.s32 %r169, %r31, %r168, %r164;
mul.hi.u32 %r170, %r164, %r47;
add.s32 %r171, %r170, %r224;
add.s32 %r172, %r171, 1024;
shr.u32 %r173, %r172, %r48;
mad.lo.s32 %r174, %r30, %r173, %r164;
ld.global.f32 %f56, [%rd98+4096];
mul.ftz.f32 %f57, %f9, %f56;
cvt.s64.s32 %rd108, %r169;
add.s64 %rd109, %rd16, %rd108;
shl.b64 %rd110, %rd109, 2;
add.s64 %rd111, %rd3, %rd110;
ld.global.f32 %f58, [%rd111];
cvt.s64.s32 %rd112, %r174;
add.s64 %rd113, %rd17, %rd112;
shl.b64 %rd114, %rd113, 2;
add.s64 %rd115, %rd2, %rd114;
ld.global.f32 %f59, [%rd115];
fma.rn.ftz.f32 %f60, %f57, %f58, %f59;
st.global.f32 [%rd107+4096], %f60;
add.s32 %r175, %r224, 2048;
mul.hi.u32 %r176, %r175, %r35;
add.s32 %r177, %r176, %r224;
add.s32 %r178, %r177, 2048;
shr.u32 %r179, %r178, %r36;
mad.lo.s32 %r180, %r31, %r179, %r175;
mul.hi.u32 %r181, %r175, %r47;
add.s32 %r182, %r181, %r224;
add.s32 %r183, %r182, 2048;
shr.u32 %r184, %r183, %r48;
mad.lo.s32 %r185, %r30, %r184, %r175;
ld.global.f32 %f61, [%rd98+8192];
mul.ftz.f32 %f62, %f9, %f61;
cvt.s64.s32 %rd116, %r180;
add.s64 %rd117, %rd16, %rd116;
shl.b64 %rd118, %rd117, 2;
add.s64 %rd119, %rd3, %rd118;
ld.global.f32 %f63, [%rd119];
cvt.s64.s32 %rd120, %r185;
add.s64 %rd121, %rd17, %rd120;
shl.b64 %rd122, %rd121, 2;
add.s64 %rd123, %rd2, %rd122;
ld.global.f32 %f64, [%rd123];
fma.rn.ftz.f32 %f65, %f62, %f63, %f64;
st.global.f32 [%rd107+8192], %f65;
add.s32 %r186, %r224, 3072;
mul.hi.u32 %r187, %r186, %r35;
add.s32 %r188, %r187, %r224;
add.s32 %r189, %r188, 3072;
shr.u32 %r190, %r189, %r36;
mad.lo.s32 %r191, %r31, %r190, %r186;
mul.hi.u32 %r192, %r186, %r47;
add.s32 %r193, %r192, %r224;
add.s32 %r194, %r193, 3072;
shr.u32 %r195, %r194, %r48;
mad.lo.s32 %r196, %r30, %r195, %r186;
ld.global.f32 %f66, [%rd98+12288];
mul.ftz.f32 %f67, %f9, %f66;
cvt.s64.s32 %rd124, %r191;
add.s64 %rd125, %rd16, %rd124;
shl.b64 %rd126, %rd125, 2;
add.s64 %rd127, %rd3, %rd126;
ld.global.f32 %f68, [%rd127];
cvt.s64.s32 %rd128, %r196;
add.s64 %rd129, %rd17, %rd128;
shl.b64 %rd130, %rd129, 2;
add.s64 %rd131, %rd2, %rd130;
ld.global.f32 %f69, [%rd131];
fma.rn.ftz.f32 %f70, %f67, %f68, %f69;
st.global.f32 [%rd107+12288], %f70;
add.s64 %rd142, %rd142, 16384;
add.s64 %rd141, %rd141, 16384;
add.s32 %r224, %r224, 4096;
setp.lt.s32 %p21, %r224, %r34;
@%p21 bra $L__BB9_15;

$L__BB9_16:
ret;

}
.entry _Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif(
.param .u64 _Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif_param_0,
.param .u64 _Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif_param_1,
.param .u64 _Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif_param_2,
.param .u32 _Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif_param_3,
.param .f32 _Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif_param_4
)
{
.reg .pred %p<21>;
.reg .f32 %f<97>;
.reg .b32 %r<66>;
.reg .b64 %rd<69>;


ld.param.u64 %rd28, [_Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif_param_0];
ld.param.u64 %rd29, [_Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif_param_1];
ld.param.u64 %rd30, [_Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif_param_2];
ld.param.u32 %r20, [_Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif_param_3];
ld.param.f32 %f17, [_Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif_param_4];
mov.u32 %r21, %ctaid.x;
mov.u32 %r22, %ntid.y;
mov.u32 %r23, %tid.y;
mad.lo.s32 %r24, %r21, %r22, %r23;
cvt.s64.s32 %rd1, %r24;
mov.u32 %r64, %tid.x;
setp.ge.s32 %p1, %r64, %r20;
mov.f32 %f95, 0f00000000;
mov.f32 %f96, %f95;
@%p1 bra $L__BB10_7;

not.b32 %r25, %r64;
add.s32 %r2, %r25, %r20;
shr.u32 %r26, %r2, 5;
add.s32 %r27, %r26, 1;
and.b32 %r59, %r27, 3;
setp.eq.s32 %p2, %r59, 0;
mov.f32 %f96, 0f00000000;
mov.u32 %r60, %r64;
mov.f32 %f95, %f96;
@%p2 bra $L__BB10_4;

cvt.s64.s32 %rd31, %r20;
mul.lo.s64 %rd32, %rd31, %rd1;
cvt.s64.s32 %rd33, %r64;
add.s64 %rd34, %rd32, %rd33;
cvta.to.global.u64 %rd35, %rd28;
shl.b64 %rd36, %rd34, 2;
add.s64 %rd63, %rd35, %rd36;
cvta.to.global.u64 %rd37, %rd29;
add.s64 %rd62, %rd37, %rd36;
mov.f32 %f96, 0f00000000;
mov.u32 %r60, %r64;

$L__BB10_3:
.pragma "nounroll";
ld.global.f32 %f25, [%rd62];
fma.rn.ftz.f32 %f95, %f25, %f25, %f95;
ld.global.f32 %f26, [%rd63];
fma.rn.ftz.f32 %f96, %f25, %f26, %f96;
add.s32 %r60, %r60, 32;
add.s64 %rd63, %rd63, 128;
add.s64 %rd62, %rd62, 128;
add.s32 %r59, %r59, -1;
setp.ne.s32 %p3, %r59, 0;
@%p3 bra $L__BB10_3;

$L__BB10_4:
setp.lt.u32 %p4, %r2, 96;
@%p4 bra $L__BB10_7;

cvt.s64.s32 %rd38, %r20;
mul.lo.s64 %rd39, %rd38, %rd1;
shl.b64 %rd64, %rd39, 2;
cvta.to.global.u64 %rd40, %rd28;
mul.wide.s32 %rd41, %r60, 4;
add.s64 %rd9, %rd40, %rd41;
cvta.to.global.u64 %rd42, %rd29;
add.s64 %rd10, %rd42, %rd41;

$L__BB10_6:
add.s64 %rd43, %rd10, %rd64;
ld.global.f32 %f27, [%rd43];
fma.rn.ftz.f32 %f28, %f27, %f27, %f95;
add.s64 %rd44, %rd9, %rd64;
ld.global.f32 %f29, [%rd44];
fma.rn.ftz.f32 %f30, %f27, %f29, %f96;
ld.global.f32 %f31, [%rd43+128];
fma.rn.ftz.f32 %f32, %f31, %f31, %f28;
ld.global.f32 %f33, [%rd44+128];
fma.rn.ftz.f32 %f34, %f31, %f33, %f30;
ld.global.f32 %f35, [%rd43+256];
fma.rn.ftz.f32 %f36, %f35, %f35, %f32;
ld.global.f32 %f37, [%rd44+256];
fma.rn.ftz.f32 %f38, %f35, %f37, %f34;
ld.global.f32 %f39, [%rd43+384];
fma.rn.ftz.f32 %f95, %f39, %f39, %f36;
ld.global.f32 %f40, [%rd44+384];
fma.rn.ftz.f32 %f96, %f39, %f40, %f38;
add.s64 %rd64, %rd64, 512;
add.s32 %r60, %r60, 128;
setp.lt.s32 %p5, %r60, %r20;
@%p5 bra $L__BB10_6;

$L__BB10_7:
mov.b32 %r28, %f95;
mov.u32 %r29, 31;
mov.u32 %r30, 16;
mov.u32 %r31, -1;
shfl.sync.bfly.b32 %r32|%p6, %r28, %r30, %r29, %r31;
mov.b32 %f41, %r32;
add.ftz.f32 %f42, %f95, %f41;
mov.b32 %r33, %f42;
mov.u32 %r34, 8;
shfl.sync.bfly.b32 %r35|%p7, %r33, %r34, %r29, %r31;
mov.b32 %f43, %r35;
add.ftz.f32 %f44, %f42, %f43;
mov.b32 %r36, %f44;
mov.u32 %r37, 4;
shfl.sync.bfly.b32 %r38|%p8, %r36, %r37, %r29, %r31;
mov.b32 %f45, %r38;
add.ftz.f32 %f46, %f44, %f45;
mov.b32 %r39, %f46;
mov.u32 %r40, 2;
shfl.sync.bfly.b32 %r41|%p9, %r39, %r40, %r29, %r31;
mov.b32 %f47, %r41;
add.ftz.f32 %f48, %f46, %f47;
mov.b32 %r42, %f48;
mov.u32 %r43, 1;
shfl.sync.bfly.b32 %r44|%p10, %r42, %r43, %r29, %r31;
mov.b32 %f49, %r44;
add.ftz.f32 %f50, %f48, %f49;
mov.b32 %r45, %f96;
shfl.sync.bfly.b32 %r46|%p11, %r45, %r30, %r29, %r31;
mov.b32 %f51, %r46;
add.ftz.f32 %f52, %f96, %f51;
mov.b32 %r47, %f52;
shfl.sync.bfly.b32 %r48|%p12, %r47, %r34, %r29, %r31;
mov.b32 %f53, %r48;
add.ftz.f32 %f54, %f52, %f53;
mov.b32 %r49, %f54;
shfl.sync.bfly.b32 %r50|%p13, %r49, %r37, %r29, %r31;
mov.b32 %f55, %r50;
add.ftz.f32 %f56, %f54, %f55;
mov.b32 %r51, %f56;
shfl.sync.bfly.b32 %r52|%p14, %r51, %r40, %r29, %r31;
mov.b32 %f57, %r52;
add.ftz.f32 %f58, %f56, %f57;
mov.b32 %r53, %f58;
shfl.sync.bfly.b32 %r54|%p15, %r53, %r43, %r29, %r31;
mov.b32 %f59, %r54;
add.ftz.f32 %f60, %f58, %f59;
cvt.rn.f32.s32 %f61, %r20;
div.approx.ftz.f32 %f62, %f50, %f61;
add.ftz.f32 %f63, %f62, %f17;
fma.rn.ftz.f32 %f64, %f61, %f17, %f50;
rsqrt.approx.ftz.f32 %f15, %f63;
mul.ftz.f32 %f65, %f60, %f15;
neg.ftz.f32 %f66, %f65;
div.approx.ftz.f32 %f16, %f66, %f64;
@%p1 bra $L__BB10_14;

not.b32 %r55, %r64;
add.s32 %r11, %r55, %r20;
shr.u32 %r56, %r11, 5;
add.s32 %r57, %r56, 1;
and.b32 %r63, %r57, 3;
setp.eq.s32 %p17, %r63, 0;
@%p17 bra $L__BB10_11;

cvt.s64.s32 %rd45, %r20;
mul.lo.s64 %rd46, %rd45, %rd1;
cvt.s64.s32 %rd47, %r64;
add.s64 %rd48, %rd46, %rd47;
cvta.to.global.u64 %rd49, %rd30;
shl.b64 %rd50, %rd48, 2;
add.s64 %rd67, %rd49, %rd50;
cvta.to.global.u64 %rd51, %rd29;
add.s64 %rd66, %rd51, %rd50;
cvta.to.global.u64 %rd52, %rd28;
add.s64 %rd65, %rd52, %rd50;

$L__BB10_10:
.pragma "nounroll";
ld.global.f32 %f67, [%rd65];
ld.global.f32 %f68, [%rd66];
mul.ftz.f32 %f69, %f16, %f68;
fma.rn.ftz.f32 %f70, %f15, %f67, %f69;
st.global.f32 [%rd67], %f70;
add.s32 %r64, %r64, 32;
add.s64 %rd67, %rd67, 128;
add.s64 %rd66, %rd66, 128;
add.s64 %rd65, %rd65, 128;
add.s32 %r63, %r63, -1;
setp.ne.s32 %p18, %r63, 0;
@%p18 bra $L__BB10_10;

$L__BB10_11:
setp.lt.u32 %p19, %r11, 96;
@%p19 bra $L__BB10_14;

cvt.s64.s32 %rd53, %r20;
mul.lo.s64 %rd54, %rd53, %rd1;
shl.b64 %rd68, %rd54, 2;
cvta.to.global.u64 %rd55, %rd30;
mul.wide.s32 %rd56, %r64, 4;
add.s64 %rd23, %rd55, %rd56;
cvta.to.global.u64 %rd57, %rd29;
add.s64 %rd24, %rd57, %rd56;
cvta.to.global.u64 %rd58, %rd28;
add.s64 %rd25, %rd58, %rd56;

$L__BB10_13:
add.s64 %rd59, %rd25, %rd68;
ld.global.f32 %f71, [%rd59];
add.s64 %rd60, %rd24, %rd68;
ld.global.f32 %f72, [%rd60];
mul.ftz.f32 %f73, %f16, %f72;
fma.rn.ftz.f32 %f74, %f15, %f71, %f73;
add.s64 %rd61, %rd23, %rd68;
st.global.f32 [%rd61], %f74;
ld.global.f32 %f75, [%rd59+128];
ld.global.f32 %f76, [%rd60+128];
mul.ftz.f32 %f77, %f16, %f76;
fma.rn.ftz.f32 %f78, %f15, %f75, %f77;
st.global.f32 [%rd61+128], %f78;
ld.global.f32 %f79, [%rd59+256];
ld.global.f32 %f80, [%rd60+256];
mul.ftz.f32 %f81, %f16, %f80;
fma.rn.ftz.f32 %f82, %f15, %f79, %f81;
st.global.f32 [%rd61+256], %f82;
ld.global.f32 %f83, [%rd59+384];
ld.global.f32 %f84, [%rd60+384];
mul.ftz.f32 %f85, %f16, %f84;
fma.rn.ftz.f32 %f86, %f15, %f83, %f85;
st.global.f32 [%rd61+384], %f86;
add.s64 %rd68, %rd68, 512;
add.s32 %r64, %r64, 128;
setp.lt.s32 %p20, %r64, %r20;
@%p20 bra $L__BB10_13;

$L__BB10_14:
ret;

}
.entry _Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif(
.param .u64 _Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif_param_0,
.param .u64 _Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif_param_1,
.param .u64 _Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif_param_2,
.param .u32 _Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif_param_3,
.param .f32 _Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif_param_4
)
{
.reg .pred %p<32>;
.reg .f32 %f<119>;
.reg .b32 %r<105>;
.reg .b64 %rd<69>;

.shared .align 4 .b8 _ZZ17rms_norm_back_f32ILi1024EEvPKfS1_PfifE8s_sum_xx[128];

.shared .align 4 .b8 _ZZ17rms_norm_back_f32ILi1024EEvPKfS1_PfifE8s_sum_xg[128];

ld.param.u64 %rd28, [_Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif_param_0];
ld.param.u64 %rd29, [_Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif_param_1];
ld.param.u64 %rd30, [_Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif_param_2];
ld.param.u32 %r21, [_Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif_param_3];
ld.param.f32 %f19, [_Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif_param_4];
mov.u32 %r22, %ctaid.x;
mov.u32 %r23, %ntid.y;
mov.u32 %r24, %tid.y;
mad.lo.s32 %r25, %r22, %r23, %r24;
cvt.s64.s32 %rd1, %r25;
mov.u32 %r103, %tid.x;
setp.ge.s32 %p1, %r103, %r21;
mov.f32 %f117, 0f00000000;
mov.f32 %f118, %f117;
@%p1 bra $L__BB11_7;

not.b32 %r26, %r103;
add.s32 %r2, %r26, %r21;
shr.u32 %r27, %r2, 10;
add.s32 %r28, %r27, 1;
and.b32 %r98, %r28, 3;
setp.eq.s32 %p2, %r98, 0;
mov.f32 %f118, 0f00000000;
mov.u32 %r99, %r103;
mov.f32 %f117, %f118;
@%p2 bra $L__BB11_4;

cvt.s64.s32 %rd31, %r21;
mul.lo.s64 %rd32, %rd31, %rd1;
cvt.s64.s32 %rd33, %r103;
add.s64 %rd34, %rd32, %rd33;
cvta.to.global.u64 %rd35, %rd28;
shl.b64 %rd36, %rd34, 2;
add.s64 %rd63, %rd35, %rd36;
cvta.to.global.u64 %rd37, %rd29;
add.s64 %rd62, %rd37, %rd36;
mov.f32 %f118, 0f00000000;
mov.u32 %r99, %r103;

$L__BB11_3:
.pragma "nounroll";
ld.global.f32 %f27, [%rd62];
fma.rn.ftz.f32 %f117, %f27, %f27, %f117;
ld.global.f32 %f28, [%rd63];
fma.rn.ftz.f32 %f118, %f27, %f28, %f118;
add.s32 %r99, %r99, 1024;
add.s64 %rd63, %rd63, 4096;
add.s64 %rd62, %rd62, 4096;
add.s32 %r98, %r98, -1;
setp.ne.s32 %p3, %r98, 0;
@%p3 bra $L__BB11_3;

$L__BB11_4:
setp.lt.u32 %p4, %r2, 3072;
@%p4 bra $L__BB11_7;

cvt.s64.s32 %rd38, %r21;
mul.lo.s64 %rd39, %rd38, %rd1;
shl.b64 %rd64, %rd39, 2;
cvta.to.global.u64 %rd40, %rd28;
mul.wide.s32 %rd41, %r99, 4;
add.s64 %rd9, %rd40, %rd41;
cvta.to.global.u64 %rd42, %rd29;
add.s64 %rd10, %rd42, %rd41;

$L__BB11_6:
add.s64 %rd43, %rd10, %rd64;
ld.global.f32 %f29, [%rd43];
fma.rn.ftz.f32 %f30, %f29, %f29, %f117;
add.s64 %rd44, %rd9, %rd64;
ld.global.f32 %f31, [%rd44];
fma.rn.ftz.f32 %f32, %f29, %f31, %f118;
ld.global.f32 %f33, [%rd43+4096];
fma.rn.ftz.f32 %f34, %f33, %f33, %f30;
ld.global.f32 %f35, [%rd44+4096];
fma.rn.ftz.f32 %f36, %f33, %f35, %f32;
ld.global.f32 %f37, [%rd43+8192];
fma.rn.ftz.f32 %f38, %f37, %f37, %f34;
ld.global.f32 %f39, [%rd44+8192];
fma.rn.ftz.f32 %f40, %f37, %f39, %f36;
ld.global.f32 %f41, [%rd43+12288];
fma.rn.ftz.f32 %f117, %f41, %f41, %f38;
ld.global.f32 %f42, [%rd44+12288];
fma.rn.ftz.f32 %f118, %f41, %f42, %f40;
add.s64 %rd64, %rd64, 16384;
add.s32 %r99, %r99, 4096;
setp.lt.s32 %p5, %r99, %r21;
@%p5 bra $L__BB11_6;

$L__BB11_7:
mov.b32 %r29, %f117;
mov.u32 %r30, 31;
mov.u32 %r31, 16;
mov.u32 %r32, -1;
shfl.sync.bfly.b32 %r33|%p6, %r29, %r31, %r30, %r32;
mov.b32 %f43, %r33;
add.ftz.f32 %f44, %f117, %f43;
mov.b32 %r34, %f44;
mov.u32 %r35, 8;
shfl.sync.bfly.b32 %r36|%p7, %r34, %r35, %r30, %r32;
mov.b32 %f45, %r36;
add.ftz.f32 %f46, %f44, %f45;
mov.b32 %r37, %f46;
mov.u32 %r38, 4;
shfl.sync.bfly.b32 %r39|%p8, %r37, %r38, %r30, %r32;
mov.b32 %f47, %r39;
add.ftz.f32 %f48, %f46, %f47;
mov.b32 %r40, %f48;
mov.u32 %r41, 2;
shfl.sync.bfly.b32 %r42|%p9, %r40, %r41, %r30, %r32;
mov.b32 %f49, %r42;
add.ftz.f32 %f50, %f48, %f49;
mov.b32 %r43, %f50;
mov.u32 %r44, 1;
shfl.sync.bfly.b32 %r45|%p10, %r43, %r44, %r30, %r32;
mov.b32 %f51, %r45;
add.ftz.f32 %f15, %f50, %f51;
mov.b32 %r46, %f118;
shfl.sync.bfly.b32 %r47|%p11, %r46, %r31, %r30, %r32;
mov.b32 %f52, %r47;
add.ftz.f32 %f53, %f118, %f52;
mov.b32 %r48, %f53;
shfl.sync.bfly.b32 %r49|%p12, %r48, %r35, %r30, %r32;
mov.b32 %f54, %r49;
add.ftz.f32 %f55, %f53, %f54;
mov.b32 %r50, %f55;
shfl.sync.bfly.b32 %r51|%p13, %r50, %r38, %r30, %r32;
mov.b32 %f56, %r51;
add.ftz.f32 %f57, %f55, %f56;
mov.b32 %r52, %f57;
shfl.sync.bfly.b32 %r53|%p14, %r52, %r41, %r30, %r32;
mov.b32 %f58, %r53;
add.ftz.f32 %f59, %f57, %f58;
mov.b32 %r54, %f59;
shfl.sync.bfly.b32 %r55|%p15, %r54, %r44, %r30, %r32;
mov.b32 %f60, %r55;
add.ftz.f32 %f16, %f59, %f60;
and.b32 %r11, %r103, 31;
setp.ne.s32 %p16, %r11, 0;
@%p16 bra $L__BB11_9;

shr.u32 %r56, %r103, 3;
and.b32 %r57, %r56, 536870908;
mov.u32 %r58, _ZZ17rms_norm_back_f32ILi1024EEvPKfS1_PfifE8s_sum_xx;
add.s32 %r59, %r58, %r57;
st.shared.f32 [%r59], %f15;
mov.u32 %r60, _ZZ17rms_norm_back_f32ILi1024EEvPKfS1_PfifE8s_sum_xg;
add.s32 %r61, %r60, %r57;
st.shared.f32 [%r61], %f16;

$L__BB11_9:
bar.sync 0;
shl.b32 %r62, %r11, 2;
mov.u32 %r63, _ZZ17rms_norm_back_f32ILi1024EEvPKfS1_PfifE8s_sum_xx;
add.s32 %r64, %r63, %r62;
ld.shared.f32 %f61, [%r64];
mov.b32 %r66, %f61;
shfl.sync.bfly.b32 %r70|%p18, %r66, %r31, %r30, %r32;
mov.b32 %f62, %r70;
add.ftz.f32 %f63, %f61, %f62;
mov.b32 %r71, %f63;
shfl.sync.bfly.b32 %r73|%p19, %r71, %r35, %r30, %r32;
mov.b32 %f64, %r73;
add.ftz.f32 %f65, %f63, %f64;
mov.b32 %r74, %f65;
shfl.sync.bfly.b32 %r76|%p20, %r74, %r38, %r30, %r32;
mov.b32 %f66, %r76;
add.ftz.f32 %f67, %f65, %f66;
mov.b32 %r77, %f67;
shfl.sync.bfly.b32 %r78|%p21, %r77, %r41, %r30, %r32;
mov.b32 %f68, %r78;
add.ftz.f32 %f69, %f67, %f68;
mov.b32 %r79, %f69;
shfl.sync.bfly.b32 %r81|%p22, %r79, %r44, %r30, %r32;
mov.b32 %f70, %r81;
add.ftz.f32 %f71, %f69, %f70;
mov.u32 %r82, _ZZ17rms_norm_back_f32ILi1024EEvPKfS1_PfifE8s_sum_xg;
add.s32 %r83, %r82, %r62;
ld.shared.f32 %f72, [%r83];
mov.b32 %r84, %f72;
shfl.sync.bfly.b32 %r85|%p23, %r84, %r31, %r30, %r32;
mov.b32 %f73, %r85;
add.ftz.f32 %f74, %f72, %f73;
mov.b32 %r86, %f74;
shfl.sync.bfly.b32 %r87|%p24, %r86, %r35, %r30, %r32;
mov.b32 %f75, %r87;
add.ftz.f32 %f76, %f74, %f75;
mov.b32 %r88, %f76;
shfl.sync.bfly.b32 %r89|%p25, %r88, %r38, %r30, %r32;
mov.b32 %f77, %r89;
add.ftz.f32 %f78, %f76, %f77;
mov.b32 %r90, %f78;
shfl.sync.bfly.b32 %r91|%p26, %r90, %r41, %r30, %r32;
mov.b32 %f79, %r91;
add.ftz.f32 %f80, %f78, %f79;
mov.b32 %r92, %f80;
shfl.sync.bfly.b32 %r93|%p27, %r92, %r44, %r30, %r32;
mov.b32 %f81, %r93;
add.ftz.f32 %f82, %f80, %f81;
cvt.rn.f32.s32 %f83, %r21;
div.approx.ftz.f32 %f84, %f71, %f83;
add.ftz.f32 %f85, %f84, %f19;
fma.rn.ftz.f32 %f86, %f83, %f19, %f71;
rsqrt.approx.ftz.f32 %f17, %f85;
mul.ftz.f32 %f87, %f82, %f17;
neg.ftz.f32 %f88, %f87;
div.approx.ftz.f32 %f18, %f88, %f86;
@%p1 bra $L__BB11_16;

not.b32 %r94, %r103;
add.s32 %r12, %r94, %r21;
shr.u32 %r95, %r12, 10;
add.s32 %r96, %r95, 1;
and.b32 %r102, %r96, 3;
setp.eq.s32 %p28, %r102, 0;
@%p28 bra $L__BB11_13;

cvt.s64.s32 %rd45, %r21;
mul.lo.s64 %rd46, %rd45, %rd1;
cvt.s64.s32 %rd47, %r103;
add.s64 %rd48, %rd46, %rd47;
cvta.to.global.u64 %rd49, %rd30;
shl.b64 %rd50, %rd48, 2;
add.s64 %rd67, %rd49, %rd50;
cvta.to.global.u64 %rd51, %rd29;
add.s64 %rd66, %rd51, %rd50;
cvta.to.global.u64 %rd52, %rd28;
add.s64 %rd65, %rd52, %rd50;

$L__BB11_12:
.pragma "nounroll";
ld.global.f32 %f89, [%rd65];
ld.global.f32 %f90, [%rd66];
mul.ftz.f32 %f91, %f18, %f90;
fma.rn.ftz.f32 %f92, %f17, %f89, %f91;
st.global.f32 [%rd67], %f92;
add.s32 %r103, %r103, 1024;
add.s64 %rd67, %rd67, 4096;
add.s64 %rd66, %rd66, 4096;
add.s64 %rd65, %rd65, 4096;
add.s32 %r102, %r102, -1;
setp.ne.s32 %p29, %r102, 0;
@%p29 bra $L__BB11_12;

$L__BB11_13:
setp.lt.u32 %p30, %r12, 3072;
@%p30 bra $L__BB11_16;

cvt.s64.s32 %rd53, %r21;
mul.lo.s64 %rd54, %rd53, %rd1;
shl.b64 %rd68, %rd54, 2;
cvta.to.global.u64 %rd55, %rd30;
mul.wide.s32 %rd56, %r103, 4;
add.s64 %rd23, %rd55, %rd56;
cvta.to.global.u64 %rd57, %rd29;
add.s64 %rd24, %rd57, %rd56;
cvta.to.global.u64 %rd58, %rd28;
add.s64 %rd25, %rd58, %rd56;

$L__BB11_15:
add.s64 %rd59, %rd25, %rd68;
ld.global.f32 %f93, [%rd59];
add.s64 %rd60, %rd24, %rd68;
ld.global.f32 %f94, [%rd60];
mul.ftz.f32 %f95, %f18, %f94;
fma.rn.ftz.f32 %f96, %f17, %f93, %f95;
add.s64 %rd61, %rd23, %rd68;
st.global.f32 [%rd61], %f96;
ld.global.f32 %f97, [%rd59+4096];
ld.global.f32 %f98, [%rd60+4096];
mul.ftz.f32 %f99, %f18, %f98;
fma.rn.ftz.f32 %f100, %f17, %f97, %f99;
st.global.f32 [%rd61+4096], %f100;
ld.global.f32 %f101, [%rd59+8192];
ld.global.f32 %f102, [%rd60+8192];
mul.ftz.f32 %f103, %f18, %f102;
fma.rn.ftz.f32 %f104, %f17, %f101, %f103;
st.global.f32 [%rd61+8192], %f104;
ld.global.f32 %f105, [%rd59+12288];
ld.global.f32 %f106, [%rd60+12288];
mul.ftz.f32 %f107, %f18, %f106;
fma.rn.ftz.f32 %f108, %f17, %f105, %f107;
st.global.f32 [%rd61+12288], %f108;
add.s64 %rd68, %rd68, 16384;
add.s32 %r103, %r103, 4096;
setp.lt.s32 %p31, %r103, %r21;
@%p31 bra $L__BB11_15;

$L__BB11_16:
ret;

}
.entry _Z11l2_norm_f32ILi32EEvPKfPfixxxf(
.param .u64 _Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_0,
.param .u64 _Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_1,
.param .u32 _Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_2,
.param .u64 _Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_3,
.param .u64 _Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_4,
.param .u64 _Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_5,
.param .f32 _Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_6
)
{
.reg .pred %p<16>;
.reg .f32 %f<49>;
.reg .b32 %r<60>;
.reg .b64 %rd<72>;


ld.param.u64 %rd30, [_Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_0];
ld.param.u64 %rd31, [_Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_1];
ld.param.u32 %r20, [_Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_2];
ld.param.u64 %rd27, [_Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_3];
ld.param.u64 %rd28, [_Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_4];
ld.param.u64 %rd29, [_Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_5];
ld.param.f32 %f9, [_Z11l2_norm_f32ILi32EEvPKfPfixxxf_param_6];
cvta.to.global.u64 %rd1, %rd31;
cvta.to.global.u64 %rd2, %rd30;
mov.u32 %r21, %ctaid.z;
cvt.s64.s32 %rd3, %r21;
mov.u32 %r22, %ctaid.y;
cvt.s64.s32 %rd4, %r22;
mov.u32 %r23, %ctaid.x;
cvt.s64.s32 %rd5, %r23;
mov.u32 %r24, %nctaid.y;
mad.lo.s32 %r25, %r21, %r24, %r22;
mov.u32 %r26, %nctaid.x;
mad.lo.s32 %r27, %r25, %r26, %r23;
mul.lo.s32 %r28, %r27, %r20;
cvt.s64.s32 %rd6, %r28;
mov.u32 %r58, %tid.x;
setp.ge.s32 %p1, %r58, %r20;
mov.f32 %f48, 0f00000000;
@%p1 bra $L__BB12_7;

not.b32 %r29, %r58;
add.s32 %r2, %r29, %r20;
shr.u32 %r30, %r2, 5;
add.s32 %r31, %r30, 1;
and.b32 %r53, %r31, 3;
setp.eq.s32 %p2, %r53, 0;
mov.f32 %f48, 0f00000000;
mov.u32 %r54, %r58;
@%p2 bra $L__BB12_4;

mul.lo.s64 %rd32, %rd29, %rd3;
mul.lo.s64 %rd33, %rd28, %rd4;
add.s64 %rd34, %rd32, %rd33;
mul.lo.s64 %rd35, %rd27, %rd5;
add.s64 %rd36, %rd34, %rd35;
cvt.s64.s32 %rd37, %r58;
add.s64 %rd38, %rd36, %rd37;
shl.b64 %rd39, %rd38, 2;
add.s64 %rd66, %rd2, %rd39;
mov.f32 %f48, 0f00000000;
mov.u32 %r54, %r58;

$L__BB12_3:
.pragma "nounroll";
ld.global.f32 %f14, [%rd66];
fma.rn.ftz.f32 %f48, %f14, %f14, %f48;
add.s32 %r54, %r54, 32;
add.s64 %rd66, %rd66, 128;
add.s32 %r53, %r53, -1;
setp.ne.s32 %p3, %r53, 0;
@%p3 bra $L__BB12_3;

$L__BB12_4:
setp.lt.u32 %p4, %r2, 96;
@%p4 bra $L__BB12_7;

mul.lo.s64 %rd40, %rd29, %rd3;
mul.lo.s64 %rd41, %rd28, %rd4;
add.s64 %rd42, %rd40, %rd41;
mul.lo.s64 %rd43, %rd27, %rd5;
add.s64 %rd44, %rd42, %rd43;
shl.b64 %rd45, %rd44, 2;
add.s64 %rd67, %rd2, %rd45;
mul.wide.s32 %rd11, %r54, 4;

$L__BB12_6:
add.s64 %rd46, %rd67, %rd11;
ld.global.f32 %f15, [%rd46];
fma.rn.ftz.f32 %f16, %f15, %f15, %f48;
ld.global.f32 %f17, [%rd46+128];
fma.rn.ftz.f32 %f18, %f17, %f17, %f16;
ld.global.f32 %f19, [%rd46+256];
fma.rn.ftz.f32 %f20, %f19, %f19, %f18;
ld.global.f32 %f21, [%rd46+384];
fma.rn.ftz.f32 %f48, %f21, %f21, %f20;
add.s64 %rd67, %rd67, 512;
add.s32 %r54, %r54, 128;
setp.lt.s32 %p5, %r54, %r20;
@%p5 bra $L__BB12_6;

$L__BB12_7:
mov.b32 %r32, %f48;
mov.u32 %r33, 31;
mov.u32 %r34, 16;
mov.u32 %r35, -1;
shfl.sync.bfly.b32 %r36|%p6, %r32, %r34, %r33, %r35;
mov.b32 %f22, %r36;
add.ftz.f32 %f23, %f48, %f22;
mov.b32 %r37, %f23;
mov.u32 %r38, 8;
shfl.sync.bfly.b32 %r39|%p7, %r37, %r38, %r33, %r35;
mov.b32 %f24, %r39;
add.ftz.f32 %f25, %f23, %f24;
mov.b32 %r40, %f25;
mov.u32 %r41, 4;
shfl.sync.bfly.b32 %r42|%p8, %r40, %r41, %r33, %r35;
mov.b32 %f26, %r42;
add.ftz.f32 %f27, %f25, %f26;
mov.b32 %r43, %f27;
mov.u32 %r44, 2;
shfl.sync.bfly.b32 %r45|%p9, %r43, %r44, %r33, %r35;
mov.b32 %f28, %r45;
add.ftz.f32 %f29, %f27, %f28;
mov.b32 %r46, %f29;
mov.u32 %r47, 1;
shfl.sync.bfly.b32 %r48|%p10, %r46, %r47, %r33, %r35;
mov.b32 %f30, %r48;
add.ftz.f32 %f31, %f29, %f30;
mul.ftz.f32 %f32, %f9, %f9;
max.ftz.f32 %f33, %f31, %f32;
rsqrt.approx.ftz.f32 %f8, %f33;
@%p1 bra $L__BB12_14;

not.b32 %r49, %r58;
add.s32 %r11, %r49, %r20;
shr.u32 %r50, %r11, 5;
add.s32 %r51, %r50, 1;
and.b32 %r57, %r51, 3;
setp.eq.s32 %p12, %r57, 0;
@%p12 bra $L__BB12_11;

cvt.s64.s32 %rd47, %r58;
add.s64 %rd48, %rd47, %rd6;
shl.b64 %rd49, %rd48, 2;
add.s64 %rd69, %rd1, %rd49;
mul.lo.s64 %rd50, %rd28, %rd4;
mul.lo.s64 %rd51, %rd29, %rd3;
add.s64 %rd52, %rd51, %rd50;
mul.lo.s64 %rd53, %rd27, %rd5;
add.s64 %rd54, %rd52, %rd53;
add.s64 %rd55, %rd54, %rd47;
shl.b64 %rd56, %rd55, 2;
add.s64 %rd68, %rd2, %rd56;

$L__BB12_10:
.pragma "nounroll";
ld.global.f32 %f34, [%rd68];
mul.ftz.f32 %f35, %f8, %f34;
st.global.f32 [%rd69], %f35;
add.s32 %r58, %r58, 32;
add.s64 %rd69, %rd69, 128;
add.s64 %rd68, %rd68, 128;
add.s32 %r57, %r57, -1;
setp.ne.s32 %p13, %r57, 0;
@%p13 bra $L__BB12_10;

$L__BB12_11:
setp.lt.u32 %p14, %r11, 96;
@%p14 bra $L__BB12_14;

shl.b64 %rd57, %rd6, 2;
add.s64 %rd71, %rd1, %rd57;
mul.lo.s64 %rd58, %rd28, %rd4;
mul.lo.s64 %rd59, %rd29, %rd3;
add.s64 %rd60, %rd59, %rd58;
mul.lo.s64 %rd61, %rd27, %rd5;
add.s64 %rd62, %rd60, %rd61;
shl.b64 %rd63, %rd62, 2;
add.s64 %rd70, %rd2, %rd63;
mul.wide.s32 %rd22, %r58, 4;

$L__BB12_13:
add.s64 %rd64, %rd70, %rd22;
ld.global.f32 %f36, [%rd64];
mul.ftz.f32 %f37, %f8, %f36;
add.s64 %rd65, %rd71, %rd22;
st.global.f32 [%rd65], %f37;
ld.global.f32 %f38, [%rd64+128];
mul.ftz.f32 %f39, %f8, %f38;
st.global.f32 [%rd65+128], %f39;
ld.global.f32 %f40, [%rd64+256];
mul.ftz.f32 %f41, %f8, %f40;
st.global.f32 [%rd65+256], %f41;
ld.global.f32 %f42, [%rd64+384];
mul.ftz.f32 %f43, %f8, %f42;
st.global.f32 [%rd65+384], %f43;
add.s64 %rd71, %rd71, 512;
add.s64 %rd70, %rd70, 512;
add.s32 %r58, %r58, 128;
setp.lt.s32 %p15, %r58, %r20;
@%p15 bra $L__BB12_13;

$L__BB12_14:
ret;

}
.entry _Z11l2_norm_f32ILi1024EEvPKfPfixxxf(
.param .u64 _Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_0,
.param .u64 _Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_1,
.param .u32 _Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_2,
.param .u64 _Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_3,
.param .u64 _Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_4,
.param .u64 _Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_5,
.param .f32 _Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_6
)
{
.reg .pred %p<22>;
.reg .f32 %f<60>;
.reg .b32 %r<85>;
.reg .b64 %rd<73>;

.shared .align 4 .b8 _ZZ11l2_norm_f32ILi1024EEvPKfPfixxxfE5s_sum[128];

ld.param.u64 %rd30, [_Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_0];
ld.param.u64 %rd26, [_Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_1];
ld.param.u32 %r21, [_Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_2];
ld.param.u64 %rd27, [_Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_3];
ld.param.u64 %rd28, [_Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_4];
ld.param.u64 %rd29, [_Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_5];
ld.param.f32 %f10, [_Z11l2_norm_f32ILi1024EEvPKfPfixxxf_param_6];
cvta.to.global.u64 %rd1, %rd30;
mov.u32 %r22, %ctaid.z;
cvt.s64.s32 %rd2, %r22;
mov.u32 %r23, %ctaid.y;
cvt.s64.s32 %rd3, %r23;
mov.u32 %r24, %ctaid.x;
cvt.s64.s32 %rd4, %r24;
mov.u32 %r25, %nctaid.y;
mad.lo.s32 %r26, %r22, %r25, %r23;
mov.u32 %r27, %nctaid.x;
mad.lo.s32 %r28, %r26, %r27, %r24;
mul.lo.s32 %r29, %r28, %r21;
cvt.s64.s32 %rd5, %r29;
mov.u32 %r83, %tid.x;
setp.ge.s32 %p1, %r83, %r21;
mov.f32 %f59, 0f00000000;
@%p1 bra $L__BB13_7;

not.b32 %r30, %r83;
add.s32 %r2, %r30, %r21;
shr.u32 %r31, %r2, 10;
add.s32 %r32, %r31, 1;
and.b32 %r78, %r32, 3;
setp.eq.s32 %p2, %r78, 0;
mov.f32 %f59, 0f00000000;
mov.u32 %r79, %r83;
@%p2 bra $L__BB13_4;

mul.lo.s64 %rd31, %rd29, %rd2;
mul.lo.s64 %rd32, %rd28, %rd3;
add.s64 %rd33, %rd31, %rd32;
mul.lo.s64 %rd34, %rd27, %rd4;
add.s64 %rd35, %rd33, %rd34;
cvt.s64.s32 %rd36, %r83;
add.s64 %rd37, %rd35, %rd36;
shl.b64 %rd38, %rd37, 2;
add.s64 %rd67, %rd1, %rd38;
mov.f32 %f59, 0f00000000;
mov.u32 %r79, %r83;

$L__BB13_3:
.pragma "nounroll";
ld.global.f32 %f15, [%rd67];
fma.rn.ftz.f32 %f59, %f15, %f15, %f59;
add.s32 %r79, %r79, 1024;
add.s64 %rd67, %rd67, 4096;
add.s32 %r78, %r78, -1;
setp.ne.s32 %p3, %r78, 0;
@%p3 bra $L__BB13_3;

$L__BB13_4:
setp.lt.u32 %p4, %r2, 3072;
@%p4 bra $L__BB13_7;

mul.lo.s64 %rd39, %rd29, %rd2;
mul.lo.s64 %rd40, %rd28, %rd3;
add.s64 %rd41, %rd39, %rd40;
mul.lo.s64 %rd42, %rd27, %rd4;
add.s64 %rd43, %rd41, %rd42;
shl.b64 %rd44, %rd43, 2;
add.s64 %rd68, %rd1, %rd44;
mul.wide.s32 %rd10, %r79, 4;

$L__BB13_6:
add.s64 %rd45, %rd68, %rd10;
ld.global.f32 %f16, [%rd45];
fma.rn.ftz.f32 %f17, %f16, %f16, %f59;
ld.global.f32 %f18, [%rd45+4096];
fma.rn.ftz.f32 %f19, %f18, %f18, %f17;
ld.global.f32 %f20, [%rd45+8192];
fma.rn.ftz.f32 %f21, %f20, %f20, %f19;
ld.global.f32 %f22, [%rd45+12288];
fma.rn.ftz.f32 %f59, %f22, %f22, %f21;
add.s64 %rd68, %rd68, 16384;
add.s32 %r79, %r79, 4096;
setp.lt.s32 %p5, %r79, %r21;
@%p5 bra $L__BB13_6;

$L__BB13_7:
mov.b32 %r33, %f59;
mov.u32 %r34, 31;
mov.u32 %r35, 16;
mov.u32 %r36, -1;
shfl.sync.bfly.b32 %r37|%p6, %r33, %r35, %r34, %r36;
mov.b32 %f23, %r37;
add.ftz.f32 %f24, %f59, %f23;
mov.b32 %r38, %f24;
mov.u32 %r39, 8;
shfl.sync.bfly.b32 %r40|%p7, %r38, %r39, %r34, %r36;
mov.b32 %f25, %r40;
add.ftz.f32 %f26, %f24, %f25;
mov.b32 %r41, %f26;
mov.u32 %r42, 4;
shfl.sync.bfly.b32 %r43|%p8, %r41, %r42, %r34, %r36;
mov.b32 %f27, %r43;
add.ftz.f32 %f28, %f26, %f27;
mov.b32 %r44, %f28;
mov.u32 %r45, 2;
shfl.sync.bfly.b32 %r46|%p9, %r44, %r45, %r34, %r36;
mov.b32 %f29, %r46;
add.ftz.f32 %f30, %f28, %f29;
mov.b32 %r47, %f30;
mov.u32 %r48, 1;
shfl.sync.bfly.b32 %r49|%p10, %r47, %r48, %r34, %r36;
mov.b32 %f31, %r49;
add.ftz.f32 %f8, %f30, %f31;
and.b32 %r11, %r83, 31;
setp.ne.s32 %p11, %r11, 0;
@%p11 bra $L__BB13_9;

shr.u32 %r50, %r83, 3;
and.b32 %r51, %r50, 536870908;
mov.u32 %r52, _ZZ11l2_norm_f32ILi1024EEvPKfPfixxxfE5s_sum;
add.s32 %r53, %r52, %r51;
st.shared.f32 [%r53], %f8;

$L__BB13_9:
bar.sync 0;
shl.b32 %r54, %r11, 2;
mov.u32 %r55, _ZZ11l2_norm_f32ILi1024EEvPKfPfixxxfE5s_sum;
add.s32 %r56, %r55, %r54;
ld.shared.f32 %f32, [%r56];
mov.b32 %r58, %f32;
shfl.sync.bfly.b32 %r62|%p13, %r58, %r35, %r34, %r36;
mov.b32 %f33, %r62;
add.ftz.f32 %f34, %f32, %f33;
mov.b32 %r63, %f34;
shfl.sync.bfly.b32 %r65|%p14, %r63, %r39, %r34, %r36;
mov.b32 %f35, %r65;
add.ftz.f32 %f36, %f34, %f35;
mov.b32 %r66, %f36;
shfl.sync.bfly.b32 %r68|%p15, %r66, %r42, %r34, %r36;
mov.b32 %f37, %r68;
add.ftz.f32 %f38, %f36, %f37;
mov.b32 %r69, %f38;
shfl.sync.bfly.b32 %r70|%p16, %r69, %r45, %r34, %r36;
mov.b32 %f39, %r70;
add.ftz.f32 %f40, %f38, %f39;
mov.b32 %r71, %f40;
shfl.sync.bfly.b32 %r73|%p17, %r71, %r48, %r34, %r36;
mov.b32 %f41, %r73;
add.ftz.f32 %f42, %f40, %f41;
mul.ftz.f32 %f43, %f10, %f10;
max.ftz.f32 %f44, %f42, %f43;
rsqrt.approx.ftz.f32 %f9, %f44;
@%p1 bra $L__BB13_16;

not.b32 %r74, %r83;
add.s32 %r12, %r74, %r21;
shr.u32 %r75, %r12, 10;
add.s32 %r76, %r75, 1;
and.b32 %r82, %r76, 3;
setp.eq.s32 %p18, %r82, 0;
@%p18 bra $L__BB13_13;

cvt.s64.s32 %rd46, %r83;
add.s64 %rd47, %rd46, %rd5;
cvta.to.global.u64 %rd48, %rd26;
shl.b64 %rd49, %rd47, 2;
add.s64 %rd70, %rd48, %rd49;
mul.lo.s64 %rd50, %rd28, %rd3;
mul.lo.s64 %rd51, %rd29, %rd2;
add.s64 %rd52, %rd51, %rd50;
mul.lo.s64 %rd53, %rd27, %rd4;
add.s64 %rd54, %rd52, %rd53;
add.s64 %rd55, %rd54, %rd46;
shl.b64 %rd56, %rd55, 2;
add.s64 %rd69, %rd1, %rd56;

$L__BB13_12:
.pragma "nounroll";
ld.global.f32 %f45, [%rd69];
mul.ftz.f32 %f46, %f9, %f45;
st.global.f32 [%rd70], %f46;
add.s32 %r83, %r83, 1024;
add.s64 %rd70, %rd70, 4096;
add.s64 %rd69, %rd69, 4096;
add.s32 %r82, %r82, -1;
setp.ne.s32 %p19, %r82, 0;
@%p19 bra $L__BB13_12;

$L__BB13_13:
setp.lt.u32 %p20, %r12, 3072;
@%p20 bra $L__BB13_16;

cvta.to.global.u64 %rd57, %rd26;
shl.b64 %rd58, %rd5, 2;
add.s64 %rd72, %rd57, %rd58;
mul.lo.s64 %rd59, %rd28, %rd3;
mul.lo.s64 %rd60, %rd29, %rd2;
add.s64 %rd61, %rd60, %rd59;
mul.lo.s64 %rd62, %rd27, %rd4;
add.s64 %rd63, %rd61, %rd62;
shl.b64 %rd64, %rd63, 2;
add.s64 %rd71, %rd1, %rd64;
mul.wide.s32 %rd21, %r83, 4;

$L__BB13_15:
add.s64 %rd65, %rd71, %rd21;
ld.global.f32 %f47, [%rd65];
mul.ftz.f32 %f48, %f9, %f47;
add.s64 %rd66, %rd72, %rd21;
st.global.f32 [%rd66], %f48;
ld.global.f32 %f49, [%rd65+4096];
mul.ftz.f32 %f50, %f9, %f49;
st.global.f32 [%rd66+4096], %f50;
ld.global.f32 %f51, [%rd65+8192];
mul.ftz.f32 %f52, %f9, %f51;
st.global.f32 [%rd66+8192], %f52;
ld.global.f32 %f53, [%rd65+12288];
mul.ftz.f32 %f54, %f9, %f53;
st.global.f32 [%rd66+12288], %f54;
add.s64 %rd72, %rd72, 16384;
add.s64 %rd71, %rd71, 16384;
add.s32 %r83, %r83, 4096;
setp.lt.s32 %p21, %r83, %r21;
@%p21 bra $L__BB13_15;

$L__BB13_16:
ret;

}

   ELFA                    (3     ("     V @ 8  @ D   .shstrtab .strtab .symtab .symtab_shndx .note.nv.tkinfo .note.nv.cuinfo .nv.info .text._Z11l2_norm_f32ILi1024EEvPKfPfixxxf .nv.info._Z11l2_norm_f32ILi1024EEvPKfPfixxxf .nv.shared._Z11l2_norm_f32ILi1024EEvPKfPfixxxf .nv.global.init .nv.constant4 .nv.constant0._Z11l2_norm_f32ILi1024EEvPKfPfixxxf .rel.nv.constant0._Z11l2_norm_f32ILi1024EEvPKfPfixxxf .text._Z11l2_norm_f32ILi32EEvPKfPfixxxf .nv.info._Z11l2_norm_f32ILi32EEvPKfPfixxxf .nv.shared._Z11l2_norm_f32ILi32EEvPKfPfixxxf .nv.constant0._Z11l2_norm_f32ILi32EEvPKfPfixxxf .rel.nv.constant0._Z11l2_norm_f32ILi32EEvPKfPfixxxf .text._Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif .nv.info._Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif .nv.shared._Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif .nv.constant0._Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif .rel.nv.constant0._Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif .text._Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif .nv.info._Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif .nv.shared._Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif .nv.constant0._Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif .rel.nv.constant0._Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif .text._Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.info._Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.shared._Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.constant0._Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .rel.nv.constant0._Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .text._Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.info._Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.shared._Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.constant0._Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .rel.nv.constant0._Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .text._Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.info._Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.shared._Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.constant0._Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .rel.nv.constant0._Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .text._Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.info._Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.shared._Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.constant0._Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .rel.nv.constant0._Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .text._Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.info._Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.shared._Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.constant0._Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .rel.nv.constant0._Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .text._Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.info._Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.shared._Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.constant0._Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .rel.nv.constant0._Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .text._Z14group_norm_f32ILi1024EEvPKfPfiif .nv.info._Z14group_norm_f32ILi1024EEvPKfPfiif .nv.shared._Z14group_norm_f32ILi1024EEvPKfPfiif .nv.constant2._Z14group_norm_f32ILi1024EEvPKfPfiif .nv.constant0._Z14group_norm_f32ILi1024EEvPKfPfiif .rel.nv.constant0._Z14group_norm_f32ILi1024EEvPKfPfiif .text._Z14group_norm_f32ILi32EEvPKfPfiif .nv.info._Z14group_norm_f32ILi32EEvPKfPfiif .nv.shared._Z14group_norm_f32ILi32EEvPKfPfiif .nv.constant2._Z14group_norm_f32ILi32EEvPKfPfiif .nv.constant0._Z14group_norm_f32ILi32EEvPKfPfiif .rel.nv.constant0._Z14group_norm_f32ILi32EEvPKfPfiif .text._Z8norm_f32ILi1024EEvPKfPfixxxf .nv.info._Z8norm_f32ILi1024EEvPKfPfixxxf .nv.shared._Z8norm_f32ILi1024EEvPKfPfixxxf .nv.constant0._Z8norm_f32ILi1024EEvPKfPfixxxf .rel.nv.constant0._Z8norm_f32ILi1024EEvPKfPfixxxf .text._Z8norm_f32ILi32EEvPKfPfixxxf .nv.info._Z8norm_f32ILi32EEvPKfPfixxxf .nv.shared._Z8norm_f32ILi32EEvPKfPfixxxf .nv.constant0._Z8norm_f32ILi32EEvPKfPfixxxf .rel.nv.constant0._Z8norm_f32ILi32EEvPKfPfixxxf .debug_frame .rel.nv.constant4 .rel.debug_frame .rela.debug_frame .nv.callgraph .nv.prototype .nv.rel.action  .shstrtab .strtab .symtab .symtab_shndx .note.nv.tkinfo .note.nv.cuinfo .nv.info _Z11l2_norm_f32ILi1024EEvPKfPfixxxf .text._Z11l2_norm_f32ILi1024EEvPKfPfixxxf .nv.info._Z11l2_norm_f32ILi1024EEvPKfPfixxxf .nv.shared._Z11l2_norm_f32ILi1024EEvPKfPfixxxf .nv.global.init kmask_iq2xs .nv.constant4 ksigns_iq2xs ksigns64 iq2xxs_grid iq2xs_grid iq2s_grid iq3xxs_grid iq3s_grid kvalues_iq4nl kvalues_mxfp4 iq1s_grid_gpu .rel.nv.constant0._Z11l2_norm_f32ILi1024EEvPKfPfixxxf .nv.constant0._Z11l2_norm_f32ILi1024EEvPKfPfixxxf _Z11l2_norm_f32ILi32EEvPKfPfixxxf .text._Z11l2_norm_f32ILi32EEvPKfPfixxxf .nv.info._Z11l2_norm_f32ILi32EEvPKfPfixxxf .nv.shared._Z11l2_norm_f32ILi32EEvPKfPfixxxf .rel.nv.constant0._Z11l2_norm_f32ILi32EEvPKfPfixxxf .nv.constant0._Z11l2_norm_f32ILi32EEvPKfPfixxxf _Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif .text._Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif .nv.info._Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif .nv.shared._Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif .rel.nv.constant0._Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif .nv.constant0._Z17rms_norm_back_f32ILi1024EEvPKfS1_Pfif _Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif .text._Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif .nv.info._Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif .nv.shared._Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif .rel.nv.constant0._Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif .nv.constant0._Z17rms_norm_back_f32ILi32EEvPKfS1_Pfif _Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .text._Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.info._Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.shared._Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .rel.nv.constant0._Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.constant0._Z12rms_norm_f32ILi1024ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ _Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .text._Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.info._Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.shared._Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .rel.nv.constant0._Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.constant0._Z12rms_norm_f32ILi256ELb1ELb1EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ _Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .text._Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.info._Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.shared._Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .rel.nv.constant0._Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.constant0._Z12rms_norm_f32ILi1024ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ _Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .text._Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.info._Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.shared._Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .rel.nv.constant0._Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.constant0._Z12rms_norm_f32ILi256ELb1ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ _Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .text._Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.info._Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.shared._Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .rel.nv.constant0._Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.constant0._Z12rms_norm_f32ILi1024ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ _Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .text._Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.info._Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.shared._Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .rel.nv.constant0._Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ .nv.constant0._Z12rms_norm_f32ILi256ELb0ELb0EEvPKfPfixxxfS1_xxx5uint3S3_S3_S3_S1_xxxS3_S3_S3_S3_ _Z14group_norm_f32ILi1024EEvPKfPfiif .text._Z14group_norm_f32ILi1024EEvPKfPfiif .nv.info._Z14group_norm_f32ILi1024EEvPKfPfiif .nv.shared._Z14group_norm_f32ILi1024EEvPKfPfiif .nv.constant2._Z14group_norm_f32ILi1024EEvPKfPfiif .rel.nv.constant0._Z14group_norm_f32ILi1024EEvPKfPfiif .nv.constant0._Z14group_norm_f32ILi1024EEvPKfPfiif _Z14group_norm_f32ILi32EEvPKfPfiif .text._Z14group_norm_f32ILi32EEvPKfPfiif .nv.info._Z14group_norm_f32ILi32EEvPKfPfiif .nv.shared._Z14group_norm_f32ILi32EEvPKfPfiif .nv.constant2._Z14group_norm_f32ILi32EEvPKfPfiif .rel.nv.constant0._Z14group_norm_f32ILi32EEvPKfPfiif .nv.constant0._Z14group_norm_f32ILi32EEvPKfPfiif _Z8norm_f32ILi1024EEvPKfPfixxxf .text._Z8norm_f32ILi1024EEvPKfPfixxxf .nv.info._Z8norm_f32ILi1024EEvPKfPfixxxf .nv.shared._Z8norm_f32ILi1024EEvPKfPfixxxf .rel.nv.constant0._Z8norm_f32ILi1024EEvPKfPfixxxf .nv.constant0._Z8norm_f32ILi1024EEvPKfPfixxxf _Z8norm_f32ILi32EEvPKfPfixxxf .text._Z8norm_f32ILi32EEvPKfPfixxxf .nv.info._Z8norm_f32ILi32EEvPKfPfixxxf .nv.shared._Z8norm_f32ILi32EEvPKfPfixxxf .rel.nv.constant0._Z8norm_f32ILi32EEvPKfPfixxxf .nv.constant0._Z8norm_f32ILi32EEvPKfPfixxxf .debug_frame .rel.nv.constant4 .rel.debug_frame .rela.debug_frame .nv.callgraph .nv.prototype .nv.rel.action                           )                     9                     R   +               v    +                     :                     9                    9  h                                 &   9 (h             3   9                <   9               H   9               S   9                ]   9  <             i   9  @             s   9 h                9 h                9  H                                    ,               '   ,                                       -               5   -                    ;                 	                    A  .               i   .                 5                    k  /                  /                 v   <                 ;                      0                  0                    =                 h	                     	  1               
   1                 
   >                    !                   2                N   2                    ?                    "                 '  3                {   3                 2   @                    #                 Y  4                   4                 a   A                 $   $                   5          !         5                    B                 3   %                    &                   6                  6                 v   '                    (                   7               -   7                 |   C                    )                   8                %   8                    *                                     7                    S                    $        |( ((   4                                @   ( 4         $        |( ((   4       p                        @   (          $        |( ((   4                               (   ( p         $        |( ((   4       P                       (   (           $        |( ((   4                              @   (          $        |( ((   4       0                       @   (          $        |( ((   4                              @   ( p         $        |( ((   4                               @   ( x         $        |( ((   4                               @   ( @         $        |( ((   4                               @   ( H         $        |( ((   4       `               !         ,   (          $        |( ((   4                              0   ( h         $        |( ((   4       @                       D   (          $        |( ((   4                               8   (                  NVIDIA Corp              6   f    ptxas Cuda compilation tools, release 13.0, V13.0.97 Build system must define TOOLS_VERSION_EXTENDED -arch sm_86           NVIDIA Corp  V    / C   (    C       / ?   (    ?       / ;   (    ;       / 6   (    6       / 2   (    2       / .   (    .       / *   (    *       / &   (    &       / "   (    "       /    (           /    (           /    (           /    (           /    (                                                    "        &        *        .        2        6        ;        ?        C       7    5  
    `4 4       0         (  !          !         !                  !           !  L _  )( (( 
  
  
    0                            7    5  
    `4 4       0         (  !          !         !                  !           !  _  ) ( 
  
  
  
                    7    5  
    `                              !         !           !  L _  )P (P `             P  `      0  @  p             @  P       p       7    5  
    `                              !         !           !  _  )( (( `             @  P                  7    5  
 !   `          1         1         1         1         !         !         !         !       |  1       p  1       d  1       X  1      
 P  !      	 H  !       @  !       8  !       0         (  !          !         !                  !           !  L _  )( (( `
  
    0  P          0   P  0  p         7    5  
 %   `          1         1         1         1         !         !         !         !       |  1       p  1       d  1       X  1      
 P  !      	 H  !       @  !       8  !       0         (  !          !         !                  !           !  L _  )( (( `
  
     P  p        0  P   p  P           7    5  
 )   `          1         1         1         1         !         !         !         !       |  1       p  1       d  1       X  1      
 P  !      	 H  !       @  !       8  !       0         (  !          !         !                  !           !  L _  )( (( `
  
        @                @           7    5  
 -   `          1         1         1         1         !         !         !         !       |  1       p  1       d  1       X  1      
 P  !      	 H  !       @  !       8  !       0         (  !          !         !                  !           !  L _  )( (( `
  
    @  `          0   @  `           7    5  
 1   `          1         1         1         1         !         !         !         !       |  1       p  1       d  1       X  1      
 P  !      	 H  !       @  !       8  !       0         (  !          !         !                  !           !  L _  )( (( 
  
     @  `        0  P   `  P           7    5  
 5   `          1         1         1         1         !         !         !         !       |  1       p  1       d  1       X  1      
 P  !      	 H  !       @  !       8  !       0         (  !          !         !                  !           !  L _  )( (( 
     0  p        0  P  p     p  0         7    5  
 :   `                                     !           !  L _  )P (P     0  P     	  @	  `	  	  	        0  P               0       P        7    5  
 >   `                                     !           !  _  )( ((      @  `              @   P       p       7    5  
 B   `4 4       0         (  !          !         !                  !           !  L _  )P (P P  p          0  P           0  @  p              @  p  p         7    5  
 E   `4 4       0         (  !          !         !                  !           !  _  )( (( P  `             @  p                                        s          % 6P             H             @             8             0             (                                                  
             	                          C            ?            ;            6   4         2            .   T         *            &   t         "                           $                         D                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            z  
       y      !   " z  F   
    Ey  @
      r"         y      '   h y      &    y
      %    z  \  pb  x     / $z    Ox      $z    
 x   
   $z   \    x       G  `	      r   3 Ey @      r"         z \    r         x    x    p`  x     G        $z `    r"         %z `     r         $z a    $z b    $x     $z c   %z b     r     $z ^    %z
 ^     $z
 _    r     x      z X    r     z Y    r         $r      y      x  x     r    pR  x     r     #r"   "   O G)  `  Ay         G        $z `    Ey p      %z `    x      p  r        $z a    r        $z b    r         $z ^    r     $z c    z \    $z
 _    %z b     x  0  pB  $x     %z
 ^     r     z X    z Y    G         $v \     x      p  r        r        r        r         x   r         $r      %x     y%       y#      y     ( y 0   b %x     y @   h y P   b %x     y `   h y! p   h y     b %x     y    h! y    b #r$%%   "   O y"     #r%##   $   Ə y#     y$     #r%   %   y    " #r%   %   y    b #r%   %    #r%   %    #r   %    #r!!!       #r!     !    x @    r    pb  x     r     #r"""   !   O #r###   "   ȏ #r#$$   #    #r#   #   #r#   #   #r   #    #r"       G  P  Ay         z \    Ey       x    pB  G  `      %x     y	      y     %x     y     ( y 0   h y @   h y P   h y `   h y p   b x     x      p  x      r     #r			   "   O #r	   	   ȏ #r	   	   #r	   	   #r	   	    #r	   	    #r	   	    #r"   	    Ay         z  \  pp   G         %x     y      y     y     ( y 0   b #r   "   O #r      ȏ #r      #r"      Ay          "      " x	             !r"              $ !r             $ !r         @    $ !r              $ !r                 {           y	     H   (       $ !r              $ !r             $ !r         @    $ !r              b  M          r   3  !r       / Ey        z \    z  d       x    x    p`   z d    A   x     	r       s        f G  0      $z `    r      %z `     $z a    $z b    $x     $z c   %z b     $z	 ^    r     x      $z	
 _  	 %z
 ^     r     r     z Z    z X    r	   	   z [    z	 Y  	  r 	        r         y       x  x     r    pR  x     r		     $r      x      r     A  o r         r     y      G    Ay          M          $z `    r         %z `     $z a    $z b    r     $z c    %z b     $x     $z ^    %z
 ^     $z
 _    z
  Z    z X    r     z  [     z Y     r         r         $r      %x     y      r 
        r         %x      r     A  o y      y	      r		     A  O y 	    y       r     A  O y      y 0    x     x @    z  \  pb  x

 @    r     r       r     A  O y  0   G  p  My          Gy    y            y            y            y            y            y            y            y            z  
       y      !   " z  F   
    Ey  @
      r"         y      '   h y      &    y
      %    z  \  pb  x     / $z    Ox      $z    
 x   
   $z   \    x       G  `	      r   3  Ey @      r"         $r      z \    x   ؏ x `   p`  x     G        $z `    r"         %z `     $z a    $z b    $r      r     $z c    %z b     r     $z ^    %z
 ^     $z
 _    r     x      z X    r     z Y    r         r         y      x  x     r    pR  x      r     #r"   "   O G)  `  Ay         G        $z `    Ey p      %z `    x      p  r        $z a    r         $z b    $x     $z c   z \    %z b     x   pB  $z ^    r     $r      $z
 _   %z
 ^     r     z X    z Y    G         z  \       $r      x      p  r        r        r         x  r         $r      %x     y%       y#      y    ( y   b %x     y    h y   b %x     y    h y!   h y     b %x     y    h! y   b #r$%%   "   O y"    #r%##   $   Ə y#     y$    #r%   %   y    " #r%   %   y   b #r%   %    #r%   %    #r   %    #r!!!       #r!     !    x     r    pb  x     r     #r"""   !   O #r###   "   ȏ #r#$$   #    #r#   #   #r#   #   #r   #    #r"       G  P  Ay         z \    Ey       x    pB  G  `      %x     y	      y     %x     y    ( y   h y    h y   h y    h y   b x     x      p  x     r     #r			   "   O #r	   	   ȏ #r	   	   #r	   	   #r	   	    #r	   	    #r	   	    #r"   	    Ay         z  \  pp   G         %x     y      y     y    ( y   b #r   "   O #r      ȏ #r      #r"      Ay          "      $ !r"              $ !r             $ !r         @    $ !r              b  M          r   3  !r       / Ey        z \    z  d       x   ؏ x `   p`   z d    A   x     	r       s        f G  0      $z `    r      %z `     $z a    $z b    $x     $z c   %z b     $z	 ^    r     x      $z	
 _  	 %z
 ^     r     r     z Z    z X    r	   	   z [    z	 Y  	  r 	        r         y       x  x     r    pR  x      r		     $r      x      r     A  o r         r     y      G    Ay          M          $z `    r         %z `     $z a    $z b    r     $z c    %z b     $x     $z ^    %z
 ^     $z
 _    z
  Z    z X    r     z  [     z Y     r         r         $r      %x     y      r 
        r         %x      r     A  o y      y	      r		     A  O y 	    y      r     A  O y     y    x     x     z  \  pb  x

     r     r       r     A  O y    G  p  My          Gy    y            y            y            y            y            y            y            y            z  
       y      !   " z  F   
    Ey         x         y
      %   h y      "   b z  ^  pb  $z

    / x    
   G        r   3 Ey       x         r         z ^    x    x    p`  x     G         z  ^       x     x?     r         r         %z
 ^     r         $|
     x       $z  ^    z	 X   z Z    r     x      z Y   z [    r         r 	        r         r         y      y      x  x		     r    pR  x     x     r     r     #r      O#r      Ə G)     Ay         G  	      z  ^       Ey       z ^    x      x  0  pB  x      p  $r
     %z
 ^     $z  ^    x       r     x         x      %v X    %v Z    G        x      p  x   r    r     r    r	     y      y      y    ( y    h y     h y     h y 0   h y 0   h y @   h y @   h y P   h y P   h y `   h y `   h y"    h y#    h y     h y%    b #r      O#r      ď y p    #r!      y p    #r      y    " #r!   !    y    b #r       y    b #r!   !    y    b #r       y    b #r!   !    y    b #r       y    h y    b #r   !   #r$       y    ( y!    h y    h y    b #r$   $   #r       x @    r    pb  x     r     #r      O#r$   $   Ə #r      #r$   $   #r      #r$   $    #r      #r$   $    #r      #r$   $    #r      #r!!   $    #r      #r""   !    #r      #r"#   "    #r        #r %   "    G  p  Ay         z ^    Ey       x    pB  G        r    r     r	     r     y      y      y    ( y    h y!     h y#     h y 0   h y 0   h y @   h y @   h y P   h y P   h y `   h y `   h y p   h y p   b x     x      p  x      r     #r      O#r      Ə #r      #r      #r!!      #r#!#       #r      #r#   #    #r      #r#   #    #r      #r#   #    #r      #r#   #    #r      #r   #    Ay         z  ^  pp   G  @      r    r     r     r     y      y      y	    ( y    h y     h y     h y 0   h y 0   b #r      O#r      Ə #r		      #r	      #r      #r       #r      #r       Ay                " x           b !r        !r       /       (       b !r        !r       /      (      b !r              !r       /    @    ( 	 @    b !r        !r		       /       ( 	      b !r        !r	       /                  {           Ez  ^       y     H   ( y    H   h       (       b. !r        !r       /       (       b !r        !r       /      " s        f 	      !r        !r		       O  @    ( 	 @     !r        !r	       O       (        !r        #v _     / #z _      s        " M          r   3  s        b !r        Ey        z ^   O x    x    p`  x      r     A    r    A  / G  @      z  ^       x      x?     %z
 ^     $|
     x       $z  ^    z \   z Z    r     z X    x      z ]    z [   z Y    r         r         y       r         r         y       x  x     r    pR  x     x     r         r         x     r     r     r      r	     A  O #r   	   ʏ y      G    Ay          M          z  ^       x         x?     %v Z    $|
    %z

 ^     $z  ^    x
       r     %v \    x
      %v X    r    r     r	     r      y       y     . r
     r       r      A  O #r      ʏ y 
     y      y      r      A  O #r      ʏ y 
    y       y       r      A  O #r      ʏ y 
     y  0    y 0    x     x @    z  ^  pb  r       r      A  O #r      ʏ y 
 0   G    My          Gy    y            y            y            y            y            y            y            y            y            y            y            y            y            y            y            z  
       y      !   " z  F   
    Ey         x         y
      %   h y      "   b z  ^  pb  $z

    / x    
   G        r   3 Ey       x         r         z ^    x   ؏ x `   p`  x     G         z  ^       x     x?     r         r         %z
 ^     r         $|
     x       $z  ^    z	 X   z Z    r     x      z Y   z [    r         $r      r 	        r         y      y      x  x		     r    pR  x     x      r     r     #r      O#r      Ə G)     Ay         G  	      z  ^       Ey       z ^    x      x   pB  x      p  $r
     %z
 ^     $z  ^    x       $x     x         x      %v X    %v Z    G        x      p  x  r    r     r    r	     y      y      y    ( y    h y    h y    h y   h y   h y    h y    h y   h y   h y    h y    h y"   h y#    h y    h y%   b #r      O#r      ď y    #r!      y    #r      y    " #r!   !    y    b #r       y   b #r!   !    y   b #r       y    b #r!   !    y    b #r       y   h y   b #r   !   #r$       y    ( y!    h y   h y    b #r$   $   #r       x     r    pb  x     r     #r      O#r$   $   Ə #r      #r$   $   #r      #r$   $    #r      #r$   $    #r      #r$   $    #r      #r!!   $    #r      #r""   !    #r      #r"#   "    #r        #r %   "    G  p  Ay         z ^    Ey       x    pB  G        r    r     $x     r	      y      y      y    ( y    h y!    h y#    h y   h y   h y    h y    h y   h y   h y    h y    h y   h y   b x     x      p  x     r     #r      #r      O #r      #r      #r!!      #r#!#       #r      #r#   #    #r      #r#   #    #r      #r#   #    #r      #r#   #    #r      #r   #    Ay         z  ^  pp   G  @      r    r     r     r     y      y      y	    ( y    h y    h y    h y   h y   b #r      O#r      Ə #r		      #r	      #r      #r       #r      #r       Ay                " Ez  ^             b s         !r        !r       /       (       b !r        !r       /      (      b !r        !r       /  @    ( 	 @    b !r        !r		       /       ( 	       !r        #v _     O #z _      s        " M          r   3  s        b !r		        Ey        z ^    x   ؏ x `   p`  x      r	     A    r    A  / G  @      z  ^       x      x?     %z
 ^     $|
     x       $z  ^    z \   z Z    r     z X    x      z ]    z [   z Y    r         $r      y       r         r         y       x  x     r    pR  x     $r     x      r         r         x     r     r      r	     A  O #r   	   ʏ y      G    Ay          M          z  ^       x         x?     %v Z    $|
    %z

 ^     $z  ^    x
       r     %v \    x
      %v X    r    r     r	     r      y       y     . r
     r       r      A  O #r      ʏ y 
     y      y      r      A  O #r      ʏ y 
    y      y      r      A  O #r      ʏ y 
    y     y    x     x     z  ^  pb  r       r      A  O #r      ʏ y 
   G    My          Gy    y            y            y            y            y            y            y            y            y            y            y            z  
       y      !   " z  F   
    Ey   
      $r%      y      '   h y      &    y      %    z  \  pb  x     / $z	    Ox      $z 	    x      $z   \    x       G  @	      r   3  Ey @      r%         $r      z	 \    x	    x 	   p`  x
     G        $z `    r%         %z `     $z a    $z b    $r      r		     $z c   $z ^    %z b     $x		     $z _   %z ^     r     x      z X    r		     z Y  	  r         $r	      y      x

  x     r 
   pR  x     r     #r%   %   O G)  `  Ay         G        $z `    z \    %z `    Ey 0      x      p  $z a    x  0  pB  $z b    r        $x		     r         $z c    %z b     $z ^    r		     $r      $z _   %z
 ^     $x     z
 X    z	
 Y    G         $v \     x      p  $r     r        $r!      r         x   %x
!     y$
      y#
     y"
     ( y
 0   b %x     y @   h y  P   b %x     y `   h y p   h y    b #r%$$   %   O y$      #r##   %   Ə y#      #r"""      %x
     y%    ( y
    " #r   "   y"
    h y
    h y

    b #r       #r         #r       #r       #r       x @    r    pb  x     r		     #r$$$      O #r$##   $   ȏ #r%%%   $   #r%   %    #r%""   %   #r%   %    #r%

   %    G  p  Ay         z
 \    Ey       x 
   pB  G  `      %x
     y
      y
     %x     y
     ( y
 0   h y @   h y P   h y! `   h y# p   b x     x      p  x      $r	   	  #r   %   O #r      ȏ #r      #r      #r       #r       #r!!       #r%##       Ay         z  \  pp   G         %x     y      y	     y     ( y 0   b #r   %   O #r		      ȏ #r      #r%      Ay          %      " x      r   (  x  r    Ez  \       r    pR  !r%        	      $ !r		              
	     $ !r
	
        
 @    $ !r
              $ !r             H    {           s        b y	     H    
	      N !r
	
       O 
       !r
       O       !r       O  @     !r       O        !r       O M          $r     ? #v d      r         $r	     Ey        'z     s        $ 'z q     z
      r	         $r      r         $r   

  r
         'z t     z	 r     $z     r	     'z      z u     x	      'z   
   z      r     $z s    z      $z
	 |    $r	   
  %z h     $z }  
 r         %z
 |     $z		     r 
        $z i    $x     x   	   $z v    $r   
  r   3  $r      %z j     z \    'z w     x    p` x     $z
 ~    z x     $z k    x     $z     $z	   
  %z	 ~     x	      $r
      r     $r   
  $z	     $z y    $z    %z      %z
 l  
   r	     $z m    G        $z `    x      %z `     r      $z a    $z b    $x     $z c   %z b     $z ^    r     $r      $z _   %z ^     r     r     z Z    z X    r      z [    z Y    r         $r     r         z  p       'z n    r?   ?  z         'z      z o     r?   ?  z      $|     $|     r
     r    r      z f   r     z g     z z    r         y       z {    y      y      $r      x  r    pR  x     x     r    /  r     A  ȏ #r      O r         y      x     r     G    Ay          M          $z `    z  Z   %z `    r         z  [     $z a    $z b    $x     $z c   %z b     $z ^    r     $r       %z ^     $z _    z X    r     z Y     r         $r      r        / z  p       r         'z n    z         r?   ?  'z      r?   ?  z o     z      $|     $|     r
     r    r      r      %x     z f   z z    z g     z {     y      y       y      x     r        / $r      'z n     'z      x     x     z o     z      $|    $|     r
    r    r      r      z f     r     A  O #r       r         z z    z g     %x      z {     y      y     y     ( y     " x     r         $r      'z n     'z      x     x     z o     z      $|    $|     r
    r    r      r      z f   / z z    z {      r     A  O #r       z g     y     y      y      y      x     r        $r      'z n     'z      x     x     z o     z      $|    $|     r
    r    r      r      z f    z z   / z g      r     A  O #r       z {     y      y 0    y     ( y     " x     x @    z  \  pb  x @    r      r      r     A  O #r       y  0   G    My          Gy    y            y            y            y            y            y            y            y            y            y            y            y            y            y            y            z  
       y      !   " z  F   
    Ey   
      $r%      y      '   h y      &    y      %    z  \  pb  x     / $z	    Ox      $z 	    x      $z   \    x       G  @	      r   3  Ey @      r%         $r      z	 \    x	    x 	   p`  x
     G        $z `    r%         %z `     $z a    $z b    $r      r		     $z c   $z ^    %z b     $x		     $z _   %z ^     r     x      z X    r		     z Y  	  r         $r	      y      x

  x     r 
   pR  x     r     #r%   %   O G)  `  Ay         G        $z `    z \    %z `    Ey 0      x      p  $z a    x    pB  $z b    r        $x		     r         $z c    %z b     $z ^    r		     $r      $z _   %z
 ^     $x     z
 X    z	
 Y    G         $v \     x      p  $r     r        $r!      r         x   %x
!     y$
      y#
     y"
    ( y
    b %x     y    h y     b %x     y    h y    h y     b #r%$$   %   O y$ $     #r##   %   Ə y# (     #r"""      %x
     y% ,   ( y
 0   " #r   "   y"
 4   h y
 8   h y

 <   b #r       #r         #r       #r       #r       x     r    pb  x @    r		     #r$$$      O #r$##   $   ȏ #r%%%   $   #r%   %    #r%""   %   #r%   %    #r%

   %    G  p  Ay         z
 \    Ey       x 
   pB  G  `      %x
     y
      y
     %x     y
    ( y
    h y    h y    h y!    h y#    b x      x      p  x     $r	   	  #r   %   O #r      ȏ #r      #r      #r       #r       #r!!       #r%##       Ay         z  \  pp   G         %x     y      y	     y    ( y    b #r   %   O #r		      ȏ #r      #r%      Ay          %      " x      r   (  x  r    Ez  \       r    pR x    pB  !r%        	      $ !r		              
	     $ !r
	
        $r	      
 @    $ !r
              $ !r             H    {           s        b 	     H    
	      N !r

	       O 
       !r
       O       !r       O  @     !r       O        !r       O M          r        ? #v d      r	         $r      r         'z     Ey  `      s        $ 'z q     z
      $r      r
     $r	     z r     'z      r         $z     z      $r   
  $r
      x      'z	 t     r     'z   
   z	 u  	   $z
 |    z      $z s    $z }  
  %z h     %z
 |     $r   	
  $z	     $z i    r     $z v    r     $r      r   3  $r   
   x   	   %z j     z \    'z w     x    p` x     $z
 ~    z x     $z k    x     $z     $z	   
 r
         %z	 ~     x	      $x     r     $z	     $z y    $z    %z      %z
 l  
   $z m    $x	     G        $z `    x      %z `     r      $z a    $z b    $r      r     $z c   $z ^    %z b     $x     $z _   %z ^     r     r     z Z    z X    r      z [    z Y    r         $r     r         z  p       'z n    r?   ?  z         'z      z o     r?   ?  z      $|     $|     r
     r    r      z f   r     z g     z z    r         y       z {    y      y      $r      x  r    pR  x     x     r    /  r     A  ȏ #r      O r         y      x     r     G    Ay          M          $z `    z  Z   %z `    r         z  [     $z a    $z b    $x     $z c   %z b     $z ^    r     $r       %z ^     $z _    z X    r     z Y     r         $r      r        / z  p       r         'z n    z         r?   ?  'z      r?   ?  z o     z      $|     $|     r
     r    r      r      %x     z f   z z    z g     z {     y      y       y      x     r        / $r      'z n     'z      x     x     z o     z      $|    $|     r
    r    r      r      z f     r     A  O #r       r         z z    z g     %x      z {     y      y     y     ( y     " x     r         $r      'z n     'z      x     x     z o     z      $|    $|     r
    r    r      r      z f   / z z    z {      r     A  O #r       z g     y     y     y      y      x     r        $r      'z n     'z      x     x     z o     z      $|    $|     r
    r    r      r      z f    z z   / z g      r     A  O #r       z {     y     y     y     ( y     " x     x     z  \  pb  x     r      r      r     A  O #r       y     G    My          Gy    y            y            y            y            y            y            y            y            y            y            y            y            y            z  
       y      !   " z  F   
    Ey   
      r%         y      '   h y      &    y      %    z  \  pb  x     / $z	    Ox      $z 	    x      $z   \    x       G  @	      r   3 Ey @      $r%      r         z	 \    x	    x 	   p`  x
     G        $z `    r         %z `     $z a    $z b    $x		     $z c   %z b     $z ^    r		     $r%      $z _   %z ^     r     x      z X    r		     z Y  	  r         $r	      y      x

  x     r 
   pR  x     r     #r%   %   O G)  `  Ay         G        $z `    z \    %z `    Ey 0      x      p  $z a    x  0  pB  $z b    r         $r      r		     $z c    r         $z ^    %z b     $x		     $z _   %z
 ^     r     z
 X    z	
 Y    G         z  \       $r     x      p  $r!      r        r         x   %x
!     y$
      y#
     y"
     ( y
 0   b %x     y @   h y  P   b %x     y `   h y p   h y    b #r%$$   %   O y$      #r##   %   Ə y#      #r"""      %x
     y%    ( y
    " #r   "   y"
    h y
    h y

    b #r       #r         #r       #r       #r       x @    r    pb  x     r		     #r$$$      O #r$##   $   ȏ #r%%%   $   #r%   %    #r%""   %   #r%   %    #r%

   %    G  p  Ay         z
 \    Ey       x 
   pB  G  `      %x
     y
      y
     %x     y
     ( y
 0   h y @   h y P   h y! `   h y# p   b x     x      p  x      r		     #r   %   O #r      ȏ #r      #r      #r       #r       #r!!       #r%##       Ay         z  \  pp   G         %x     y      y	     y     ( y 0   b #r   %   O #r		      ȏ #r      #r%      Ay          %      " x      r   (  x  $x   
  r    pR  !r%        	      $ !r		              
	     $ !r
	
        
 @    $ !r
              $ !r             H    {           y	     H   ( 
	      $ !r
	
        
      $ !r
             $ !r         @    $ !r              b  M          r         !r       / Ez
  \       Ey        r         'z q     s 
       b r   3  'z w     z r     z \    r     $r      z x     x    p`  'z t     #v
 d     / $z s    z u     $r   
  %z h    r     s
 
       b x     $z	 i  	  $z v    x     %z j     $z	 k  	  $z y    %z l     $z m  	  G        $z `   ? %z `     $z a    $z b    $z ^    r     $z c    x      $z _    %z b     r     r      %z ^     $x     r     z Z    z X    r      z [    r         z Y    r         $r      z  p       y       r?   ?  'z n     z o     $|     r     r      z f    z g     y      x  r        / r    pR  x     x     r      r
     A  O  r     A   r         y      x     $r     G  `  Ay         / M          $z `    z  Z    %z `     $z a    $z b    $z ^    r     $z c    %z b     $x     z  [     r          %z ^     $z _    z X    r     z Y     $r      r         z  p       r?   ?  'z n     z o     $|     r     r      %x     z f    z g     y      y       x     'z n     x     z o     $|     %x      r     r       r
     A  O  r     A   z f    z g     y      y     y      x     r         'z n     x     z o     $|     x     r     r      z f   / z g      r
     A  O  r     A  ʏ y     y      y      x     $r      'z n     x     z o     $|     x     r     r      z f   / z g      r
     A  O  r     A  ʏ y      y 0    y      x     x @    z  \  pb  x @    r      r      r
     A  O  r     A  ʏ y  0   G    My          Gy    y            y            y            y            y            y            y            y            y            z  
       y      !   " z  F   
    Ey   
      $r%      y      '   h y      &    y      %    z  \  pb  x     / $z	    Ox      $z 	    x      $z   \    x       G  @	      r   3  Ey @      r%         $r      z	 \    x	    x 	   p`  x
     G        $z `    r%         %z `     $z a    $z b    $r      r		     $z c   $z ^    %z b     $x		     $z _   %z ^     r     x      z X    r		     z Y  	  r         r	         y      x

  x     r 
   pR  x     $r     #r%   %   O G)  `  Ay         G        $z `    z \    %z `    Ey 0      x      p  $z a    x    pB  $z b    r         $r      r		     $z c    r         $z ^    %z b     r		     $z _    %z
 ^     $x     z
 X    z	
 Y    G         z  \       $r      x      p  r        r        r!         x   %x
!     y$
      y#
     y"
    ( y
    b %x     y    h y     b %x     y    h y    h y     b #r%$$   %   O y$ $     #r##   %   Ə y# (     #r"""      %x
     y% ,   ( y
 0   " #r   "   y"
 4   h y
 8   h y

 <   b #r       #r         #r       #r       #r       x     r    pb  x @    $r	   	  #r$$$      O #r$##   $   ȏ #r%%%   $   #r%   %    #r%""   %   #r%   %    #r%

   %    G  p  Ay         z
 \    Ey       x 
   pB  G  `      %x
     y
      y
     %x     y
    ( y
    h y    h y    h y!    h y#    b x      x      p  x     r		     #r   %   O #r      ȏ #r      #r      #r       #r       #r!!       #r%##       Ay         z  \  pp   G         %x     y      y	     y    ( y    b #r   %   O #r		      ȏ #r      #r%      Ay          %      " x      r   (  x  r    r    pR x    pB  !r%        	      $ !r		              
	     $ !r
	
        $r	      
 @    $ !r
              $ !r             H    {           	     H   ( 
	      $ !r

	        
      $ !r
             $ !r         @    $ !r              b  M          r         !r       / Ez
  \       Ey        r         'z q     s 
       b r   3  'z w     z r     z \    r     $r      z x     x    p`  'z t     #v
 d     / $z s    z u     $r   
  %z h     r     s
 
       d $z	 i  	  x     $z v    x     %z j     $z	 k  	  $z y    %z l     $z m  	  G        $z `   ? %z `     $z a    $z b    $z ^    r     $z c    x      $z _    %z b     r     r      %z ^     $x     r     z Z    z X    r      z [    r         z Y    r         $r      z  p       y       r?   ?  'z n     z o     $|     r     r      z f    z g     y      x  r        / r    pR  x     x     r      r
     A  O  r     A   r         y      x     $r     G  `  Ay         / M          $z `    z  Z    %z `     $z a    $z b    $z ^    r     $z c    %z b     $x     z  [     r          %z ^     $z _    z X    r     z Y     $r      r         z  p       r?   ?  'z n     z o     $|     r     r      %x     z f    z g     y      y       x     'z n     x     z o     $|     %x      r     r       r
     A  O  r     A   z f    z g     y      y     y      x     r         'z n     x     z o     $|     x     r     r      z f   / z g      r
     A  O  r     A  ʏ y     y     y      x     $r      'z n     x     z o     $|     x     r     r      z f   / z g      r
     A  O  r     A  ʏ y     y     y      x     x     z  \  pb  x     r      r      r
     A  O  r     A  ʏ y     G    My          Gy    y            y            y            y            y            y            y            y            y            y            y            y            y            y            y            z  
       y      !   " z  F   
    Ey  @
      r"         y      '   h y      &    y
      %    z  \  pb  x     / $z    Ox      $z    
 x   
   $z   \    x       G  `	      r   3  Ey @      r"         $r      z \    x    x    p`  x     G        $z `    r"         %z `     $z a    $z b    $r      r     $z c    %z b     r     $z ^    %z
 ^     $z
 _    r     x      z X    r     z Y    r         r         y      x  x     r    pR  x     r     #r"   "   O G)  `  Ay         G        $z `    Ey p      %z `    x      p  r        $z a    r         $z b    $x     $z c   z \    %z b     x  0  pB  $z ^    r     $r      $z
 _   %z
 ^     r     z X    z Y    G         z  \       $r      x      p  r        r        r         x   r         $r      %x     y%       y#      y     ( y 0   b %x     y @   h y P   b %x     y `   h y! p   h y     b %x     y    h! y    b #r$%%   "   O y"     #r%##   $   Ə y#     y$     #r%   %   y    " #r%   %   y    b #r%   %    #r%   %    #r   %    #r!!!       #r!     !    x @    r    pb  x     r     #r"""   !   O #r###   "   ȏ #r#$$   #    #r#   #   #r#   #   #r   #    #r"       G  P  Ay         z \    Ey       x    pB  G  `      %x     y	      y     %x     y     ( y 0   h y @   h y P   h y `   h y p   b x     x      p  x      r     #r			   "   O #r	   	   ȏ #r	   	   #r	   	   #r	   	    #r	   	    #r	   	    #r"   	    Ay         z  \  pp   G         %x     y      y     y     ( y 0   b #r   "   O #r      ȏ #r      #r"      Ay          "      " x      r   (  x  r	    r 	   pR  !r"              $ !r                   $ !r         @    $ !r              $ !r             H    {           Ez  \       y	     H   d  s	               d. !r       /       d !r       /      d !r       /  @    d !r       /       b  M          r   3 O !r       ? Ey        z \    x    x    p`  x     #v d  	    s        , G  0      $z `    r      %z `     $z a    $z b    $x     $z c   %z b     $z	 ^    r     x      $z	
 _  	 %z
 ^     r     r     z Z    z X    r	   	   z [    z	 Y  	  r 	        r         y      x  x     r    pR  x     r		     $r     / x      r     A  _ r         r     y      G    Ay          M          $z `    r         %z `     $z a    $z b    r     $z c    %z b     $x     $z ^    %z
 ^     $z
 _    z
  Z    z X    r     z  [     z Y     r         r         $r      %x     y      r 
        r         %x      r     A  O y      y	      r		     A  O y 	    y       r     A  O y      y 0    x     x @    z  \  pb  x

 @    r     r       r     A  O y  0   G  p  My          Gy    y            y            y            y            y            y            y            y            y            y            y            y            y            z  
       y      !   " z  F   
    Ey  @
      r"         y      '   h y      &    y
      %    z  \  pb  x     / $z    Ox      $z    
 x   
   $z   \    x       G  `	      r   3  Ey @      r"         $r      z \    x    x    p`  x     G        $z `    r"         %z `     $z a    $z b    $r      r     $z c    %z b     r     $z ^    %z
 ^     $z
 _    r     x      z X    r     z Y    r         r         y      x  x     r    pR  x     r     #r"   "   O G)  `  Ay         G        $z `    Ey p      %z `    x      p  r        $z a    r         $z b    $x     $z c   z \    %z b     x    pB  $z ^    r     $r      $z
 _   %z
 ^     r     z X    z Y    G         z  \       $r      x      p  r        r        r         x   r         $r      %x     y%       y#      y    ( y    b %x     y    h y    b %x     y    h y!    h y      b %x     y 8   h! y <   b #r$%%   "   O y" $    #r%##   $   Ə y# (    y$ ,    #r%   %   y 0   " #r%   %   y 4   b #r%   %    #r%   %    #r   %    #r!!!       #r!     !    x     r    pb  x @    r     #r"""   !   O #r###   "   ȏ #r#$$   #    #r#   #   #r#   #   #r   #    #r"       G  P  Ay         z \    Ey       x    pB  G  `      %x     y	      y     %x     y    ( y    h y    h y    h y    h y    b x      x      p  x     r     #r			   "   O #r	   	   ȏ #r	   	   #r	   	   #r	   	    #r	   	    #r	   	    #r"   	    Ay         z  \  pp   G         %x     y      y     y    ( y    b #r   "   O #r      ȏ #r      #r"      Ay          "      " x      r   (  x  r    r    pR x    pB  !r"              $ !r        $r           $ !r              Ez  \        @    $ !r              $ !r	         	    H    {           s	        b      H          N !r       O        !r       O       !r       O  @     !r       O         M          r   3 / !r       O Ey        z \    #v d  	    x    x    p`  s        b x     G  0      $z `    r      %z `     $z a    $z b    $z	 ^    r     $z c   $z	
 _  	  %z b     r     x      %z
 ^     r     r     z Z    z X    r	   	   z [    z	 Y  	  r 	        $r      y       x  x     r    pR  x     r		     r         x      r     A  o r         $r     y      G    Ay          M          $z `    r         %z `     $z a    $z b    r     $z c    %z b     r     $z ^    %z
 ^     $z
 _    z
  Z    z X    $x     z  [     r         z Y     r         $r      %x     y      r 
        r         %x      r     A  o y      y	      r		     A  O y 	    y      r     A  O y     y     x     x     z  \  pb  x

     r     r       r     A  O y     G  p  My          Gy    y            y            y            y            y            y            y            y            y            y            y            z  
       y	      %   " z  \       z  F   
    Ey        y      !   b r         $v 	 \   $z	 \   / z   ]      r     pb  G        r	     Ey       r    3  r         $t  r         r     x    x    p`  x
     G         x         r         r         %v X    r         r         y       x

  x     r 
   pR  x     r     !r       O G	  p  Ay         G  `      r
     Ey       x         x 
 0  pB  %v X    x      r      x      p  G  p      x      p  x    y     y     y     ( y    h y     h y 0   h y @   h y P   h y `   h y  p   h y"    h y$    h y    h y    h y    h y
    b x @    r    pb  x     r     !r       O !r       ȏ !r       !r       !r        !r        !r        !r        !r        !r         !r"        !r$        !r        !r        !r        !r
        G    Ay         r
     Ey       x 
   pB  G  `      y    y
    y     ( y    h y     h y 0   h y @   h y P   b x      p  x      !r       O !r

        x     !r

       r     r         !r

       r         !r

        !r

        !r

        !r
        Ay         r     pp   G         y    y
    y     ( y    b !r       O !r
       ȏ !r       !r       Ay                " Ey        !r              $ !r             $ !r        
 @    $ !r
        x
           2         !r        Ez  \                s        d {           r         y
     H   (       $ !r              $ !r             $ !r         @    $ !r              $ !r        G        r	    / Ey @      r    3   r     A   r         $t  r         r     x    x    p`  x     G        x         r         r         %v Z    %v X    r         r         r         r         r         r         y       x  x     r    pR  x     r     r         x     !r      O r        r     #r       y      G9     Ay         G  `	      r     Ey P      x         x  0  pB  %v     z X   z Z    z Y    z [    x      p  G        x      p  x    y    !r      O y    y#    !r##      O y #   y%      !r%%      O y %     y     !r      O y     y      !r      O y      y 0    !r      O y  0   y @    !r      O y  @   y! P    !r!!      ʏ y ! P   y `    !r      ʏ y  `   y p    !r      ʏ y  p   y     !r      ʏ y     y     !r      ʏ y     y     !r      ʏ y     y     !r      ʏ y     y     #r       #r##       #r%%%      / #r%   %    #r%   %    #r%   %    #r   %   O !r      ʏ y     y     #r!!       x @    x     #r       r    pb  #r       x    / #r       r     #r       #r       #r       #r       r     !r      O #r       y     r         r         G  p  Ay         r     Ey       x    pB  G        y    !r      O y    y    !r      O y    y      !r      O y      y     !r      O y     y      !r      O y      y 0    !r      O y  0   y @    #r       #r       !r      O y  @   y P    #r       x     x      p  #r       x      #r       x    / #r       r     #r       !r      O r     #r       y  P   r         r         Ay         r     pp   G         y    !r      O y    y    !r      O y    y      !r      O y      y     #r       #r       #r       !r      O #r       y     Ay         /       "         !r              $ !r             $ !r         @    $ !r              $ !r                {           y

    H   ( 
      $ !r
              $ !r             $ !r         @    $ !r              b  M          r		     !r       ? r    3  Ey        $t		  #v ^      r	     s        $ x    x    p`  x     G         x         %v Z    r         r         r         r         y	      x  x     r    pR  r      x      r		     A  O y 	     G	  P  Ay          M          r     Ey        x         x  0  pB  %v Z    x      r      x      p  G        x      p  x    y    y	    y     ( y    h y     h y 0   h y @   h y P   h y `   h y p   h y    h y    h y    h y!    h y#    h y%    b x @    r    pb   r     A  O r		     A  ȏ y     r     A  y 	    r     A  y       r     A   x     y      r     A  r     y       r     A   y  0    r     A   y  @    r     A   y  P    r     A   y  `    r     A   y  p    r     A   y      r     A   y      r!!     A   y      r##     A   y !     r%%     A   y #    y %    r         r         G    Ay          r     Ey        x    pB  G        y    y	    y     ( y    h y     h y 0   h y @   h y P   b x      p  x       r     A  O r		     A  ȏ y     r     A  y 	    r     A  y       r     A   x     y      r     A  r      y       r     A   y  0    r     A   y  @   y  P   r         r         Ay          r     pp   M          y    y    y	     ( y    b  r     A  O r     A  ȏ y     r		     A  y     r     A  y 	     y     My          Gy    y            y            y            y            y            y            y            y            y            z  
       y      %   " z  \       z  F   
    Ey        y	      !   b r         r         $v  \   $z \  	 / z   ]      r     pb  G        r     Ey       r    3  r         $t  r         r   	  x   ؏ x `   p`  x
     G         x         r         r         %v X    r         r         y       x

  x      r 
   pR  x     r     !r       O G	  p  Ay         G  `      r
     Ey       x         x 
  pB  %v X    x     r      x      p  G  p      x      p  x   y     y    y     ( y    h y    h y   h y    h y   h y     h y"   h y$    h y   h y    h y   h y    h y
   b x     r    pb  x     r     !r       O !r       ȏ !r       !r       !r        !r        !r        !r        !r         !r"        !r$        !r        !r        !r        !r        !r
        G    Ay         r
     Ey       x 
   pB  G  `      y     y
    y     ( y    h y    h y   h y    h y   b x     x      p  x     r         !r       O !r

        r     !r

       r         !r

       !r

        !r

        !r

        !r
        Ay         r     pp   G         y    y
   y     ( y    b !r       O !r
       ȏ !r       !r       Ay                " Ey        !r              $ !r             $ !r        
 @    $ !r
        Ez
  \             $ s
 
       b !r        G        r    / Ey P      r    3   r
     A   r         $t  r         r   	  x   ؏ x `   p`  x     G        x         r         r         %v Z    %v X    r         r         r         r         r         r         r         y       x  x     r    pR  x      r     r         x     !r      O r        r     #r       y      G)     Ay         G  `	      r     Ey P      x         x   pB  %v     z X   z Z    z Y    z [    x      p  G        x      p  x   y    !r      O y    y!   !r!!      O y !  y#      !r##      O y #     y%     !r%%      O y %    y     !r      O y     y    !r      O y    y     !r      O y     y    !r      O y    y     !r      ʏ y     y    !r      ʏ y    y     !r      ʏ y     y    !r      ʏ y    y     !r      ʏ y     y    !r      ʏ y    y    " #r       #r!!       #r##       #r%%%       #r%   %    #r%   %    !r      y     y   " #r%   %    x     x    / #r   %   O r    pb  #r       x     #r       r     #r       #r       #r       #r       r    Ə #r       !r      #r       y    r         r         G  p  Ay         r     Ey       x    pB  G        y    !r      O y    y   !r      O y   y      !r      O y      y     !r      O y     y     !r      O y     y    !r      O y    y     #r       #r       !r      O y     y    #r       x     x      p  #r       r     x     #r       x    / #r       r     #r       !r      O #r       y    r         r         Ay         r     pp   G         y    !r      O y    y   !r      O y   y      !r      O y      y     #r       #r       #r       !r      O #r       y     Ay         /       $ !r              $ !r             $ !r         @    $ !r              b  M          r     !r       / r    3  Ey        $t  #v ^  
    r   	  s        $ x   ؏ x `   p`  x     G         x         %v Z    r         r         r         r         y	      x  x     r    pR  r      x       r		     A  O y 	     G	  P  Ay          M          r     Ey        x         x   pB  %v Z    x     r      x      p  G        x      p  x   y    y	   y     ( y    h y    h y   h y    h y   h y    h y   h y    h y   h y    h y!   h y#    h y%   b x     r    pb   r     A  O r		     A  ȏ y     r     A  y 	   r     A  y       r     A   x     y      r     A  r     y      r     A   y     r     A   y      r     A   y     r     A   y      r     A   y     r     A   y      r     A   y     r!!     A   y      r##     A   y !    r%%     A   y #    y %   r         r         G    Ay          r     Ey        x    pB  G        y    y	   y     ( y    h y    h y   h y    h y   b x      p  x      r     A  O r		     A  ȏ y     r     A  y 	   r     A  y       r     A   x     y      r     A  r      y      r     A   y     r     A   y     y    r         r         Ay          r     pp   M          y    y   y	     ( y    b  r     A  O r     A  ȏ y     r		     A  y    r     A  y 	     y     My          Gy    y            y            y            y            y            y            y            y            y            y            y            y            y            y            y            z  
       y      !   " z  F   
    Ey        r         y       '   b r         y      &    y
      %    z  \  pb  x      / $z     Ox      $z   
 x   
   $z \    x      G         r   3 Ey `      r         z \    r         x    x    p`  x     r         G        $z `    r         %z `     r         $z a    $z b    r     $z  c   $z ^    %z  b     r     $z
 _    %z
 ^     r     x      z X    r     z Y    r         r         y      x  x     r    pR  x     r     !r       O#r       G)  P  Ay         G        $z `    z \    %z `    Ey 0      x      p  $z a    x  0  pB  $z b    r         r     $z  c   r        $z ^    r         %z  b     r     $z
 _    %z
 ^     r     z X    z Y    G         z  \       x      p  r        r        r        r         x   %x     y%      y#     y!     ( y" 0   b %x     y @   h y P   b %x     y `   h y  p   h y    b# !r%       O#r$%%       y     !r%#        #r$##   $    y    b !r%%!       #r!!   $    y!     #r""      %x     !r%%"        y#    " #r$       y"    h y    b !r%%        y    b !r%%        #r$   $    !r%%        #r   $    !r%%         #r         x @    r    pb  x     r     !r%%       O #r       !r%       / #r       !r!        #r!!!       !r        #r   !    !r#       #r###       !r"       #r"""   #    !r        #r   "    !r        #r       G  p  Ay         z \    Ey       x    pB  G        %x     y	      y     %x     y     ( y 0   h y @   h y  P   h y `   h y" p   b x     x      p  x      r     !r	       O #r			       !r        #r	   	    !r       #r	   	    !r       #r	   	    !r        #r	   	    !r         #r	     	    !r        #r	   	    !r"        #r""   	    Ay         z  \  pp   G         %x     y      y     y     ( y 0   b !r       O #r       !r        #r       !r       #r       !r       #r       Ay                " x           b !r        !r       /       (       b !r        !r       /      ( 	     b !r              !r		       /  @    " ?  	 @    b !r        !r	       /       (       b !r        !r       /      
    {           y        (       (       b !r        !r       /       (       b !r        !r       / 	     (      b !r		        Ez  \       !r       / 	 @    $ s        d  @     !r	        !r       O       (        !r        M           r     A  o r   3  !r        Ey         r     A   z \    #r      x    x    p`  !v d       x     s        0 G  @      $z `    x      %z `     r     $z a    $z	 b    r     $z	  c  	 $z ^    %z  b     r	     %z
 ^     r     $z
 _    r     z Z    z	 X    r      z [    z Y    r         r 	        y      x  x		     r    pR  x     r     r        / x     !r      O r        r      r     A   y      G     Ay          M          $z `    r         %z `     $z a    $z b    $z ^    r     $z  c    $z
 _    %z  b     r     %z
 ^     z
 Z    z X   r     z [     z Y     r         r        / r         %x     y      r 
        !r       O r          r	      A   %x     y 	     y     !r       O  r      A   y     y      !r       O  r      A   y      y 0    x     x @    z  \  pb  x

 @    r     r      !r       O  r	      A   y 	 0   G  0  My          Gy    y            y            y            y            y            y            y            y            y            y            y            y            y            y            y            z  
       y      !   " z  F   
    Ey        x          y      '   h y      &   h y      %    z  \  pb  $z    / $z    Ox
      $z \    x       G  P      r   3 Ey p      r         x          z \    x   ؏ x `   p`  x     G        x      x      r         $z `    r!         %z `     $z a    $z b    r     $z c    %z b     r     $z
 ^    %z ^     $z _    r     x      z X    r     z Y    r         r         y      x  x     r    pR  x      r     !r!!       O#r         G)  P  Ay         G        x      Ey p      x      x      p  $z `    r        %z `    r        r         $z a    z \    $z b    r     $z c    x   pB  $z
 ^    %z b     r     $z _    %z ^     r     z X    z Y    G         z  \       x      p  r        r        r        r         x  %x     y#      y"     y    ( y   b %x     y    h y   b %x     y    h y   h y    b !r!#!       O#r###        y     !r!"        #r$""   #    y!     !r#       #r   $    %x     y"   " !r##       #r%       y    h y   h y    h y   b !r##        #r%   %    x     !r##        #r%   %    r    pb  !r#       / #r   %    x     !r	        #r       r     !r		        #r       !r	        O #r          !r!        #r!!!        !r"       #r"""   !    !r       #r   "    !r        #r       !r        #r       !r!        #r        G  p  Ay         z \    Ey       x    pB  G        %x     y	      y     %x     y    ( y   h y    h y   h y    h y   b x     x      p  x     r     !r!!	       O #r			        !r!!        #r	   	    !r!!       #r	   	    !r!!       #r	   	    !r!!        #r	   	    !r!!        #r	   	    !r!!        #r	   	    !r!!        #r    	    Ay         z  \  pp   G         %x     y      y     y    ( y   b !r!!       O #r        !r!!        #r       !r!!       #r       !r!!       #r        Ay          !      (        b !r!        !r        /       (       b !r        !r       /      (      b !r        Ez  \       !r       / 	 @    " s          @     !r		        !r       ȏ 	      (        !r	        M          r   3 o  r     A   !r        Ey        z \     r     A   x   ؏ #r      x `   p`  x     !v d       s        , G  p      x      %z `     x      r     $z `    x      $z	 a    $z b    r	     $z c    %z b     r     $z
 ^    %z ^     $z _    r     r      z Z    z	 X    r      z [    r         z Y    r         r 	        y      x  x		     r    pR  x      r     r        / x     !r      O r        r      r     A   y      G     Ay          M          x      x      r        $z `    r         %z `     $z a    $z b    r     $z c    %z b     r     $z
 ^    z
 Z    %z ^     z [      $z _    z X    r     z Y     r        / r         %x     y      r 
        !r       O r          r	      A   %x     y 	     y     !r       O  r      A   y     y     !r       O  r      A   y     y    x     x     z  \  pb  x

     r     r      !r       O  r	      A   y 	   G  0  My          Gy    y            y            y            y            y            y            y            y            y            y            y            y                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++$>$>,>,$$,>$>,>,,>>,>$>$$$$>,$>$,>$,>,,,,,4$44>$>4>$>4>$>$,>4$44$,$,$,$,4$,>,,4>$>4$,4>4>>>$,,$>$>,$,$,>,$,$>,>>4>,$>,,4>$$4$,,>$>$$>$,4,,,,,$44444>4>$$>$,$>$,$>,$$>$$>$$$4$44$>$,$$$$$,$$$4$$,,$$,$>,$,>$>$>$>$,$,>,,4,4,,,,$,,>,,,,$,$,>$,>$,,,,,,4,$>,$>,$4$$44$4$44444>4$44444$$$4,,4,,444>4>4>,>>>>>,>4>$>>,$>,>>,>>4>$>$$>,>,>$,>4>																																																																																																																																																																																																																															                                                               "      "  !    "    " ! ! ! !   "    " ! !!  "  "                          ! !    "!  !"!! ! !        "  "  !       " " !  !!      " " !    ""!    ! " ! !     ! !" !!"!    "    "  ""  !!    "   " "" !! ! !"! !!   "  !!  " "" !!  "  """                                          !    " !   "!" ! " "!!  "!                                !   ! " ! "   " ! "  " ! "!!" !! ! !""""! !  ! !   !!"  ! ""    !!"!  !!    ! "   !  !!" !!!"" !""  !" !"!" "!  ! "!  !"!!"  " !! "! "!!"!!! "!""            !   "  " "  " "   !! ""        !  " "" ""   ! ! ! "     !!! """"  !!!"!      "  ! ! !!   " " "  " "" ! ! !"!!!!"!    " ! !!!  "" " """   ! ! ! "      !! !!" ! !!""  ! " "    !!!!""" !!!!!""""!   ! "! !! !" ! ! !! "!"!"  "  !"!        "  "  !!   "  "  "" "" !  ! !!!"      " "   " " """""   ! !! "! !" ! "  !!! "!"!"""!  !!!"!!"!"    "    "  ""    " " "  "" """ !! ! !"!!!"!!!"   "   " "" !!!  "" " """""                               ! !  "!!  " !" !!  !                         ! ! !  ! "! !  " !    !"!"!"! ! ! "  !! "!  !"!  "   ! "  !!"!   !!"!  ! ! "  !!" !!  ! "   !!!"  !!"! "  !!" !!""! ! "! !" !! """ !!" !!!                         ! "" !"!  " !"!  !"!" !!  " !!"               !" " !! ! ! !" !" !!!" !" !" !" !"! !!"!" !"!!""!" ! !!!"  ! " "! ""  !!! ""    !! "   ! " "  !" !!!"! !!!"   !!!""" !!!" !" !!!""! ! "!!""  !!"!!"!! "!"! !!"! "!"" !! """! """ !!"! """!   !!!"    !!! !! " """  !"      !! " """   !!!!"""   !! """! !"!!!   !  " !!"! !  "! ! !"!!"!!!!!"""       ! !!!!! """     !! !!! !!" ""   !!!!    !!!!!!"""""   !!!!!""""" ! !! """ "!"  !   " !! !!!"! !"! "!" "  " ! "  !"! !!! " """""!!"!!"   !!!"! """!  ! "!!"  !  !!! "!"!"""    ! ! "  !!!!!!!"! "!"""  ! " !! "!"!"""! !"!! "!!   ! !"   !!!! "!""! !"!!"!"""!  !! "!""!"!"                     !  ! ! !!!!   "  "  " ""  " " ""          ! ! ! ! !!!!!!!! " """""    "      "  !    "    " ! ! !!!!!   ""  "  "" "!"  "" " """    !  !!!!! !! ""          ! ! ! !!!!!!!!!!! " " " """"""! " ! ! ! !  !! !" ! !!!!!"!!!"!"!! "!""" "        "  "  !       " "   !! ! ! !!"!!!"!   "  " " "" "!"  " " """"!  !    ! ! !   !! !! !" ! ! !!!"! !!!! "!"""!"    "    "  ""  !!    "   " "" !! !! ! !!"!!   ""  " " """ "!!"  "" " """""         !!!! !!!!" " """"                !! ! !!!!! !!"" """ """"! !    ! !  !"!!!  !" !!! !"!!!!" """!"           !!! !!! !! !!!! """ "" """              !!!!!!!!!!!!!!!!!!!"""""""""""""""!     ! !   " ! !! !!!!!"!!!"!!!!! !"" "!""""" "!" """!"! ! " !  !!!  ! !!!!!"! !!!!!" "!"""!"! ! "     ! " "     ! !  ! !!!"!"! !!!!!!!"! !!!!!"! "!" " "!""" "!"!! !! !!  !!"!!!"!  !!!! "!! !!!"! " !"!!""!"            !   "  "  " "  ! !! !!!!!!   "  "  " "!"  "" "" """"     ! ! ! ! !  ! ! !!!!!!!! "!"! " !" !"!"!""      "    ! !! " "  " "" ! !! !!"!!!!!!"!   ""  "  "" "!!"  """ "" """""! "  !  ! !! !!!! !!!!"!"!"! "!"! "    ! ! ! ! " "  ! !!!!!!!!!!!"!"! " " " " "!"!"!"!  !! "! "! !" !"   !" !" !"!!!!!"!! !! "!""!" " !"!!""!"!!"!"" """""        "  "    "  "  "" ""  !! !!!!!!"!!   "  " " "" "!!"  "" "" """"""!  !! "!  " !"   ! !!!!!"!! "!!"!""! !"!!"    "    "  ""    " " "  "" """ ! !! !!!"!!!   ""  " " """ "!!!"  """ "" """"""" @&5EYq   	
!"$'(+-.03569:<?ABDGHKMNPSUVYZ\_`cefijloqrtwx{}~                                                                                      @                                                                b                                                   p+               I                 _                     H2                                    )                     h8                                    9                     9                                    I      p                ,9                                  |      p@               $;               +                       p@               0<                ,                  r     p@               =      8         -                  |     p@               H>                .                       p@               ,?               /                       p@               8A               0                  a     p@               DC               1                  >
     p@               PE               2                       p@               \G               3                       p@               hI               4                       p@               tK      <         5                       p@               L                6                       p@               M      \         7                       p@               N               8                      p                O                                       p                 P                                   l  	   @               0P                                 ~  	   @               P                                                      Q      X                                    B               R                +                       B               S                ,                       B               @U                -                       B               V                .                  f     B               @X      8          /                  A     B               xZ      8          0                  	     B               \      8          1                  
     B               ^      8          2                       B                a      8          3                       B               Xc      8          4                       B               e                 5                  1     B               e      |          5                       B               g                 6                  O     B               g      |          6                  /     B               h                7                       B               ,j                8                  R                      l                 (               ^                    ~                 (               B                                      (               N                                     (               P                                      (               .                                   "  (                                                   &  (               	                                   *  (                                   '               .  (                                   :               2  (               u                    M      !         6  (                                   n              ;  (                                                  ?  (                                                  C  (                                         h                                   C               ("                +                       C               ("                -                       C               ("                /                       C               ("                0                       C               ("                1                  
     C               ("                2                  u     C               ("                3                  Q     C               ("                4                       C               ("                5                       C               ("                7                        (3                                                Q                      g     g                                       h      (o                   (3                                          