deleted some unnecessary parts