updates from @dr87