- .file "primes.cpp"
 - .section .text.unlikely._ZNK24prime_number_hash_policy14index_for_hashEmm,"axG",@progbits,_ZNK24prime_number_hash_policy14index_for_hashEmm,comdat
 - .align 2
 - .LCOLDB0:
 - .section .text._ZNK24prime_number_hash_policy14index_for_hashEmm,"axG",@progbits,_ZNK24prime_number_hash_policy14index_for_hashEmm,comdat
 - .LHOTB0:
 - .align 2
 - .p2align 4,,15
 - .weak _ZNK24prime_number_hash_policy14index_for_hashEmm
 - .type _ZNK24prime_number_hash_policy14index_for_hashEmm, @function
 - _ZNK24prime_number_hash_policy14index_for_hashEmm:
 - .LFB2757:
 - .cfi_startproc
 - cmpb $-70, (%rdi)
 - ja .L2
 - movzbl (%rdi), %eax
 - jmp *.L4(,%rax,8)
 - .section .rodata._ZNK24prime_number_hash_policy14index_for_hashEmm,"aG",@progbits,_ZNK24prime_number_hash_policy14index_for_hashEmm,comdat
 - .align 8
 - .align 4
 - .L4:
 - .quad .L191
 - .quad .L5
 - .quad .L6
 - .quad .L7
 - .quad .L8
 - .quad .L9
 - .quad .L10
 - .quad .L11
 - .quad .L12
 - .quad .L13
 - .quad .L14
 - .quad .L15
 - .quad .L16
 - .quad .L17
 - .quad .L18
 - .quad .L19
 - .quad .L20
 - .quad .L21
 - .quad .L22
 - .quad .L23
 - .quad .L24
 - .quad .L25
 - .quad .L26
 - .quad .L27
 - .quad .L28
 - .quad .L29
 - .quad .L30
 - .quad .L31
 - .quad .L32
 - .quad .L33
 - .quad .L34
 - .quad .L35
 - .quad .L36
 - .quad .L37
 - .quad .L38
 - .quad .L39
 - .quad .L40
 - .quad .L41
 - .quad .L42
 - .quad .L43
 - .quad .L44
 - .quad .L45
 - .quad .L46
 - .quad .L47
 - .quad .L48
 - .quad .L49
 - .quad .L50
 - .quad .L51
 - .quad .L52
 - .quad .L53
 - .quad .L54
 - .quad .L55
 - .quad .L56
 - .quad .L57
 - .quad .L58
 - .quad .L59
 - .quad .L60
 - .quad .L61
 - .quad .L62
 - .quad .L63
 - .quad .L64
 - .quad .L65
 - .quad .L66
 - .quad .L67
 - .quad .L68
 - .quad .L69
 - .quad .L70
 - .quad .L71
 - .quad .L72
 - .quad .L73
 - .quad .L74
 - .quad .L75
 - .quad .L76
 - .quad .L77
 - .quad .L78
 - .quad .L79
 - .quad .L80
 - .quad .L81
 - .quad .L82
 - .quad .L83
 - .quad .L84
 - .quad .L85
 - .quad .L86
 - .quad .L87
 - .quad .L88
 - .quad .L89
 - .quad .L90
 - .quad .L91
 - .quad .L92
 - .quad .L93
 - .quad .L94
 - .quad .L95
 - .quad .L96
 - .quad .L97
 - .quad .L98
 - .quad .L99
 - .quad .L100
 - .quad .L101
 - .quad .L102
 - .quad .L103
 - .quad .L104
 - .quad .L105
 - .quad .L106
 - .quad .L107
 - .quad .L108
 - .quad .L109
 - .quad .L110
 - .quad .L111
 - .quad .L112
 - .quad .L113
 - .quad .L114
 - .quad .L115
 - .quad .L116
 - .quad .L117
 - .quad .L118
 - .quad .L119
 - .quad .L120
 - .quad .L121
 - .quad .L122
 - .quad .L123
 - .quad .L124
 - .quad .L125
 - .quad .L126
 - .quad .L127
 - .quad .L128
 - .quad .L129
 - .quad .L130
 - .quad .L131
 - .quad .L132
 - .quad .L133
 - .quad .L134
 - .quad .L135
 - .quad .L136
 - .quad .L137
 - .quad .L138
 - .quad .L139
 - .quad .L140
 - .quad .L141
 - .quad .L142
 - .quad .L143
 - .quad .L144
 - .quad .L145
 - .quad .L146
 - .quad .L147
 - .quad .L148
 - .quad .L149
 - .quad .L150
 - .quad .L151
 - .quad .L152
 - .quad .L153
 - .quad .L154
 - .quad .L155
 - .quad .L156
 - .quad .L157
 - .quad .L158
 - .quad .L159
 - .quad .L160
 - .quad .L161
 - .quad .L162
 - .quad .L163
 - .quad .L164
 - .quad .L165
 - .quad .L166
 - .quad .L167
 - .quad .L168
 - .quad .L169
 - .quad .L170
 - .quad .L171
 - .quad .L172
 - .quad .L173
 - .quad .L174
 - .quad .L175
 - .quad .L176
 - .quad .L177
 - .quad .L178
 - .quad .L179
 - .quad .L180
 - .quad .L181
 - .quad .L182
 - .quad .L183
 - .quad .L184
 - .quad .L185
 - .quad .L186
 - .quad .L187
 - .quad .L188
 - .quad .L189
 - .quad .L190
 - .section .text._ZNK24prime_number_hash_policy14index_for_hashEmm,"axG",@progbits,_ZNK24prime_number_hash_policy14index_for_hashEmm,comdat
 - .L189:
 - movabsq $-3966182927699534447, %rdx
 - xorl %eax, %eax
 - cmpq %rdx, %rsi
 - setnb %al
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L188:
 - movabsq $-6953515075576482927, %rdx
 - xorl %eax, %eax
 - cmpq %rdx, %rsi
 - setnb %al
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L187:
 - movq %rsi, %rax
 - movabsq $204625226483757671, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $9122181901073924329, %rdx
 - shrq $62, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L186:
 - movq %rsi, %rax
 - movabsq $-6697117678371271545, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $7240280573005008577, %rdx
 - shrq $62, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L185:
 - movq %rsi, %rax
 - movabsq $3700900405971780095, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $5746614499066534157, %rdx
 - shrq $60, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L184:
 - movq %rsi, %rax
 - movabsq $-9121059423612896937, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $4561090950536962147, %rdx
 - shrq $61, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L183:
 - movq %rsi, %rax
 - movabsq $5052508716967008561, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $3620140286502504283, %rdx
 - shrq $61, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L182:
 - movq %rsi, %rax
 - movabsq $1850450202985890033, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $2873307249533267101, %rdx
 - shrq $58, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L181:
 - movq %rsi, %rax
 - movabsq $-9121059423612897319, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $2280545475268481167, %rdx
 - shrq $60, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L180:
 - movq %rsi, %rax
 - movabsq $-6697117678371271459, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $1810070143251252131, %rdx
 - shrq $60, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L179:
 - movq %rsi, %rax
 - movabsq $-7286284899644861849, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $1436653624766633509, %rdx
 - shrq $60, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L178:
 - movq %rsi, %rax
 - movabsq $204625226483759799, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $1140272737634240411, %rdx
 - shrq $59, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L177:
 - movq %rsi, %rax
 - movabsq $-6697117678371271167, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $905035071625626043, %rdx
 - shrq $59, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L176:
 - movq %rsi, %rax
 - movabsq $-3643142449822429451, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $718326812383316683, %rdx
 - shrq $59, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L175:
 - movq %rsi, %rax
 - movabsq $-9121059423612895835, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $570136368817120201, %rdx
 - shrq $58, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L174:
 - movq %rsi, %rax
 - movabsq $5052508716967010035, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $452517535812813007, %rdx
 - shrq $58, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L173:
 - movq %rsi, %rax
 - movabsq $-3643142449822425803, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $359163406191658253, %rdx
 - shrq $58, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L172:
 - movq %rsi, %rax
 - movabsq $2331421162524164301, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $285068184408560057, %rdx
 - shrq $55, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L171:
 - movq %rsi, %rax
 - movabsq $5874813197669140945, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $226258767906406483, %rdx
 - shrq $56, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L170:
 - movq %rsi, %rax
 - movabsq $3700900405971781855, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $179581703095829107, %rdx
 - shrq $55, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L169:
 - movq %rsi, %rax
 - movabsq $204625226483766129, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $142534092204280003, %rdx
 - shrq $56, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L168:
 - movq %rsi, %rax
 - movabsq $5874813197669142425, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $113129383953203213, %rdx
 - shrq $55, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L167:
 - movq %rsi, %rax
 - movabsq $-7286284899644833059, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $89790851547914507, %rdx
 - shrq $56, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L166:
 - movq %rsi, %rax
 - movabsq $-9121059423612888229, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $71267046102139967, %rdx
 - shrq $55, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L165:
 - movq %rsi, %rax
 - movabsq $5052508716967026185, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $56564691976601587, %rdx
 - shrq $55, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L164:
 - movq %rsi, %rax
 - movabsq $-7286284899644838005, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $44895425773957261, %rdx
 - shrq $55, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L163:
 - movq %rsi, %rax
 - movabsq $204625226483771233, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $35633523051069991, %rdx
 - shrq $54, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L162:
 - movq %rsi, %rax
 - movabsq $-6697117678371261677, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $28282345988300791, %rdx
 - shrq $54, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L161:
 - movq %rsi, %rax
 - movabsq $7401800811943599775, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $22447712886978529, %rdx
 - shrq $53, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L160:
 - movq %rsi, %rax
 - movabsq $204625226483842941, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $17816761525534927, %rdx
 - shrq $53, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L159:
 - movq %rsi, %rax
 - movabsq $1468703299417290241, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $14141172994150357, %rdx
 - shrq $50, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L158:
 - movq %rsi, %rax
 - movabsq $7401800811943557239, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $11223856443489329, %rdx
 - shrq $52, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L157:
 - movq %rsi, %rax
 - movabsq $1165710581262083823, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $8908380762767489, %rdx
 - shrq $49, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L156:
 - movq %rsi, %rax
 - movabsq $5052508716967097225, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $7070586497075177, %rdx
 - shrq $52, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L155:
 - movq %rsi, %rax
 - movabsq $-7286284899644581471, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $5611928221744609, %rdx
 - shrq $52, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L154:
 - movq %rsi, %rax
 - movabsq $204625226483921455, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $4454190381383713, %rdx
 - shrq $51, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L153:
 - movq %rsi, %rax
 - movabsq $5874813197669177997, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $3535293248537579, %rdx
 - shrq $50, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L152:
 - movq %rsi, %rax
 - movabsq $-3643142449822251167, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $2805964110872297, %rdx
 - shrq $51, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L151:
 - movq %rsi, %rax
 - movabsq $2331421162524246421, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $2227095190691797, %rdx
 - shrq $48, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L150:
 - movq %rsi, %rax
 - movabsq $2937406598834606447, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $1767646624268779, %rdx
 - shrq $48, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L149:
 - movq %rsi, %rax
 - movabsq $3700900405971829069, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $1402982055436147, %rdx
 - shrq $48, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L148:
 - movq %rsi, %rax
 - movabsq $4662842325048473999, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $1113547595345903, %rdx
 - shrq $48, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L147:
 - movq %rsi, %rax
 - movabsq $2937406598834634697, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $883823312134381, %rdx
 - shrq $47, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L146:
 - movq %rsi, %rax
 - movabsq $462612550746509299, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $701491027718027, %rdx
 - shrq $44, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L145:
 - movq %rsi, %rax
 - movabsq $204625226485768087, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $556773797672909, %rdx
 - shrq $48, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L144:
 - movq %rsi, %rax
 - movabsq $5052508716968562899, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $441911656067171, %rdx
 - shrq $48, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L143:
 - movq %rsi, %rax
 - movabsq $-7286284899641959417, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $350745513859007, %rdx
 - shrq $48, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L142:
 - movq %rsi, %rax
 - movabsq $1165710581262197013, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $278386898836457, %rdx
 - shrq $44, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L141:
 - movq %rsi, %rax
 - movabsq $-6697117678370255065, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $220955828033581, %rdx
 - shrq $47, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L140:
 - movq %rsi, %rax
 - movabsq $7401800811945235591, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $175372756929481, %rdx
 - shrq $46, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L139:
 - movq %rsi, %rax
 - movabsq $4662842325050647247, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $139193449418173, %rdx
 - shrq $45, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L138:
 - movq %rsi, %rax
 - movabsq $-6697117678369032009, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $110477914016779, %rdx
 - shrq $46, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L137:
 - movq %rsi, %rax
 - movabsq $-7286284899644407371, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $87686378464759, %rdx
 - shrq $46, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L136:
 - movq %rsi, %rax
 - movabsq $582855290631376967, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $69596724709081, %rdx
 - shrq $41, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L135:
 - movq %rsi, %rax
 - movabsq $-6697117678368500245, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $55238957008387, %rdx
 - shrq $45, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L134:
 - movq %rsi, %rax
 - movabsq $462612550746653723, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $43843189232363, %rdx
 - shrq $40, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L133:
 - movq %rsi, %rax
 - movabsq $204625226498531209, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $34798362354533, %rdx
 - shrq $44, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L132:
 - movq %rsi, %rax
 - movabsq $-6697117678364033431, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $27619478504183, %rdx
 - shrq $44, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L131:
 - movq %rsi, %rax
 - movabsq $-7286284899538047989, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $21921594616111, %rdx
 - shrq $44, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L130:
 - movq %rsi, %rax
 - movabsq $204625226525866399, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $17399181177241, %rdx
 - shrq $43, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L129:
 - movq %rsi, %rax
 - movabsq $5052508717050401315, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $13809739252051, %rdx
 - shrq $43, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L128:
 - movq %rsi, %rax
 - movabsq $-7286284899525892631, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $10960797308051, %rdx
 - shrq $43, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L127:
 - movq %rsi, %rax
 - movabsq $204625226631991253, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $8699590588571, %rdx
 - shrq $42, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L126:
 - movq %rsi, %rax
 - movabsq $5874813197712535009, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $6904869625999, %rdx
 - shrq $41, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L125:
 - movq %rsi, %rax
 - movabsq $7401800811995587473, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $5480398654009, %rdx
 - shrq $41, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L124:
 - movq %rsi, %rax
 - movabsq $204625226711316901, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $4349795294267, %rdx
 - shrq $41, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L123:
 - movq %rsi, %rax
 - movabsq $5874813197757628561, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $3452434812973, %rdx
 - shrq $40, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L122:
 - movq %rsi, %rax
 - movabsq $-3643142449483373083, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $2740199326961, %rdx
 - shrq $41, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L121:
 - movq %rsi, %rax
 - movabsq $1165710581308731321, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $2174897647073, %rdx
 - shrq $37, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L120:
 - movq %rsi, %rax
 - movabsq $5874813197823992657, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $1726217406467, %rdx
 - shrq $39, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L119:
 - movq %rsi, %rax
 - movabsq $-7286284898502141373, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $1370099663459, %rdx
 - shrq $40, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L118:
 - movq %rsi, %rax
 - movabsq $-9121059423381200853, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $1087448823553, %rdx
 - shrq $39, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L117:
 - movq %rsi, %rax
 - movabsq $-6697117678000307137, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $863108703229, %rdx
 - shrq $39, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L116:
 - movq %rsi, %rax
 - movabsq $-7286284898566969949, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $685049831731, %rdx
 - shrq $39, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L115:
 - movq %rsi, %rax
 - movabsq $-9121059423458382565, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $543724411781, %rdx
 - shrq $38, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L114:
 - movq %rsi, %rax
 - movabsq $5874813197929494553, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $431554351609, %rdx
 - shrq $37, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L113:
 - movq %rsi, %rax
 - movabsq $-3643142448138180137, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $342524915839, %rdx
 - shrq $38, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L112:
 - movq %rsi, %rax
 - movabsq $-9121059421485961037, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $271862205833, %rdx
 - shrq $37, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L111:
 - movq %rsi, %rax
 - movabsq $734351649800744341, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $215777175787, %rdx
 - shrq $33, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L110:
 - movq %rsi, %rax
 - movabsq $-3643142446711951471, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $171262457903, %rdx
 - shrq $37, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L109:
 - movq %rsi, %rax
 - movabsq $-9121059421794687885, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $135931102921, %rdx
 - shrq $36, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L108:
 - movq %rsi, %rax
 - movabsq $5052508722201276137, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $107888587883, %rdx
 - shrq $36, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L107:
 - movq %rsi, %rax
 - movabsq $-3643142442822236927, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $85631228929, %rdx
 - shrq $36, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L106:
 - movq %rsi, %rax
 - movabsq $204625233824898021, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $67965551447, %rdx
 - shrq $35, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L105:
 - movq %rsi, %rax
 - movabsq $5874813200339021725, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $53944293929, %rdx
 - shrq $34, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L104:
 - movq %rsi, %rax
 - movabsq $3700900409753124047, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $42815614441, %rdx
 - shrq $33, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L103:
 - movq %rsi, %rax
 - movabsq $204625224220062755, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $33982775741, %rdx
 - shrq $34, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L102:
 - movq %rsi, %rax
 - movabsq $2937406600550679003, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $26972146961, %rdx
 - shrq $32, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L101:
 - movq %rsi, %rax
 - movabsq $-3643142433659798215, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $21407807219, %rdx
 - shrq $34, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L100:
 - movq %rsi, %rax
 - movabsq $204625239038951455, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $16991387857, %rdx
 - shrq $33, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L99:
 - movq %rsi, %rax
 - movabsq $-6697117664972524621, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $13486073473, %rdx
 - shrq $33, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L98:
 - movq %rsi, %rax
 - movabsq $-3643142408074120241, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $10703903591, %rdx
 - shrq $33, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L97:
 - movq %rsi, %rax
 - movabsq $204625308193765703, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $8495693897, %rdx
 - shrq $32, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L96:
 - movq %rsi, %rax
 - movabsq $5052508811721336835, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movabsq $6743036717, %rdx
 - shrq $32, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L95:
 - movq %rsi, %rax
 - movabsq $-3643142362434802555, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movabsq $5351951779, %rdx
 - shrq $32, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L94:
 - movq %rsi, %rax
 - movabsq $2331421184538141009, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movl $4247846927, %edx
 - shrq $29, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L93:
 - movq %rsi, %rax
 - movabsq $2937406624183103903, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - movl $3371518343, %edx
 - shrq $29, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L92:
 - movq %rsi, %rax
 - movabsq $-7286284630824949895, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - movl $2675975881, %edx
 - shrq $31, %rax
 - imulq %rax, %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - ret
 - .L91:
 - movq %rsi, %rax
 - movabsq $-9121059263109085375, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $30, %rax
 - imulq $2123923447, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L90:
 - movq %rsi, %rax
 - movabsq $-6697117545612442713, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $30, %rax
 - imulq $1685759167, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L89:
 - movq %rsi, %rax
 - movabsq $-3643142188175586983, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $30, %rax
 - imulq $1337987929, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L88:
 - movq %rsi, %rax
 - movabsq $204625591399200829, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $29, %rax
 - imulq $1061961721, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L87:
 - movq %rsi, %rax
 - movabsq $-6697117482883055629, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $29, %rax
 - imulq $842879579, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L86:
 - movq %rsi, %rax
 - movabsq $7401800804466018533, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $28, %rax
 - imulq $668993977, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L85:
 - movq %rsi, %rax
 - movabsq $204625573836072819, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $28, %rax
 - imulq $530980861, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L84:
 - movq %rsi, %rax
 - movabsq $5052509470379906591, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $28, %rax
 - imulq $421439783, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L83:
 - movq %rsi, %rax
 - movabsq $-7286283380584182627, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $28, %rax
 - imulq $334496971, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L82:
 - movq %rsi, %rax
 - movabsq $72856909804274523, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $20, %rax
 - imulq $265490441, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L81:
 - movq %rsi, %rax
 - movabsq $-6697116716190492701, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $27, %rax
 - imulq $210719881, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L80:
 - movq %rsi, %rax
 - movabsq $-3643141469010526933, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $27, %rax
 - imulq $167248483, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L79:
 - movq %rsi, %rax
 - movabsq $582855372836016971, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $22, %rax
 - imulq $132745199, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L78:
 - movq %rsi, %rax
 - movabsq $5052510975885347541, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $26, %rax
 - imulq $105359939, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L77:
 - movq %rsi, %rax
 - movabsq $-3643140672396840387, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $26, %rax
 - imulq $83624237, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L76:
 - movq %rsi, %rax
 - movabsq $204622939367245927, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $25, %rax
 - imulq $66372617, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L75:
 - movq %rsi, %rax
 - movabsq $-6697116437393172283, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $25, %rax
 - imulq $52679969, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L74:
 - movq %rsi, %rax
 - movabsq $-3643133060306178485, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $25, %rax
 - imulq $41812097, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L73:
 - movq %rsi, %rax
 - movabsq $204638394928321289, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $24, %rax
 - imulq $33186281, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L72:
 - movq %rsi, %rax
 - movabsq $2937408637623539617, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $22, %rax
 - imulq $26339969, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L71:
 - movq %rsi, %rax
 - movabsq $-7286244169439630155, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $24, %rax
 - imulq $20906033, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L70:
 - movq %rsi, %rax
 - movabsq $204653569504115629, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $23, %rax
 - imulq $16593127, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L69:
 - movq %rsi, %rax
 - movabsq $2937410310410423161, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $21, %rax
 - imulq $13169977, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L68:
 - movq %rsi, %rax
 - movabsq $7401817721478256657, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $22, %rax
 - imulq $10453007, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L67:
 - movq %rsi, %rax
 - movabsq $582856914004950815, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $18, %rax
 - imulq $8296553, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L66:
 - movq %rsi, %rax
 - movabsq $-6697093018371023455, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $22, %rax
 - imulq $6584983, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L65:
 - movq %rsi, %rax
 - movabsq $7401835424124548113, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $21, %rax
 - imulq $5226491, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L64:
 - movq %rsi, %rax
 - movabsq $204665933991537723, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $21, %rax
 - imulq $4148279, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L63:
 - movq %rsi, %rax
 - movabsq $-6697084096814219971, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $21, %rax
 - imulq $3292489, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L62:
 - movq %rsi, %rax
 - movabsq $3700941079758809273, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $19, %rax
 - imulq $2613229, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L61:
 - movq %rsi, %rax
 - movabsq $2331438053495475305, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $18, %rax
 - imulq $2074129, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L60:
 - movq %rsi, %rax
 - movabsq $5052682939331786655, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $20, %rax
 - imulq $1646237, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L59:
 - movq %rsi, %rax
 - movabsq $-3642826799932731611, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $20, %rax
 - imulq $1306601, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L58:
 - movq %rsi, %rax
 - movabsq $204859271745303697, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $19, %rax
 - imulq $1037059, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L57:
 - movq %rsi, %rax
 - movabsq $5052725763305194521, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $19, %rax
 - imulq $823117, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L56:
 - movq %rsi, %rax
 - movabsq $-3642067644443978125, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $19, %rax
 - imulq $653267, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L55:
 - movq %rsi, %rax
 - movabsq $-9120573691983262007, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $18, %rax
 - imulq $518509, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L54:
 - movq %rsi, %rax
 - movabsq $2937658573106088239, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $16, %rax
 - imulq $411527, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L53:
 - movq %rsi, %rax
 - movabsq $-7282639487009408091, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $18, %rax
 - imulq $326617, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L52:
 - movq %rsi, %rax
 - movabsq $-9119656289436733569, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $17, %rax
 - imulq $259229, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L51:
 - movq %rsi, %rax
 - movabsq $734430705105626713, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $13, %rax
 - imulq $205759, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L50:
 - movq %rsi, %rax
 - movabsq $-7282367506794288013, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $17, %rax
 - imulq $163307, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L49:
 - movq %rsi, %rax
 - movabsq $4663813758572566199, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $15, %rax
 - imulq $129607, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L48:
 - movq %rsi, %rax
 - movabsq $5875588419251286365, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $15, %rax
 - imulq $102877, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L47:
 - movq %rsi, %rax
 - movabsq $7403188156711222273, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $15, %rax
 - imulq $81649, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L46:
 - movq %rsi, %rax
 - movabsq $206352154008415623, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $15, %rax
 - imulq $64811, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L45:
 - movq %rsi, %rax
 - movabsq $5056294976286155263, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $15, %rax
 - imulq $51437, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L44:
 - movq %rsi, %rax
 - movabsq $7403460179400271751, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $14, %rax
 - imulq $40823, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L43:
 - movq %rsi, %rax
 - movabsq $208942781860171151, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $14, %rax
 - imulq $32401, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L42:
 - movq %rsi, %rax
 - movabsq $2938051239488055505, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $12, %rax
 - imulq $25717, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L41:
 - movq %rsi, %rax
 - movabsq $7407996835718841455, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $13, %rax
 - imulq $20399, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L40:
 - movq %rsi, %rax
 - movabsq $2333040935154521195, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $11, %rax
 - imulq $16193, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L39:
 - movq %rsi, %rax
 - movabsq $5067723747317235413, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $13, %rax
 - imulq $12853, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L38:
 - movq %rsi, %rax
 - movabsq $3706360429996778349, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $11, %rax
 - imulq $10193, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L37:
 - movq %rsi, %rax
 - movabsq $72975127995883997, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $5, %rax
 - imulq $8089, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L36:
 - movq %rsi, %rax
 - movabsq $5883652369250453467, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $11, %rax
 - imulq $6421, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L35:
 - movq %rsi, %rax
 - movabsq $-7187231522329925555, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $12, %rax
 - imulq $5087, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L34:
 - movq %rsi, %rax
 - movabsq $316072843577342703, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $11, %rax
 - imulq $4027, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L33:
 - movq %rsi, %rax
 - movabsq $5142972980899978019, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $11, %rax
 - imulq $3203, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L32:
 - movq %rsi, %rax
 - movabsq $7439726637053399313, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $10, %rax
 - imulq $2539, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L31:
 - movq %rsi, %rax
 - movabsq $339398075945924123, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $10, %rax
 - imulq $2011, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L30:
 - movq %rsi, %rax
 - movabsq $5209443692700693663, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $10, %rax
 - imulq $1597, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L29:
 - movq %rsi, %rax
 - movabsq $-3443196868404880563, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $10, %rax
 - imulq $1259, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L28:
 - movq %rsi, %rax
 - movabsq $-9086255505087856445, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $9, %rax
 - movq %rax, %rcx
 - movq %rax, %rdx
 - salq $4, %rcx
 - salq $10, %rdx
 - subq %rcx, %rdx
 - addq %rdx, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L27:
 - movq %rsi, %rax
 - movabsq $5253966003427940047, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $9, %rax
 - imulq $797, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L26:
 - movq %rsi, %rax
 - movabsq $-3478862986959487547, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $9, %rax
 - imulq $631, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L25:
 - movq %rsi, %rax
 - movabsq $591478767894494641, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $4, %rax
 - imulq $499, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L24:
 - movq %rsi, %rax
 - movabsq $185861401246443845, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $2, %rax
 - imulq $397, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L23:
 - movq %rsi, %rax
 - movabsq $-6718622442181753623, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $8, %rax
 - imulq $313, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L22:
 - movq %rsi, %rax
 - movabsq $367465021388636487, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $7, %rax
 - leaq 0(,%rax,4), %rcx
 - movq %rax, %rdx
 - salq $8, %rdx
 - subq %rcx, %rdx
 - subq %rax, %rdx
 - subq %rdx, %rsi
 - movq %rsi, %rax
 - ret
 - .L21:
 - movq %rsi, %rax
 - movabsq $1498212716646461045, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $4, %rax
 - imulq $197, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L20:
 - movq %rsi, %rax
 - movabsq $7818487554419942407, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $6, %rax
 - imulq $151, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L19:
 - movq %rsi, %rax
 - movabsq $145249953336295683, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $6, %rax
 - movq %rax, %rdx
 - salq $7, %rdx
 - subq %rax, %rdx
 - subq %rdx, %rsi
 - movq %rsi, %rax
 - ret
 - .L18:
 - movq %rsi, %rax
 - movabsq $5895351198814392785, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $6, %rax
 - leaq (%rax,%rax,2), %rdx
 - salq $5, %rdx
 - addq %rdx, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L17:
 - movq %rsi, %rax
 - movabsq $8086243977516515777, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $5, %rax
 - leaq (%rax,%rax,8), %rdx
 - leaq (%rax,%rdx,8), %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L16:
 - movq %rsi, %rax
 - movabsq $-8441730338816235485, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $5, %rax
 - leaq 0(,%rax,4), %rcx
 - movq %rax, %rdx
 - salq $6, %rdx
 - subq %rcx, %rdx
 - subq %rax, %rdx
 - subq %rdx, %rsi
 - movq %rsi, %rax
 - ret
 - .L15:
 - movq %rsi, %rax
 - movabsq $6672226579852391011, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $5, %rax
 - leaq (%rax,%rax,2), %rdx
 - salq $4, %rdx
 - subq %rax, %rdx
 - subq %rdx, %rsi
 - movq %rsi, %rax
 - ret
 - .L14:
 - movq %rsi, %rax
 - movabsq $-2492803253203993461, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $5, %rax
 - leaq (%rax,%rax,8), %rdx
 - leaq (%rax,%rdx,4), %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L13:
 - movq %rsi, %rax
 - movabsq $1908283869694091547, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $4, %rax
 - leaq 0(,%rax,8), %rdx
 - subq %rax, %rdx
 - leaq (%rax,%rdx,4), %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L12:
 - movq %rsi, %rax
 - movabsq $7218291159277650633, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $4, %rax
 - leaq (%rax,%rax,2), %rdx
 - salq $3, %rdx
 - subq %rax, %rdx
 - subq %rdx, %rsi
 - movq %rsi, %rax
 - ret
 - .L11:
 - movq %rsi, %rax
 - movabsq $-1085102592571150095, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $4, %rax
 - movq %rax, %rdx
 - salq $4, %rdx
 - addq %rdx, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L10:
 - movq %rsi, %rax
 - movabsq $5675921253449092805, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $2, %rax
 - leaq (%rax,%rax,2), %rdx
 - leaq (%rax,%rdx,4), %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L9:
 - movq %rsi, %rax
 - movabsq $3353953467947191203, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq %rax
 - leaq (%rax,%rax,4), %rdx
 - leaq (%rax,%rdx,2), %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L8:
 - movq %rsi, %rax
 - movabsq $2635249153387078803, %rdx
 - mulq %rdx
 - movq %rsi, %rax
 - subq %rdx, %rax
 - shrq %rax
 - addq %rax, %rdx
 - movq %rdx, %rax
 - shrq $2, %rax
 - leaq 0(,%rax,8), %rdx
 - subq %rax, %rdx
 - subq %rdx, %rsi
 - movq %rsi, %rax
 - ret
 - .L7:
 - movq %rsi, %rax
 - movabsq $-3689348814741910323, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq $2, %rax
 - leaq (%rax,%rax,4), %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L6:
 - movq %rsi, %rax
 - movabsq $-6148914691236517205, %rdx
 - mulq %rdx
 - movq %rdx, %rax
 - shrq %rax
 - leaq (%rax,%rax,2), %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L5:
 - movq %rsi, %rax
 - andl $1, %eax
 - ret
 - .L191:
 - xorl %eax, %eax
 - ret
 - .L190:
 - xorl %eax, %eax
 - cmpq $-59, %rsi
 - setnb %al
 - imulq $-59, %rax, %rax
 - subq %rax, %rsi
 - movq %rsi, %rax
 - ret
 - .L2:
 - movq %rsi, %rax
 - ret
 - .cfi_endproc
 - .LFE2757:
 - .size _ZNK24prime_number_hash_policy14index_for_hashEmm, .-_ZNK24prime_number_hash_policy14index_for_hashEmm
 - .section .text.unlikely._ZNK24prime_number_hash_policy14index_for_hashEmm,"axG",@progbits,_ZNK24prime_number_hash_policy14index_for_hashEmm,comdat
 - .LCOLDE0:
 - .section .text._ZNK24prime_number_hash_policy14index_for_hashEmm,"axG",@progbits,_ZNK24prime_number_hash_policy14index_for_hashEmm,comdat
 - .LHOTE0:
 - .section .rodata.str1.1,"aMS",@progbits,1
 - .LC1:
 - .string "%zu\n"
 - .section .text.unlikely,"ax",@progbits
 - .LCOLDB2:
 - .section .text.startup,"ax",@progbits
 - .LHOTB2:
 - .p2align 4,,15
 - .globl main
 - .type main, @function
 - main:
 - .LFB2762:
 - .cfi_startproc
 - pushq %rbx
 - .cfi_def_cfa_offset 16
 - .cfi_offset 3, -16
 - movq %rsi, %rbx
 - subq $16, %rsp
 - .cfi_def_cfa_offset 32
 - movb %dil, 7(%rsp)
 - leaq 7(%rsp), %rdi
 - movq %fs:40, %rax
 - movq %rax, 8(%rsp)
 - xorl %eax, %eax
 - call _ZNK24prime_number_hash_policy14index_for_hashEmm
 - movl $.LC1, %esi
 - movq %rax, %rdx
 - movl $1, %edi
 - xorl %eax, %eax
 - call __printf_chk
 - movzbl 7(%rsp), %ecx
 - xorl %edx, %edx
 - testb %cl, %cl
 - je .L194
 - subl $1, %ecx
 - movq %rbx, %rax
 - xorl %edx, %edx
 - movslq %ecx, %rcx
 - divq _ZZNK24prime_number_hash_policy16index_for_hash_2EmmE10prime_list(,%rcx,8)
 - .L194:
 - xorl %eax, %eax
 - movl $.LC1, %esi
 - movl $1, %edi
 - call __printf_chk
 - xorl %eax, %eax
 - movq 8(%rsp), %rbx
 - xorq %fs:40, %rbx
 - jne .L200
 - addq $16, %rsp
 - .cfi_remember_state
 - .cfi_def_cfa_offset 16
 - popq %rbx
 - .cfi_def_cfa_offset 8
 - ret
 - .L200:
 - .cfi_restore_state
 - call __stack_chk_fail
 - .cfi_endproc
 - .LFE2762:
 - .size main, .-main
 - .section .text.unlikely
 - .LCOLDE2:
 - .section .text.startup
 - .LHOTE2:
 - .weak _ZZNK24prime_number_hash_policy16index_for_hash_2EmmE10prime_list
 - .section .rodata._ZZNK24prime_number_hash_policy16index_for_hash_2EmmE10prime_list,"aG",@progbits,_ZZNK24prime_number_hash_policy16index_for_hash_2EmmE10prime_list,comdat
 - .align 32
 - .type _ZZNK24prime_number_hash_policy16index_for_hash_2EmmE10prime_list, @gnu_unique_object
 - .size _ZZNK24prime_number_hash_policy16index_for_hash_2EmmE10prime_list, 1488
 - _ZZNK24prime_number_hash_policy16index_for_hash_2EmmE10prime_list:
 - .quad 2
 - .quad 3
 - .quad 5
 - .quad 7
 - .quad 11
 - .quad 13
 - .quad 17
 - .quad 23
 - .quad 29
 - .quad 37
 - .quad 47
 - .quad 59
 - .quad 73
 - .quad 97
 - .quad 127
 - .quad 151
 - .quad 197
 - .quad 251
 - .quad 313
 - .quad 397
 - .quad 499
 - .quad 631
 - .quad 797
 - .quad 1009
 - .quad 1259
 - .quad 1597
 - .quad 2011
 - .quad 2539
 - .quad 3203
 - .quad 4027
 - .quad 5087
 - .quad 6421
 - .quad 8089
 - .quad 10193
 - .quad 12853
 - .quad 16193
 - .quad 20399
 - .quad 25717
 - .quad 32401
 - .quad 40823
 - .quad 51437
 - .quad 64811
 - .quad 81649
 - .quad 102877
 - .quad 129607
 - .quad 163307
 - .quad 205759
 - .quad 259229
 - .quad 326617
 - .quad 411527
 - .quad 518509
 - .quad 653267
 - .quad 823117
 - .quad 1037059
 - .quad 1306601
 - .quad 1646237
 - .quad 2074129
 - .quad 2613229
 - .quad 3292489
 - .quad 4148279
 - .quad 5226491
 - .quad 6584983
 - .quad 8296553
 - .quad 10453007
 - .quad 13169977
 - .quad 16593127
 - .quad 20906033
 - .quad 26339969
 - .quad 33186281
 - .quad 41812097
 - .quad 52679969
 - .quad 66372617
 - .quad 83624237
 - .quad 105359939
 - .quad 132745199
 - .quad 167248483
 - .quad 210719881
 - .quad 265490441
 - .quad 334496971
 - .quad 421439783
 - .quad 530980861
 - .quad 668993977
 - .quad 842879579
 - .quad 1061961721
 - .quad 1337987929
 - .quad 1685759167
 - .quad 2123923447
 - .quad 2675975881
 - .quad 3371518343
 - .quad 4247846927
 - .quad 5351951779
 - .quad 6743036717
 - .quad 8495693897
 - .quad 10703903591
 - .quad 13486073473
 - .quad 16991387857
 - .quad 21407807219
 - .quad 26972146961
 - .quad 33982775741
 - .quad 42815614441
 - .quad 53944293929
 - .quad 67965551447
 - .quad 85631228929
 - .quad 107888587883
 - .quad 135931102921
 - .quad 171262457903
 - .quad 215777175787
 - .quad 271862205833
 - .quad 342524915839
 - .quad 431554351609
 - .quad 543724411781
 - .quad 685049831731
 - .quad 863108703229
 - .quad 1087448823553
 - .quad 1370099663459
 - .quad 1726217406467
 - .quad 2174897647073
 - .quad 2740199326961
 - .quad 3452434812973
 - .quad 4349795294267
 - .quad 5480398654009
 - .quad 6904869625999
 - .quad 8699590588571
 - .quad 10960797308051
 - .quad 13809739252051
 - .quad 17399181177241
 - .quad 21921594616111
 - .quad 27619478504183
 - .quad 34798362354533
 - .quad 43843189232363
 - .quad 55238957008387
 - .quad 69596724709081
 - .quad 87686378464759
 - .quad 110477914016779
 - .quad 139193449418173
 - .quad 175372756929481
 - .quad 220955828033581
 - .quad 278386898836457
 - .quad 350745513859007
 - .quad 441911656067171
 - .quad 556773797672909
 - .quad 701491027718027
 - .quad 883823312134381
 - .quad 1113547595345903
 - .quad 1402982055436147
 - .quad 1767646624268779
 - .quad 2227095190691797
 - .quad 2805964110872297
 - .quad 3535293248537579
 - .quad 4454190381383713
 - .quad 5611928221744609
 - .quad 7070586497075177
 - .quad 8908380762767489
 - .quad 11223856443489329
 - .quad 14141172994150357
 - .quad 17816761525534927
 - .quad 22447712886978529
 - .quad 28282345988300791
 - .quad 35633523051069991
 - .quad 44895425773957261
 - .quad 56564691976601587
 - .quad 71267046102139967
 - .quad 89790851547914507
 - .quad 113129383953203213
 - .quad 142534092204280003
 - .quad 179581703095829107
 - .quad 226258767906406483
 - .quad 285068184408560057
 - .quad 359163406191658253
 - .quad 452517535812813007
 - .quad 570136368817120201
 - .quad 718326812383316683
 - .quad 905035071625626043
 - .quad 1140272737634240411
 - .quad 1436653624766633509
 - .quad 1810070143251252131
 - .quad 2280545475268481167
 - .quad 2873307249533267101
 - .quad 3620140286502504283
 - .quad 4561090950536962147
 - .quad 5746614499066534157
 - .quad 7240280573005008577
 - .quad 9122181901073924329
 - .quad -6953515075576482927
 - .quad -3966182927699534447
 - .quad -59
 - .ident "GCC: (Gentoo 5.4.0 p1.0, pie-0.6.5) 5.4.0"
 - .section .note.GNU-stack,"",@progbits