update to work with latest rust