def fact(n):
'''
Calculate 1*2*...*n
>>> fact(1)
1
>>> fact(10)
3628800
>>> fact(-1)
Tracbackv (most recent call last)
···
ValueError
'''
if n < 1:
raise ValueError()
if n == 1:
return 1
return n * fact(n - 1)
if __name__ == '__main__':
import doctest
doctest.testmod()
# your code goes here
ZGVmIGZhY3Qobik6CiAgICAnJycKICAgIENhbGN1bGF0ZSAxKjIqLi4uKm4KICAgIAogICAgPj4+IGZhY3QoMSkKICAgIDEKICAgID4+PiBmYWN0KDEwKQogICAgMzYyODgwMAogICAgPj4+IGZhY3QoLTEpCiAgICBUcmFjYmFja3YgKG1vc3QgcmVjZW50IGNhbGwgbGFzdCkKICAgIMK3wrfCtwogICAgVmFsdWVFcnJvcgogICAgJycnCiAgICBpZiBuIDwgMToKICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCkKICAgIGlmIG4gPT0gMToKICAgICAgICByZXR1cm4gMQogICAgcmV0dXJuIG4gKiBmYWN0KG4gLSAxKQoKaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoKICAgIGltcG9ydCBkb2N0ZXN0CiAgICBkb2N0ZXN0LnRlc3Rtb2QoKQoKIyB5b3VyIGNvZGUgZ29lcyBoZXJl