changes to make it work with php 5.3