various changes to be split into commits
intermediate
various