Check out this web site
United States Patent: 6630507