TemplateImplementation. Added Extension Methods.