changed to work with newer version of rust, still getting ICE's