Background:

Proposal:

Implementation: