adding implementation descriptions