some more work for #32 #31