implements #10