Finish 3744

This finishes the great pull request started by @mickaelandrieu in #3744.
Than you @mickaelandrieu for sharing this. :)