#!/usr/bin/env python2
## -*- coding: utf-8 -*-

import sys

def sx(bits, value):
    sign_bit = 1 << (bits - 1)
    return (value & (sign_bit - 1)) - (value & sign_bit)

SymVar_0 = int(sys.argv[1])
ref_263 = SymVar_0
ref_278 = ref_263 # MOV operation
ref_6366 = ref_278 # MOV operation
ref_6574 = ref_6366 # MOV operation
ref_6594 = ((ref_6574 << (0x3D & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_7510 = ref_278 # MOV operation
ref_7726 = ref_7510 # MOV operation
ref_7738 = (ref_7726 >> (0x3 & 0x3F)) # SHR operation
ref_7853 = ref_7738 # MOV operation
ref_7869 = ref_6594 # MOV operation
ref_7871 = (ref_7853 | ref_7869) # OR operation
ref_8092 = ref_7871 # MOV operation
ref_8102 = ((ref_8092 - 0x3FEFFF7F) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_8222 = ref_8102 # MOV operation
ref_8224 = ((ref_8222 >> 56) & 0xFF) # Byte reference - MOV operation
ref_8225 = ((ref_8222 >> 48) & 0xFF) # Byte reference - MOV operation
ref_8226 = ((ref_8222 >> 40) & 0xFF) # Byte reference - MOV operation
ref_8227 = ((ref_8222 >> 32) & 0xFF) # Byte reference - MOV operation
ref_8228 = ((ref_8222 >> 24) & 0xFF) # Byte reference - MOV operation
ref_8229 = ((ref_8222 >> 16) & 0xFF) # Byte reference - MOV operation
ref_8230 = ((ref_8222 >> 8) & 0xFF) # Byte reference - MOV operation
ref_8231 = (ref_8222 & 0xFF) # Byte reference - MOV operation
ref_9956 = ref_8222 # MOV operation
ref_10867 = ref_278 # MOV operation
ref_10977 = ref_10867 # MOV operation
ref_10993 = ref_9956 # MOV operation
ref_10995 = (ref_10977 | ref_10993) # OR operation
ref_11216 = ref_10995 # MOV operation
ref_11226 = ((ref_11216 - 0x11E59B96) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_11346 = ref_11226 # MOV operation
ref_11348 = ((ref_11346 >> 56) & 0xFF) # Byte reference - MOV operation
ref_11349 = ((ref_11346 >> 48) & 0xFF) # Byte reference - MOV operation
ref_11350 = ((ref_11346 >> 40) & 0xFF) # Byte reference - MOV operation
ref_11351 = ((ref_11346 >> 32) & 0xFF) # Byte reference - MOV operation
ref_11352 = ((ref_11346 >> 24) & 0xFF) # Byte reference - MOV operation
ref_11353 = ((ref_11346 >> 16) & 0xFF) # Byte reference - MOV operation
ref_11354 = ((ref_11346 >> 8) & 0xFF) # Byte reference - MOV operation
ref_11355 = (ref_11346 & 0xFF) # Byte reference - MOV operation
ref_13080 = ref_11346 # MOV operation
ref_13288 = ref_13080 # MOV operation
ref_13308 = ((ref_13288 << (0x7 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_14237 = ref_8222 # MOV operation
ref_15148 = ref_278 # MOV operation
ref_15258 = ref_15148 # MOV operation
ref_15274 = ref_14237 # MOV operation
ref_15276 = (((sx(0x40, ref_15258) * sx(0x40, ref_15274)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_15388 = ref_15276 # MOV operation
ref_15404 = ref_13308 # MOV operation
ref_15406 = (((sx(0x40, ref_15388) * sx(0x40, ref_15404)) & 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF) & 0xFFFFFFFFFFFFFFFF) # IMUL operation
ref_15522 = ref_15406 # MOV operation
ref_17243 = ref_278 # MOV operation
ref_17459 = ref_17243 # MOV operation
ref_17469 = ((ref_17459 - 0x2000000007A4C37E) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_17589 = ref_17469 # MOV operation
ref_20429 = ((((ref_8224) << 8 | ref_8225) << 8 | ref_8226) << 8 | ref_8227) # MOV operation
ref_20539 = (ref_20429 & 0xFFFFFFFF) # MOV operation
ref_23905 = ((((ref_8228) << 8 | ref_8229) << 8 | ref_8230) << 8 | ref_8231) # MOV operation
ref_24015 = (ref_23905 & 0xFFFFFFFF) # MOV operation
ref_24017 = (((ref_24015 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_24018 = (((ref_24015 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_24019 = (((ref_24015 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_24020 = ((ref_24015 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_25869 = (ref_20539 & 0xFFFFFFFF) # MOV operation
ref_25979 = (ref_25869 & 0xFFFFFFFF) # MOV operation
ref_25981 = (((ref_25979 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_25982 = (((ref_25979 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_25983 = (((ref_25979 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_25984 = ((ref_25979 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_27939 = ref_15522 # MOV operation
ref_29227 = ref_15522 # MOV operation
ref_29337 = ref_29227 # MOV operation
ref_29353 = ref_27939 # MOV operation
ref_29355 = ((ref_29337 + ref_29353) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_29471 = ref_29355 # MOV operation
ref_29489 = (ref_29471 & 0x3F) # AND operation
ref_29702 = ref_29489 # MOV operation
ref_29722 = ((ref_29702 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_30783 = ((((((((ref_24017) << 8 | ref_24018) << 8 | ref_24019) << 8 | ref_24020) << 8 | ref_25981) << 8 | ref_25982) << 8 | ref_25983) << 8 | ref_25984) # MOV operation
ref_30893 = ref_30783 # MOV operation
ref_30909 = ref_29722 # MOV operation
ref_30911 = (ref_30893 | ref_30909) # OR operation
ref_31030 = ref_30911 # MOV operation
ref_34234 = ((((ref_11348) << 8 | ref_11349) << 8 | ref_11350) << 8 | ref_11351) # MOV operation
ref_34344 = (ref_34234 & 0xFFFFFFFF) # MOV operation
ref_37710 = ((((ref_11352) << 8 | ref_11353) << 8 | ref_11354) << 8 | ref_11355) # MOV operation
ref_37820 = (ref_37710 & 0xFFFFFFFF) # MOV operation
ref_37822 = (((ref_37820 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_37823 = (((ref_37820 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_37824 = (((ref_37820 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_37825 = ((ref_37820 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_39674 = (ref_34344 & 0xFFFFFFFF) # MOV operation
ref_39784 = (ref_39674 & 0xFFFFFFFF) # MOV operation
ref_39786 = (((ref_39784 & 0xFFFFFFFF) >> 24) & 0xFF) # Byte reference - MOV operation
ref_39787 = (((ref_39784 & 0xFFFFFFFF) >> 16) & 0xFF) # Byte reference - MOV operation
ref_39788 = (((ref_39784 & 0xFFFFFFFF) >> 8) & 0xFF) # Byte reference - MOV operation
ref_39789 = ((ref_39784 & 0xFFFFFFFF) & 0xFF) # Byte reference - MOV operation
ref_41744 = ref_15522 # MOV operation
ref_43032 = ref_17589 # MOV operation
ref_43142 = ref_43032 # MOV operation
ref_43158 = ref_41744 # MOV operation
ref_43160 = ((ref_43142 + ref_43158) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_43276 = ref_43160 # MOV operation
ref_43294 = (ref_43276 & 0x3F) # AND operation
ref_43507 = ref_43294 # MOV operation
ref_43527 = ((ref_43507 << (0x4 & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_44588 = ((((((((ref_37822) << 8 | ref_37823) << 8 | ref_37824) << 8 | ref_37825) << 8 | ref_39786) << 8 | ref_39787) << 8 | ref_39788) << 8 | ref_39789) # MOV operation
ref_44698 = ref_44588 # MOV operation
ref_44714 = ref_43527 # MOV operation
ref_44716 = (ref_44698 | ref_44714) # OR operation
ref_44835 = ref_44716 # MOV operation
ref_44837 = ((ref_44835 >> 56) & 0xFF) # Byte reference - MOV operation
ref_44838 = ((ref_44835 >> 48) & 0xFF) # Byte reference - MOV operation
ref_44839 = ((ref_44835 >> 40) & 0xFF) # Byte reference - MOV operation
ref_44840 = ((ref_44835 >> 32) & 0xFF) # Byte reference - MOV operation
ref_44841 = ((ref_44835 >> 24) & 0xFF) # Byte reference - MOV operation
ref_44842 = ((ref_44835 >> 16) & 0xFF) # Byte reference - MOV operation
ref_44843 = ((ref_44835 >> 8) & 0xFF) # Byte reference - MOV operation
ref_44844 = (ref_44835 & 0xFF) # Byte reference - MOV operation
ref_47951 = ref_44839 # MOVZX operation
ref_48175 = (ref_47951 & 0xFF) # MOVZX operation
ref_49775 = ref_44843 # MOVZX operation
ref_51379 = (ref_49775 & 0xFF) # MOVZX operation
ref_51381 = (ref_51379 & 0xFF) # Byte reference - MOV operation
ref_51599 = (ref_48175 & 0xFF) # MOVZX operation
ref_53203 = (ref_51599 & 0xFF) # MOVZX operation
ref_53205 = (ref_53203 & 0xFF) # Byte reference - MOV operation
ref_54925 = ((((((((ref_44837) << 8 | ref_44838) << 8 | ref_51381) << 8 | ref_44840) << 8 | ref_44841) << 8 | ref_44842) << 8 | ref_53205) << 8 | ref_44844) # MOV operation
ref_55849 = ref_31030 # MOV operation
ref_55959 = ref_55849 # MOV operation
ref_55975 = ref_54925 # MOV operation
ref_55977 = ((ref_55959 + ref_55975) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_57201 = ref_17589 # MOV operation
ref_58125 = ref_15522 # MOV operation
ref_58235 = ref_58125 # MOV operation
ref_58251 = ref_57201 # MOV operation
ref_58253 = (ref_58235 & ref_58251) # AND operation
ref_58368 = ref_58253 # MOV operation
ref_58386 = (ref_58368 & 0xF) # AND operation
ref_58501 = ref_58386 # MOV operation
ref_58519 = (ref_58501 | 0x1) # OR operation
ref_58650 = ref_58519 # MOV operation
ref_58652 = ((0x40 - ref_58650) & 0xFFFFFFFFFFFFFFFF) # SUB operation
ref_58776 = ref_55977 # MOV operation
ref_58784 = ref_58652 # MOV operation
ref_58786 = (ref_58784 & 0xFFFFFFFF) # MOV operation
ref_58788 = (ref_58776 >> ((ref_58786 & 0xFF) & 0x3F)) # SHR operation
ref_59717 = ((((((((ref_44837) << 8 | ref_44838) << 8 | ref_51381) << 8 | ref_44840) << 8 | ref_44841) << 8 | ref_44842) << 8 | ref_53205) << 8 | ref_44844) # MOV operation
ref_60641 = ref_31030 # MOV operation
ref_60751 = ref_60641 # MOV operation
ref_60767 = ref_59717 # MOV operation
ref_60769 = ((ref_60751 + ref_60767) & 0xFFFFFFFFFFFFFFFF) # ADD operation
ref_61895 = ref_17589 # MOV operation
ref_62819 = ref_15522 # MOV operation
ref_62929 = ref_62819 # MOV operation
ref_62945 = ref_61895 # MOV operation
ref_62947 = (ref_62929 & ref_62945) # AND operation
ref_63062 = ref_62947 # MOV operation
ref_63080 = (ref_63062 & 0xF) # AND operation
ref_63195 = ref_63080 # MOV operation
ref_63213 = (ref_63195 | 0x1) # OR operation
ref_63328 = ref_60769 # MOV operation
ref_63344 = ref_63213 # MOV operation
ref_63346 = (ref_63344 & 0xFFFFFFFF) # MOV operation
ref_63348 = ((ref_63328 << ((ref_63346 & 0xFF) & 0x3F)) & 0xFFFFFFFFFFFFFFFF) # SHL operation
ref_63463 = ref_63348 # MOV operation
ref_63479 = ref_58788 # MOV operation
ref_63481 = (ref_63463 | ref_63479) # OR operation
ref_63600 = ref_63481 # MOV operation
ref_63811 = ref_63600 # MOV operation
ref_63813 = ref_63811 # MOV operation

print ref_63813 & 0xffffffffffffffff
