updates from @larz0