Improved part listener (maybe?)