The intellectual property in software can be protected three ways: patents, copyrights and trade secrets. Patents protect "inventions" that are useful, nonobvious and novel, and must be approved by the U.S. Patent and Trademark Office. The scope of the final patent may be quite different than the initial application. Copyright law applies to "works of authorship" that are fixed in a tangible medium of expression (such as a CD or a book), and applies automatically (a filing with the U.S. Copyright Office is required prior to bringing a lawsuit). Thus, the code of virtually all software is automatically protected by copyright. Copyright prohibits the reproduction, distribution, modification, public performance and public display of software that is "substantially similar" to the original software. If the software is protected only by copyright, anyone can avoid paying a license fee by re-creating the software from scratch without copying it. That is not usually practical, of course, but it does set some limits on what copyright holders can demand in their software licenses. If the price of existing software is too high, competitors will simply rewrite the software from scratch.Finally, trade secret law protects any information that is not "commonly known" and which the company has taken reasonable steps to keep in confidence. The protection is more limited than patent and copyright protection: Trade secret law prevents only misappropriation, which means wrongful taking. Trade secret law could protect secrets in the source code of the software, for example.