Initial work in progress.