made some more changes and improvement with BS