fleshed out changes before merging in master