implements #45