propagate() added