This commit has been created from multiple commits on Joca’s branch and additional edits Co-authored-by: BodgeMaster <>