So, disassembling something, working out how it works and writing an english language document of that code for someone else (who hasnt seen the details of the existing MS implementation) to implement is ok or not? Does that count as clean-room enough?