[Do not use this base pattern directly: see the following variants of this pattern for usage]