* refactored p12, added a lame algorithm optimization :(
* fixed a bug in run.py