BCLN course with several edits by Reeder and some imports from 2018-2019 BCLN version.