updated patlib.py