added __name__ check