Part of solution to intermediate version of #187