work in progress below