1 1.1 christos .machine "any" 2 1.1 christos .text 3 1.1 christos 4 1.1 christos .globl poly1305_init_fpu 5 1.1 christos .type poly1305_init_fpu,@function 6 1.1 christos .align 6 7 1.1 christos poly1305_init_fpu: 8 1.1 christos stwu 1,-24(1) 9 1.1 christos mflr 6 10 1.1 christos stw 6,28(1) 11 1.1 christos 12 1.1 christos bl .LPICmeup 13 1.1 christos 14 1.1 christos xor 0,0,0 15 1.1 christos mtlr 6 16 1.1 christos 17 1.1 christos lfd 8,8*0(5) 18 1.1 christos lfd 9,8*1(5) 19 1.1 christos lfd 10,8*2(5) 20 1.1 christos lfd 11,8*3(5) 21 1.1 christos lfd 12,8*4(5) 22 1.1 christos lfd 13,8*5(5) 23 1.1 christos 24 1.1 christos stfd 8,8*0(3) 25 1.1 christos stfd 9,8*1(3) 26 1.1 christos stfd 10,8*2(3) 27 1.1 christos stfd 11,8*3(3) 28 1.1 christos 29 1.1 christos .long 0x7c040040 30 1.1 christos beq- .Lno_key 31 1.1 christos 32 1.1 christos lfd 6,8*13(5) 33 1.1 christos mffs 7 34 1.1 christos 35 1.1 christos stfd 8,8*4(3) 36 1.1 christos stfd 9,8*5(3) 37 1.1 christos stfd 10,8*6(3) 38 1.1 christos stfd 11,8*7(3) 39 1.1 christos 40 1.1 christos li 8,4 41 1.1 christos li 9,8 42 1.1 christos li 10,12 43 1.1 christos lwbrx 7,0,4 44 1.1 christos lwbrx 8,8,4 45 1.1 christos lwbrx 9,9,4 46 1.1 christos lwbrx 10,10,4 47 1.1 christos 48 1.1 christos lis 11,0xf000 49 1.1 christos ori 12,11,3 50 1.1 christos andc 7,7,11 51 1.1 christos andc 8,8,12 52 1.1 christos andc 9,9,12 53 1.1 christos andc 10,10,12 54 1.1 christos 55 1.1 christos stw 7,36(3) 56 1.1 christos stw 8,44(3) 57 1.1 christos stw 9,52(3) 58 1.1 christos stw 10,60(3) 59 1.1 christos 60 1.1 christos mtfsf 255,6 61 1.1 christos stfd 8,8*18(3) 62 1.1 christos stfd 9,8*19(3) 63 1.1 christos stfd 10,8*20(3) 64 1.1 christos stfd 11,8*21(3) 65 1.1 christos stfd 12,8*22(3) 66 1.1 christos stfd 13,8*23(3) 67 1.1 christos 68 1.1 christos lfd 0,8*4(3) 69 1.1 christos lfd 2,8*5(3) 70 1.1 christos lfd 4,8*6(3) 71 1.1 christos lfd 6,8*7(3) 72 1.1 christos 73 1.1 christos fsub 0,0,8 74 1.1 christos fsub 2,2,9 75 1.1 christos fsub 4,4,10 76 1.1 christos fsub 6,6,11 77 1.1 christos 78 1.1 christos lfd 8,8*6(5) 79 1.1 christos lfd 9,8*7(5) 80 1.1 christos lfd 10,8*8(5) 81 1.1 christos lfd 11,8*9(5) 82 1.1 christos 83 1.1 christos fmul 3,2,13 84 1.1 christos fmul 5,4,13 85 1.1 christos stfd 7,8*15(3) 86 1.1 christos fmul 7,6,13 87 1.1 christos 88 1.1 christos fadd 1,0,8 89 1.1 christos stfd 3,8*12(3) 90 1.1 christos fadd 3,2,9 91 1.1 christos stfd 5,8*13(3) 92 1.1 christos fadd 5,4,10 93 1.1 christos stfd 7,8*14(3) 94 1.1 christos fadd 7,6,11 95 1.1 christos 96 1.1 christos fsub 1,1,8 97 1.1 christos fsub 3,3,9 98 1.1 christos fsub 5,5,10 99 1.1 christos fsub 7,7,11 100 1.1 christos 101 1.1 christos lfd 8,8*10(5) 102 1.1 christos lfd 9,8*11(5) 103 1.1 christos lfd 10,8*12(5) 104 1.1 christos 105 1.1 christos fsub 0,0,1 106 1.1 christos fsub 2,2,3 107 1.1 christos fsub 4,4,5 108 1.1 christos fsub 6,6,7 109 1.1 christos 110 1.1 christos stfd 1,8*5(3) 111 1.1 christos stfd 3,8*7(3) 112 1.1 christos stfd 5,8*9(3) 113 1.1 christos stfd 7,8*11(3) 114 1.1 christos 115 1.1 christos stfd 0,8*4(3) 116 1.1 christos stfd 2,8*6(3) 117 1.1 christos stfd 4,8*8(3) 118 1.1 christos stfd 6,8*10(3) 119 1.1 christos 120 1.1 christos lfd 2,8*12(3) 121 1.1 christos lfd 4,8*13(3) 122 1.1 christos lfd 6,8*14(3) 123 1.1 christos lfd 0,8*15(3) 124 1.1 christos 125 1.1 christos fadd 3,2,8 126 1.1 christos fadd 5,4,9 127 1.1 christos fadd 7,6,10 128 1.1 christos 129 1.1 christos fsub 3,3,8 130 1.1 christos fsub 5,5,9 131 1.1 christos fsub 7,7,10 132 1.1 christos 133 1.1 christos fsub 2,2,3 134 1.1 christos fsub 4,4,5 135 1.1 christos fsub 6,6,7 136 1.1 christos 137 1.1 christos stfd 3,8*13(3) 138 1.1 christos stfd 5,8*15(3) 139 1.1 christos stfd 7,8*17(3) 140 1.1 christos 141 1.1 christos stfd 2,8*12(3) 142 1.1 christos stfd 4,8*14(3) 143 1.1 christos stfd 6,8*16(3) 144 1.1 christos 145 1.1 christos mtfsf 255,0 146 1.1 christos .Lno_key: 147 1.1 christos xor 3,3,3 148 1.1 christos addi 1,1,24 149 1.1 christos blr 150 1.1 christos .long 0 151 1.1 christos .byte 0,12,4,1,0x80,0,2,0 152 1.1 christos 153 1.1 christos 154 1.1 christos .globl poly1305_blocks_fpu 155 1.1 christos .type poly1305_blocks_fpu,@function 156 1.1 christos .align 4 157 1.1 christos poly1305_blocks_fpu: 158 1.1 christos srwi. 5,5,4 159 1.1 christos beq- .Labort 160 1.1 christos 161 1.1 christos stwu 1,-216(1) 162 1.1 christos mflr 0 163 1.1 christos stfd 14,72(1) 164 1.1 christos stfd 15,80(1) 165 1.1 christos stfd 16,88(1) 166 1.1 christos stfd 17,96(1) 167 1.1 christos stfd 18,104(1) 168 1.1 christos stfd 19,112(1) 169 1.1 christos stfd 20,120(1) 170 1.1 christos stfd 21,128(1) 171 1.1 christos stfd 22,136(1) 172 1.1 christos stfd 23,144(1) 173 1.1 christos stfd 24,152(1) 174 1.1 christos stfd 25,160(1) 175 1.1 christos stfd 26,168(1) 176 1.1 christos stfd 27,176(1) 177 1.1 christos stfd 28,184(1) 178 1.1 christos stfd 29,192(1) 179 1.1 christos stfd 30,200(1) 180 1.1 christos stfd 31,208(1) 181 1.1 christos stw 0,220(1) 182 1.1 christos 183 1.1 christos xor 0,0,0 184 1.1 christos li 10,1 185 1.1 christos mtctr 5 186 1.1 christos neg 5,5 187 1.1 christos stw 0,56(1) 188 1.1 christos stw 10,60(1) 189 1.1 christos 190 1.1 christos lfd 8,8*18(3) 191 1.1 christos lfd 9,8*19(3) 192 1.1 christos lfd 10,8*20(3) 193 1.1 christos lfd 11,8*21(3) 194 1.1 christos lfd 12,8*22(3) 195 1.1 christos lfd 13,8*23(3) 196 1.1 christos 197 1.1 christos lfd 0,8*0(3) 198 1.1 christos lfd 2,8*1(3) 199 1.1 christos lfd 4,8*2(3) 200 1.1 christos lfd 6,8*3(3) 201 1.1 christos 202 1.1 christos stfd 8,24(1) 203 1.1 christos oris 10,6,18736 204 1.1 christos stfd 9,32(1) 205 1.1 christos stfd 10,40(1) 206 1.1 christos stw 10,48(1) 207 1.1 christos 208 1.1 christos li 11,4 209 1.1 christos li 12,8 210 1.1 christos li 6,12 211 1.1 christos lwbrx 7,0,4 212 1.1 christos lwbrx 8,11,4 213 1.1 christos lwbrx 9,12,4 214 1.1 christos lwbrx 10,6,4 215 1.1 christos addi 4,4,16 216 1.1 christos 217 1.1 christos stw 7,28(1) 218 1.1 christos stw 8,36(1) 219 1.1 christos stw 9,44(1) 220 1.1 christos stw 10,52(1) 221 1.1 christos 222 1.1 christos mffs 28 223 1.1 christos lfd 29,56(1) 224 1.1 christos lfd 14,8*4(3) 225 1.1 christos lfd 15,8*5(3) 226 1.1 christos lfd 16,8*6(3) 227 1.1 christos lfd 17,8*7(3) 228 1.1 christos lfd 18,8*8(3) 229 1.1 christos lfd 19,8*9(3) 230 1.1 christos lfd 24,8*10(3) 231 1.1 christos lfd 25,8*11(3) 232 1.1 christos lfd 26,8*12(3) 233 1.1 christos lfd 27,8*13(3) 234 1.1 christos lfd 20,8*14(3) 235 1.1 christos lfd 21,8*15(3) 236 1.1 christos lfd 22,8*16(3) 237 1.1 christos lfd 23,8*17(3) 238 1.1 christos 239 1.1 christos stfd 28,56(1) 240 1.1 christos mtfsf 255,29 241 1.1 christos 242 1.1 christos addic 5,5,1 243 1.1 christos addze 0,0 244 1.1 christos slwi. 0,0,4 245 1.1 christos sub 4,4,0 246 1.1 christos 247 1.1 christos lfd 28,24(1) 248 1.1 christos lfd 29,32(1) 249 1.1 christos lfd 30,40(1) 250 1.1 christos lfd 31,48(1) 251 1.1 christos 252 1.1 christos fsub 0,0,8 253 1.1 christos lwbrx 7,0,4 254 1.1 christos fsub 2,2,9 255 1.1 christos lwbrx 8,11,4 256 1.1 christos fsub 4,4,10 257 1.1 christos lwbrx 9,12,4 258 1.1 christos fsub 6,6,11 259 1.1 christos lwbrx 10,6,4 260 1.1 christos 261 1.1 christos fsub 28,28,8 262 1.1 christos addi 4,4,16 263 1.1 christos fsub 29,29,9 264 1.1 christos fsub 30,30,10 265 1.1 christos fsub 31,31,11 266 1.1 christos 267 1.1 christos fadd 28,28,0 268 1.1 christos stw 7,28(1) 269 1.1 christos fadd 29,29,2 270 1.1 christos stw 8,36(1) 271 1.1 christos fadd 30,30,4 272 1.1 christos stw 9,44(1) 273 1.1 christos fadd 31,31,6 274 1.1 christos stw 10,52(1) 275 1.1 christos 276 1.1 christos b .Lentry 277 1.1 christos 278 1.1 christos .align 4 279 1.1 christos .Loop: 280 1.1 christos fsub 30,30,8 281 1.1 christos addic 5,5,1 282 1.1 christos fsub 31,31,9 283 1.1 christos addze 0,0 284 1.1 christos fsub 26,26,10 285 1.1 christos slwi. 0,0,4 286 1.1 christos fsub 27,27,11 287 1.1 christos sub 4,4,0 288 1.1 christos 289 1.1 christos fadd 0,0,30 290 1.1 christos fadd 1,1,31 291 1.1 christos fadd 4,4,26 292 1.1 christos fadd 5,5,27 293 1.1 christos 294 1.1 christos 295 1.1 christos fadd 26,2,10 296 1.1 christos lwbrx 7,0,4 297 1.1 christos fadd 27,3,10 298 1.1 christos lwbrx 8,11,4 299 1.1 christos fadd 30,6,12 300 1.1 christos lwbrx 9,12,4 301 1.1 christos fadd 31,7,12 302 1.1 christos lwbrx 10,6,4 303 1.1 christos fadd 24,0,9 304 1.1 christos addi 4,4,16 305 1.1 christos fadd 25,1,9 306 1.1 christos fadd 28,4,11 307 1.1 christos fadd 29,5,11 308 1.1 christos 309 1.1 christos fsub 26,26,10 310 1.1 christos stw 7,28(1) 311 1.1 christos fsub 27,27,10 312 1.1 christos stw 8,36(1) 313 1.1 christos fsub 30,30,12 314 1.1 christos stw 9,44(1) 315 1.1 christos fsub 31,31,12 316 1.1 christos stw 10,52(1) 317 1.1 christos fsub 24,24,9 318 1.1 christos fsub 25,25,9 319 1.1 christos fsub 28,28,11 320 1.1 christos fsub 29,29,11 321 1.1 christos 322 1.1 christos fsub 2,2,26 323 1.1 christos fsub 3,3,27 324 1.1 christos fsub 6,6,30 325 1.1 christos fsub 7,7,31 326 1.1 christos fsub 4,4,28 327 1.1 christos fsub 5,5,29 328 1.1 christos fsub 0,0,24 329 1.1 christos fsub 1,1,25 330 1.1 christos 331 1.1 christos fadd 2,2,24 332 1.1 christos fadd 3,3,25 333 1.1 christos fadd 6,6,28 334 1.1 christos fadd 7,7,29 335 1.1 christos fadd 4,4,26 336 1.1 christos fadd 5,5,27 337 1.1 christos fmadd 0,30,13,0 338 1.1 christos fmadd 1,31,13,1 339 1.1 christos 340 1.1 christos fadd 29,2,3 341 1.1 christos lfd 26,8*12(3) 342 1.1 christos fadd 31,6,7 343 1.1 christos lfd 27,8*13(3) 344 1.1 christos fadd 30,4,5 345 1.1 christos lfd 24,8*10(3) 346 1.1 christos fadd 28,0,1 347 1.1 christos lfd 25,8*11(3) 348 1.1 christos .Lentry: 349 1.1 christos fmul 0,22,29 350 1.1 christos fmul 1,23,29 351 1.1 christos fmul 4,16,29 352 1.1 christos fmul 5,17,29 353 1.1 christos fmul 2,14,29 354 1.1 christos fmul 3,15,29 355 1.1 christos fmul 6,18,29 356 1.1 christos fmul 7,19,29 357 1.1 christos 358 1.1 christos fmadd 0,26,31,0 359 1.1 christos fmadd 1,27,31,1 360 1.1 christos fmadd 4,22,31,4 361 1.1 christos fmadd 5,23,31,5 362 1.1 christos fmadd 2,20,31,2 363 1.1 christos fmadd 3,21,31,3 364 1.1 christos fmadd 6,14,31,6 365 1.1 christos fmadd 7,15,31,7 366 1.1 christos 367 1.1 christos fmadd 0,20,30,0 368 1.1 christos fmadd 1,21,30,1 369 1.1 christos fmadd 4,14,30,4 370 1.1 christos fmadd 5,15,30,5 371 1.1 christos fmadd 2,22,30,2 372 1.1 christos fmadd 3,23,30,3 373 1.1 christos fmadd 6,16,30,6 374 1.1 christos fmadd 7,17,30,7 375 1.1 christos 376 1.1 christos fmadd 0,14,28,0 377 1.1 christos lfd 30,24(1) 378 1.1 christos fmadd 1,15,28,1 379 1.1 christos lfd 31,32(1) 380 1.1 christos fmadd 4,18,28,4 381 1.1 christos lfd 26,40(1) 382 1.1 christos fmadd 5,19,28,5 383 1.1 christos lfd 27,48(1) 384 1.1 christos fmadd 2,16,28,2 385 1.1 christos fmadd 3,17,28,3 386 1.1 christos fmadd 6,24,28,6 387 1.1 christos fmadd 7,25,28,7 388 1.1 christos 389 1.1 christos bc 16,0,.Loop 390 1.1 christos 391 1.1 christos 392 1.1 christos fadd 24,0,9 393 1.1 christos fadd 25,1,9 394 1.1 christos fadd 28,4,11 395 1.1 christos fadd 29,5,11 396 1.1 christos fadd 26,2,10 397 1.1 christos fadd 27,3,10 398 1.1 christos fadd 30,6,12 399 1.1 christos fadd 31,7,12 400 1.1 christos 401 1.1 christos fsub 24,24,9 402 1.1 christos fsub 25,25,9 403 1.1 christos fsub 28,28,11 404 1.1 christos fsub 29,29,11 405 1.1 christos fsub 26,26,10 406 1.1 christos fsub 27,27,10 407 1.1 christos fsub 30,30,12 408 1.1 christos fsub 31,31,12 409 1.1 christos 410 1.1 christos fsub 2,2,26 411 1.1 christos fsub 3,3,27 412 1.1 christos fsub 6,6,30 413 1.1 christos fsub 7,7,31 414 1.1 christos fsub 4,4,28 415 1.1 christos fsub 5,5,29 416 1.1 christos fsub 0,0,24 417 1.1 christos fsub 1,1,25 418 1.1 christos 419 1.1 christos fadd 2,2,24 420 1.1 christos fadd 3,3,25 421 1.1 christos fadd 6,6,28 422 1.1 christos fadd 7,7,29 423 1.1 christos fadd 4,4,26 424 1.1 christos fadd 5,5,27 425 1.1 christos fmadd 0,30,13,0 426 1.1 christos fmadd 1,31,13,1 427 1.1 christos 428 1.1 christos fadd 29,2,3 429 1.1 christos fadd 31,6,7 430 1.1 christos fadd 30,4,5 431 1.1 christos fadd 28,0,1 432 1.1 christos 433 1.1 christos lfd 0,56(1) 434 1.1 christos fadd 29,29,9 435 1.1 christos fadd 31,31,11 436 1.1 christos fadd 30,30,10 437 1.1 christos fadd 28,28,8 438 1.1 christos 439 1.1 christos stfd 29,8*1(3) 440 1.1 christos stfd 31,8*3(3) 441 1.1 christos stfd 30,8*2(3) 442 1.1 christos stfd 28,8*0(3) 443 1.1 christos 444 1.1 christos mtfsf 255,0 445 1.1 christos lfd 14,72(1) 446 1.1 christos lfd 15,80(1) 447 1.1 christos lfd 16,88(1) 448 1.1 christos lfd 17,96(1) 449 1.1 christos lfd 18,104(1) 450 1.1 christos lfd 19,112(1) 451 1.1 christos lfd 20,120(1) 452 1.1 christos lfd 21,128(1) 453 1.1 christos lfd 22,136(1) 454 1.1 christos lfd 23,144(1) 455 1.1 christos lfd 24,152(1) 456 1.1 christos lfd 25,160(1) 457 1.1 christos lfd 26,168(1) 458 1.1 christos lfd 27,176(1) 459 1.1 christos lfd 28,184(1) 460 1.1 christos lfd 29,192(1) 461 1.1 christos lfd 30,200(1) 462 1.1 christos lfd 31,208(1) 463 1.1 christos addi 1,1,216 464 1.1 christos .Labort: 465 1.1 christos blr 466 1.1 christos .long 0 467 1.1 christos .byte 0,12,4,1,0x80,0,4,0 468 1.1 christos 469 1.1 christos .globl poly1305_emit_fpu 470 1.1 christos .type poly1305_emit_fpu,@function 471 1.1 christos .align 4 472 1.1 christos poly1305_emit_fpu: 473 1.1 christos stwu 1,-40(1) 474 1.1 christos mflr 0 475 1.1 christos stw 28,24(1) 476 1.1 christos stw 29,28(1) 477 1.1 christos stw 30,32(1) 478 1.1 christos stw 31,36(1) 479 1.1 christos stw 0,44(1) 480 1.1 christos 481 1.1 christos lwz 28,0(3) 482 1.1 christos lwz 7,4(3) 483 1.1 christos lwz 29,8(3) 484 1.1 christos lwz 8,12(3) 485 1.1 christos lwz 30,16(3) 486 1.1 christos lwz 9,20(3) 487 1.1 christos lwz 31,24(3) 488 1.1 christos lwz 10,28(3) 489 1.1 christos 490 1.1 christos lis 0,0xfff0 491 1.1 christos andc 28,28,0 492 1.1 christos andc 29,29,0 493 1.1 christos andc 30,30,0 494 1.1 christos andc 31,31,0 495 1.1 christos li 0,3 496 1.1 christos 497 1.1 christos srwi 6,31,2 498 1.1 christos and 11,31,0 499 1.1 christos andc 31,31,0 500 1.1 christos add 31,31,6 501 1.1 christos addc 7,7,31 502 1.1 christos adde 8,8,28 503 1.1 christos adde 9,9,29 504 1.1 christos adde 10,10,30 505 1.1 christos addze 11,11 506 1.1 christos 507 1.1 christos addic 28,7,5 508 1.1 christos addze 29,8 509 1.1 christos addze 30,9 510 1.1 christos addze 31,10 511 1.1 christos addze 0,11 512 1.1 christos 513 1.1 christos srwi 0,0,2 514 1.1 christos neg 0,0 515 1.1 christos srawi 0,0,31 516 1.1 christos 517 1.1 christos andc 7,7,0 518 1.1 christos and 28,28,0 519 1.1 christos andc 8,8,0 520 1.1 christos and 29,29,0 521 1.1 christos or 7,7,28 522 1.1 christos lwz 28,0(5) 523 1.1 christos andc 9,9,0 524 1.1 christos and 30,30,0 525 1.1 christos or 8,8,29 526 1.1 christos lwz 29,4(5) 527 1.1 christos andc 10,10,0 528 1.1 christos and 31,31,0 529 1.1 christos or 9,9,30 530 1.1 christos lwz 30,8(5) 531 1.1 christos or 10,10,31 532 1.1 christos lwz 31,12(5) 533 1.1 christos 534 1.1 christos addc 7,7,28 535 1.1 christos adde 8,8,29 536 1.1 christos adde 9,9,30 537 1.1 christos adde 10,10,31 538 1.1 christos li 29,4 539 1.1 christos stwbrx 7,0,4 540 1.1 christos li 30,8 541 1.1 christos stwbrx 8,29,4 542 1.1 christos li 31,12 543 1.1 christos stwbrx 9,30,4 544 1.1 christos stwbrx 10,31,4 545 1.1 christos lwz 28,24(1) 546 1.1 christos lwz 29,28(1) 547 1.1 christos lwz 30,32(1) 548 1.1 christos lwz 31,36(1) 549 1.1 christos addi 1,1,40 550 1.1 christos blr 551 1.1 christos .long 0 552 1.1 christos .byte 0,12,4,1,0x80,4,3,0 553 1.1 christos 554 1.1 christos .align 6 555 1.1 christos .LPICmeup: 556 1.1 christos mflr 0 557 1.1 christos bcl 20,31,$+4 558 1.1 christos mflr 5 559 1.1 christos addi 5,5,56 560 1.1 christos mtlr 0 561 1.1 christos blr 562 1.1 christos .long 0 563 1.1 christos .byte 0,12,0x14,0,0,0,0,0 564 1.1 christos .space 28 565 1.1 christos 566 1.1 christos .long 0x43300000,0x00000000 567 1.1 christos .long 0x45300000,0x00000000 568 1.1 christos .long 0x47300000,0x00000000 569 1.1 christos .long 0x49300000,0x00000000 570 1.1 christos .long 0x4b500000,0x00000000 571 1.1 christos 572 1.1 christos .long 0x37f40000,0x00000000 573 1.1 christos 574 1.1 christos .long 0x44300000,0x00000000 575 1.1 christos .long 0x46300000,0x00000000 576 1.1 christos .long 0x48300000,0x00000000 577 1.1 christos .long 0x4a300000,0x00000000 578 1.1 christos .long 0x3e300000,0x00000000 579 1.1 christos .long 0x40300000,0x00000000 580 1.1 christos .long 0x42300000,0x00000000 581 1.1 christos 582 1.1 christos .long 0x00000000,0x00000001 583 1.1 christos .byte 80,111,108,121,49,51,48,53,32,102,111,114,32,80,80,67,32,70,80,85,44,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 584 1.1 christos .align 2 585 1.1 christos .align 4 586