<s> """<STR_LIT>""" <EOL> import datetime <EOL> __all__ = [ "<STR_LIT>" , "<STR_LIT>" , "<STR_LIT>" , "<STR_LIT>" ] <EOL> EASTER_JULIAN = <NUM_LIT:1> <EOL> EASTER_ORTHODOX = <NUM_LIT:2> <EOL> EASTER_WESTERN = <NUM_LIT:3> <EOL> def easter ( year , method = EASTER_WESTERN ) : <EOL> """<STR_LIT>""" <EOL> if not ( <NUM_LIT:1> <= method <= <NUM_LIT:3> ) : <EOL> raise ValueError ( "<STR_LIT>" ) <EOL> y = year <EOL> g = y % <NUM_LIT> <EOL> e = <NUM_LIT:0> <EOL> if method < <NUM_LIT:3> : <EOL> i = ( <NUM_LIT> * g + <NUM_LIT:15> ) % <NUM_LIT:30> <EOL> j = ( y + y // <NUM_LIT:4> + i ) % <NUM_LIT:7> <EOL> if method == <NUM_LIT:2> : <EOL> e = <NUM_LIT:10> <EOL> if y > <NUM_LIT> : <EOL> e = e + y // <NUM_LIT:100> - <NUM_LIT:16> - ( y // <NUM_LIT:100> - <NUM_LIT:16> ) // <NUM_LIT:4> <EOL> else : <EOL> c = y // <NUM_LIT:100> <EOL> h = ( c - c // <NUM_LIT:4> - ( <NUM_LIT:8> * c + <NUM_LIT> ) // <NUM_LIT> + <NUM_LIT> * g + <NUM_LIT:15> ) % <NUM_LIT:30> <EOL> i = h - ( h // <NUM_LIT> ) * ( <NUM_LIT:1> - ( h // <NUM_LIT> ) * ( <NUM_LIT> // ( h + <NUM_LIT:1> ) ) * ( ( <NUM_LIT> - g ) // <NUM_LIT:11> ) ) <EOL> j = ( y + y // <NUM_LIT:4> + i + <NUM_LIT:2> - c + c // <NUM_LIT:4> ) % <NUM_LIT:7> <EOL> p = i - j + e <EOL> d = <NUM_LIT:1> + ( p + <NUM_LIT> + ( p + <NUM_LIT:6> ) // <NUM_LIT> ) % <NUM_LIT> <EOL> m = <NUM_LIT:3> + ( p + <NUM_LIT> ) // <NUM_LIT:30> <EOL> return datetime . date ( int ( y ) , int ( m ) , int ( d ) ) </s>
