done as much as possible from my side