some hackerying going on to get things to work right