backporting from superfluous