Adding concrete implementations and examples.