MICROSOFT PATENT W02020060606