propsing an implementation for #219