United States Patent 7176332