lots of random stuffs I coded in python2