MICROSOFT PATENT 060606