Work in progress, to be continued.