work on implementation section