Implements #4