Part way implementation for #193 step 3