Updated code, whether it works or not is questionable.