Final working (draft) version.