removal of hidden surfaces cs 445 5870361