added implementation overview