two lines above prepare is called with cls.timeout()
I'd suggest to remove this default value at all.

I don't sure making timeout 3 hours is good idea.