deleted irrevant parts