Incomplete implementation of #2