TweetFollow Us on Twitter

Writing A ReadMe File

Volume Number: 14 (1998)
Issue Number: 10
Column Tag: Electronic Documentation

Writing a ReadMe File? Read This

by Tonya Engst

A member of the Macintosh press tells all. Learn about the link between a ReadMe file and press coverage, plus discover the secrets of a great ReadMe file

ReadMe First!

Nobody expects to find great literature in a ReadMe file, and that's good news for busy developers writing ReadMe files for their software. There's no need to consider the symbolism behind RAM requirements or make metaphors out of multiple minor updates. Even so, taking the time to construct an informative, user-friendly ReadMe file will create satisfied, paying customers; win you friends; and even help turn the limelight of press coverage in your direction.

Although plenty of products have wonderful ReadMe files, over the years, I've encountered a disturbing number of ReadMe files that practically cripple their products through inattention to detail or random organization. Sometimes a bad ReadMe file causes my attention to wander so I never get around to trying its associated software; other times, I'm writing about software for publication and the more time I spend chasing down basic information about the software (for instance, how much it costs), the less time I have to appreciate the good qualities of the program and expound on them in print.

In this article, I'll look at what information to put into a ReadMe file, offer a sample ReadMe file outline, talk about file types, and give tips for polishing writing quickly. The article ends with a checklist: if a ReadMe file meets the criteria in the checklist, it's ready to ship.

Just The Facts Ma'am

Whether a product is distributed electronically or in shrink-wrap, a good ReadMe file concentrates on basic, vital facts: Where does this come from? When was it made? What is it? Why should I use it? How do I use it?

Daddy, Where Does Software Come From?

This part is easy. In the ReadMe file, type your complete contact information, or at least all the information that you want to share. Consider reasons why people might want to reach you: feature suggestions, bug reports, questions, payments, and even flattering comments. Users will look for contact information in order to send payments or ask questions (often users will have a question or two that needs answering before they're willing to pay for shareware), and journalists reporting on your software will look to the for contact information to include in their articles. I've actually had to scratch covering products because I could not locate contact information before a deadline. Here's an example of how to do it right:

Contact us at:
Joe-Bob's Software Mill
http://joe.bob-soft.com/
joe@bob-soft.com (sales, distribution requests, administration)
support@bob-soft.com (bugs, problems, questions)
800/555-1212 (M-F, 9 AM-4 PM PST)

When?

This key piece of data is so small that it's easy to overlook. Nevertheless, be sure to date the ReadMe file. It's a polite way to help people place the era in which your software shipped. For instance, if I see a ReadMe file dated from 1992, I'll be much more forgiving of a lack of Web URL or current contact information. I'll be more cautious about installing it on an up-to-date system, and I'll cruise the net to check for a later version.

What is It?

A good ReadMe files tells what the software is named, what its version number is (rank and serial number are optional), what it costs, and what it does. Provide these details and you make many people happy - users can figure out what to expect from the software, those who run download sites can categorize it rapidly, and members of the press can wrap their minds around it does quickly.

You'd think that writing the name and version number of software would be simple, but some ReadMe authors slip up and don't consistently give the same name throughout the file. Though most users won't care, it looks unprofessional and makes journalists grumpy because they then must figure out which spelling you meant. In particular, watch out for spacing and capitalization - screenCruiser isn't the same as Screen Cruiser. (While you're at it, make sure the name is also the same in the software's Get Info box and Finder icon name.)

If you sell the software as shareware, postcardware, donationware, or the like, tell people about it up front. And, if your software is freeware, mention that as well. I prefer that pricing information be given in a clear, business-like fashion, without long-winded discussions about ethics. Be sure to tell people exactly what to pay and how. (As an aside, for shareware consider using a credit card handling service for payments; typically such services make it significantly simpler to pay and thus increase the number of registrations. They also decrease the amount of time you spend bookkeeping.)

If you sell the software in shrink-wrap, you can probably skip the price (though if the ReadMe file in question goes with a free update, do clarify that the update is free). I strongly recommend providing a pointer to pricing and sales information, by phone and Internet. You never know when someone will want to order more copies or when a pirate will want to come clean. Further, you'll make software reviewers happy, since they often write about software at weird hours when phones are not staffed.

Once you jump the hurdles of name and price, your next concern is an "elevator statement," a short, compelling description that can be rattled off in the time it takes an elevator to climb from the ground floor to the penthouse (that's all the time you may have to sell your software to the busy person who works in the penthouse suite). Writing a short description is easy: "it changes the desktop pattern," or "it's a database of amusement park rides." The compelling part is harder because it identifies what makes your software special. A full elevator statement might be, "it monitors a user's actions to figure out her mood, and then changes the desktop pattern to match," or "it's a database of amusement park rides with ride ratings from Macintosh programmers."

Why Bother?

The elevator statement acts as a hook that catches interested users, but to reel them in, you must give more details. You don't have to write an essay - all you need is a paragraph or so that backs up the elevator statement with more information. Why did you bother to code the software? Why should potential users bother to install and launch it? What unique features does it bring to the table? In particular, be sure to mention the unique features, especially if your product resembles others in its category. For example, Jerry Åman from Optima System wrote in the MailSpinner 1.2 ReadMe file, "This folder contains a kit with an AppleScript and templates that show how all mail in an Eudora or Emailer mailbox can published on the Web using PageSpinner. This kit can be useful if you run a small mailing list and you need to publish mails on the Web or you want to maintain a simple guest book at your site."

If your software only serves one simple function, you don't need much more than a slightly elaborated elevator statement; however, if your software has a number of capabilities, list them, perhaps in a bulleted list. That way, users can quickly get a broad picture of the features.

Also, when releasing an update, give the scoop on what's new in it. Some ReadMe files even include complete version histories, which is fine, though I recommend relegating version histories to the bottom of a ReadMe file or even to another document since they serve more as reference material than as newsworthy information.

Help Users Jump the Learning Curve

Pushing users up the learning curve goes a long way toward creating happy users. Every product should ship with fundamental information like system requirements, major conflicts, and what files get placed where by your installer. Often, the ReadMe file is a good place for that information.

At times, the ReadMe file is the perfect location for installation directions. If files need to be located specifically inside certain folders, say so. If the software only works in tandem with a particular system component, mention it.

In some cases, it makes sense to put basic documentation in the ReadMe file. In particular, give readers the benefit of your experience with the software - tell them about special keyboard shortcuts, unique preferences, and smart techniques for working efficiently.

Outlining the Facts

Writing the basic facts is a good start for a ReadMe file, but the text will be more user-friendly if you arrange the facts in logical order. Of course, there are many different ways to accomplish this, but here's a sample outline that should be a handy starting point for most ReadMe files. In the sample, in some cases, the headings correspond to topics that could be quite long, such as documentation and version history. For many ReadMe files it won't make sense to include these long sections; however, in any ReadMe file you can refer readers to other documents, such as a separate version history file or the printed manual.

Product name and version number
Company name
Elevator statement
New and special in this release
Hardware and software requirements
Installation instructions, getting started tips, and documentation
Important known problems
Version history
Pricing information
Contact information
Date or copyright date, and other legal information

Be a Pro

In addition to creating a ReadMe file's content, it's important to make the content look good and read smoothly.

The Argument for SimpleText

When it comes to ReadMe files, content is king, and it takes precedence over looks and glamour. To ensure readability, I suggest using SimpleText as a file format. SimpleText may be dull, but it's also universal. In addition, SimpleText has an easy user interface - users navigate simply by using the scroll bar or the keyboard, without having to master a special user interface. Also, anything but text makes people like download-site administrators crazy because these people often must extract the text for use on their systems.

HTML in particular seems a likely possibility as a SimpleText alternative, and until yesterday, I hadn't decided whether to recommend HTML as an alternative format for ReadMe files - most people have Web browsers, and I find the capability to link a ReadMe file to pages on the Web fairly compelling. Yesterday, however, I downloaded the version 1.2 update to Macromedia Dreamweaver, a high-end Web authoring program. In the update's ReadMe file, I found a lesson in how not to do a ReadMe file in HTML.

My first stumbling block came when I blithely double-clicked the ReadMe file's icon before realizing that I'd have to wait for Navigator to launch (right now, I use Internet Explorer as my primary browser). The second stumbling block, however, was far more annoying. The ReadMe file itself lacked almost all information normally found in a ReadMe file and instead linked to Macromedia's Web site. To view the release notes, feature overview, FAQ, and so on, I had to go out on the Internet and wait for Web pages to load. And, to learn some details, I had to hunt around on Macromedia's Web site. The ReadMe file had been created for Macromedia's convenience, not mine. Unless Macromedia updates the ReadMe file, you can view it as I saw it at http://www.macromedia.com/support/dreamweaver/releasenotes/dw1_2_readme.html.

Despite this recent bad experience with an HTML-based ReadMe file, I think HTML-formatted ReadMe files can work well if they provide all the important core details and then use links to give fast access to related information, such as extended documentation or an online order form. Without providing substantively useful links to extended information, though, I can't see much point in doing a ReadMe file in HTML, since SimpleText works better for presenting local information.

ReadMe files come in plenty of other double-clickable formats, but they all require more brain cycles from busy readers than a SimpleText file. A software update or shareware program may only get 30 seconds of attention from users cruising software archives or reviewers checking out all the applications in a category, so to attract attention you must make opening the ReadMe file take only a fraction of those 30 seconds. For serious commercial software, you'll receive more than 30 seconds of attention, but you'll make people's lives easier if you distribute ReadMe files in a format that's easily accessible.

SimpleText Authoring

If you've never delved into hard-core SimpleText authoring and want pointers on using ResEdit to incorporate styled text or graphics into a SimpleText file, read the Apple Developer Technical Support Technote 1005, "The Compleat Guide to SimpleText," by Bryan Stearns and revised by Mark Cookson The Technote has general tips for ReadMe authors and lots of detailed information about adding graphics and movies to SimpleText document. http://developer.apple.com/technotes/tn/tn1005.html.

Many of my programmer friends, however, do not recommend SimpleText as an authoring environment; instead, they use a word processor like ClarisWorks with an XTND translator that converts the file into SimpleText format.

Users like unlocked ReadMe files because it's easy to grab URLs and email addresses from them. As a software reviewer, I love them because I would far rather copy contact information than retype it - copying is faster and reduces errors. Although I acknowledge that people can easily alter an unlocked SimpleText document without your permission, an unlocked ReadMe file will also make you many friends.

Unfortunately, as the Technote 1005 confirms, unlocked SimpleText documents experience buggy behavior if they include graphics. I'd much rather be able to copy text from a ReadMe file and have URLs potentially be live (through ICeTee, for instance) than be able to see a screen shot.

The Naming Game

Naming a ReadMe file is much easier than naming a pet. Simply make the name descriptive and include the name of the product. I recommend putting the product name first so the ReadMe file can sort by product name within a Finder window. Examples of good names include: ScreenCruiser: Read Me First!, RideRater-ReadMe, and Mood Scanner Users Read Me. Avoid non-descriptive names like ReadMe and ReadMe First! Additionally, unless you are in grade school, skip overly enthusiastic names like README!!!!!!

Letting It All Lay Out

Layout and fonts also play a role in creating a ReadMe file. The point of a ReadMe file is to present textual information, so it's terrifically important to use fonts that read nicely onscreen. I recommend tried-and-true screen fonts like Geneva and New York; other commonly installed fonts include Chicago, Helvetica, Monaco, and Times. Above all else, resist the temptation to use a font size that looks good when printed but tiny onscreen (never use type smaller than 12-point). If you ship a ReadMe file in read-only format, it's particularly discourteous to use a small font size. Similarly, italic text is hard to read onscreen and is best avoided.

Beyond font choice, SimpleText doesn't offer much in the way of layout options, but when in doubt, I suggest following the advice of Macintosh layout expert Robin Williams. In the excellent The Non-Designer's Design Book, (Peachpit Press, 1-56609-159-4), Robin points out four principles of design: proximity, alignment, repetition, and contrast. In essence, information should be positioned near like information (i.e. put all contact information in the same place); chunks of information shouldn't be splatted down randomly, but instead should be placed next to one another in a logical manner; items like big headlines should repeat in a consistent manner with regard to their styles and the white space surrounding them; and you can add visual excitement by using layout elements that contrast (in a ReadMe file this might amount to using contrasting text styles for heading and body text).

Seven Steps to Writing Success

The most important aspect of a ReadMe file is the text it contains, and the quality of the writing counts. Because casual writers often compose ReadMe files, I submit to you seven quick tricks for taking any piece of ReadMe file writing and making it read more like it was written by a professional:

  1. When referring to a command or dialog box, spell it exactly as it appears in the program. (Optional points - contemplate why software reviewers love dialog boxes that stick around when the reviewers switch out of the software to a word processor.)
  2. When referring to a menu command, don't use quotation marks and mention the menu in case readers don't know which one to use.
    • Do: Choose Arrange All from the Window menu
    • Don't: Use the 'arrange' command on the 'window' menu.
    • Do: From the Special menu's hierarchical Find menu, choose Search.
    • Don't: Pop up the "Find" menu and click the command for searching again.
  3. Remove these words and phrases: "actually," "a lot," "very," "really," and "just." By and large, your writing will be far stronger if you take them out.
  4. This step is hard, so skip it if you don't have time. Look for instances of the passive voice (sentences containing words like "is," and "are") and try to rewrite at least half the sentence so the "is" or "are" disappears. Generally, avoiding the passive voice makes your writing more precise, more understandable, and more powerful.
  5. Use a spell checker.
  6. Read the ReadMe file out loud. If you make changes based on what you hear, run the spell checker again.
  7. If the ReadMe is written in a language that is not your primary language, consider having a native speaker tweak it. If that's not possible, make it clear through your contact information or a short note that you did your best. Most people will forgive errors once they understand the cause.

If you truly can't justify the time it takes to polish the writing in a ReadMe file, I recommend acknowledging bluntly that you didn't think it was worth the effort. For example, the IMPORTANT README that comes with IADD 0.0.2 modeled itself after a FAQ (a format that, in fact, works rather well). Here's an excerpt:

Did you do a lot of testing on this? No, This took about 3 hours to make and has been tested for about 15 minutes. It seems to work.

How much memory does it use? I'm not sure, but I would guess around 5K.

How much does this cost? $0.00 (It is free.)

Didn't you proofread this document? No, I didn't. I made it in SimpleText and did not proofread it. If you find a mistake that really bothers you, let me know.

ReadMe Checklist

Creating a great ReadMe file requires far more perspiration than talent. Here's a checklist to sweat over as you finish a ReadMe file; if the document meets the requirements on this list, it's probably ready to ship.

  • The ReadMe file makes it a complete no-brainer to figure out your company's name (or the programmer's name), the application's name, and the version number.
  • The ReadMe file includes the release date of the software.
  • The ReadMe file contains reasonably complete contact information.
  • Readers of the file can easily determine pricing information (for some commercial software, this criteria isn't necessary, but for shareware it's terrifically important).
  • The first screen of the document has a description of what the software is and why it's cool.
  • The ReadMe file mentions new features in this particular release of the program.
  • The ReadMe file notes system and hardware requirements for the software.
  • The ReadMe file contains installation instructions, tips and tricks, documentation, and a version history (or if it doesn't, it refers readers to other documents that do contain this information).
  • The application's name is spelled consistently throughout the ReadMe file (make sure you have also spelled the company name consistently).
  • The file format is SimpleText (or, if not, you have a good reason for using something else).
  • If feasible, the document is unlocked so that readers can freely copy information and access URLs.
  • The file's name is descriptive (ReadMe alone is not sufficiently descriptive).
  • The font styles and overall layout are appropriate for onscreen reading.
  • You have followed the seven steps to writing success outlined in this article.

ReadMe Last

Writing a good ReadMe file shouldn't be a back breaking task, and I hope this article has given you ideas for improving your next ReadMe, or even given you tools in the form of the suggested outline, seven steps to writing success, and shipping checklist. If you remember nothing else from this article, I hope you'll remember that for a ReadMe file, content truly is king - provide good information in a useful format and you'll not only make friends, you'll also gain paying customers and be more likely to receive favorable press coverage.

Bibliography and References

  • Williams, Robin The Non-Designers Design Book, Peachpit Press. Berkeley, 1994.

A freelance writer and Macintosh enthusiast, Tonya Engst is best known for her work on TidBITS, an electronic newsletter centering on the Macintosh Internet community. She has been reviewing Macintosh software since 1990, often under tight deadlines, and has strong opinions about what constitutes a useful ReadMe file. Tonya holds a degree in communications from Cornell University. Her home page is at: http://www.tidbits.com/tonya/.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Spotify 1.0.4.90. - Stream music, create...
Spotify is a streaming music service that gives you on-demand access to millions of songs. Whether you like driving rock, silky R&B, or grandiose classical music, Spotify's massive catalogue puts... Read more
djay Pro 1.1 - Transform your Mac into a...
djay Pro provides a complete toolkit for performing DJs. Its unique modern interface is built around a sophisticated integration with iTunes and Spotify, giving you instant access to millions of... Read more
Vivaldi 1.0.118.19 - Lightweight browser...
Vivaldi browser. In 1994, two programmers started working on a web browser. Our idea was to make a really fast browser, capable of running on limited hardware, keeping in mind that users are... Read more
Stacks 2.6.11 - New way to create pages...
Stacks is a new way to create pages in RapidWeaver. It's a plugin designed to combine drag-and-drop simplicity with the power of fluid layout. Features: Fluid Layout: Stacks lets you build pages... Read more
xScope 4.1.3 - Onscreen graphic measurem...
xScope is powerful set of tools that are ideal for measuring, inspecting, and testing on-screen graphics and layouts. Its tools float above your desktop windows and can be accessed via a toolbar,... Read more
Cyberduck 4.7 - FTP and SFTP browser. (F...
Cyberduck is a robust FTP/FTP-TLS/SFTP browser for the Mac whose lack of visual clutter and cleverly intuitive features make it easy to use. Support for external editors and system technologies such... Read more
Labels & Addresses 1.7 - Powerful la...
Labels & Addresses is a home and office tool for printing all sorts of labels, envelopes, inventory labels, and price tags. Merge-printing capability makes the program a great tool for holiday... Read more
teleport 1.2.1 - Use one mouse/keyboard...
teleport is a simple utility to let you use one single mouse and keyboard to control several of your Macs. Simply reach the edge of your screen, and your mouse teleports to your other Mac! The... Read more
Apple iMovie 10.0.8 - Edit personal vide...
With an all-new design, Apple iMovie lets you enjoy your videos like never before. Browse your clips more easily, instantly share your favorite moments, and create beautiful HD movies and Hollywood-... Read more
Box Sync 4.0.6233 - Online synchronizati...
Box Sync gives you a hard-drive in the Cloud for online storage. Note: You must first sign up to use Box. What if the files you need are on your laptop -- but you're on the road with your iPhone? No... Read more

Become the World's Most Important D...
Must Deliver, by cherrypick games, is a top-down endless-runner witha healthy dose of the living dead. [Read more] | Read more »
SoundHound + LiveLyrics is Making its De...
SoundHound Inc. has announced that SoundHound + LiveLyrics, will be one of the first third-party apps to hit the Apple Watch. With  SoundHound you'll be able to tap on your watch and have the app recognize the music you are listening to, then have... | Read more »
Adobe Joins the Apple Watch Lineup With...
A whole tidal wave of apps are headed for the Apple Watch, and Adobe has joined in with 3 new ways to enhance your creativity and collaborate with others. The watch apps pair with iPad/iPhone apps to give you total control over your Adobe projects... | Read more »
Z Steel Soldiers, Sequel to Kavcom'...
Kavcom has released Z Steel Soldiers, which continues the story of the comedic RTS originally created by the Bitmap Brothers. [Read more] | Read more »
Seene Lets You Create 3D Images With You...
Seene, by Obvious Engineering, is a 3D capture app that's meant to allow you to create visually stunning 3D images with a tap of your finger, and then share them as a 3D photo, video or gif. [Read more] | Read more »
Lost Within - Tips, Tricks, and Strategi...
Have you just downloaded Lost Within and are you in need of a guiding hand? While it’s not the toughest of games out there you might still want some helpful tips to get you started. [Read more] | Read more »
Entertain Your Pet With Your Watch With...
The Petcube Camera is a device that lets you use live video to check in on your pet, talk to them, and play with them using a laser pointer - all while you're away. And the Petcube app is coming to the Apple Watch, so you'll be able to hang out with... | Read more »
Now You Can Manage Your Line2 Calls With...
You'll be able to get your Line2 cloud phone service on the Apple Watch very soon. The watch app can send and receive messages using hands-free voice dictation, or by selecting from a list of provided responses. [Read more] | Read more »
R.B.I. Baseball 15 (Games)
R.B.I. Baseball 15 1.01 Device: iOS Universal Category: Games Price: $4.99, Version: 1.01 (iTunes) Description: The legendary Major League Baseball franchise returns to the diamond. Make History. ** ALL iPOD Touch, the iPad 2 and the... | Read more »
Here's How You Can Tell if an App W...
The Apple Watch is pretty much here, and that means a whole lot of compatible apps and games are going to be updated or released onto the App Store. That's okay though, beacause Apple has quietly updated their app description pages to make things... | Read more »

Price Scanner via MacPrices.net

Intel Compute Stick: A New Mini-Computing For...
The Intel Compute Stick, a new pocket-sized computer based on a quad-core Intel Atom processor running Windows 8.1 with Bing, is available now through Intel Authorized Dealers across much of the... Read more
Heal to Launch First One-Touch House Call Doc...
Santa Monica, California based Heal, a pioneer in on-demand personal health care services — will offer the first one-touch, on-demand house call doctor app for the Apple Watch. Heal’s Watch app,... Read more
Mac Notebooks: Avoiding MagSafe Power Adapter...
Apple Support says proper usage, care, and maintenance of Your Mac notebook’s MagSafe power adapter can substantially increase the the adapter’s service life. Of course, MagSafe itself is an Apple... Read more
12″ Retina MacBook In Shootout With Air And P...
BareFeats’ rob-ART morgan has posted another comparison of the 12″ MacBook with other Mac laptops, noting that the general goodness of all Mac laptops can make which one to purchase a tough decision... Read more
FileMaker Go for iPad and iPhone: Over 1.5 Mi...
FileMaker has announced that its FileMaker Go for iPad and iPhone app has surpassed 1.5 million downloads from the iTunes App Store. The milestone confirms the continued popularity of the FileMaker... Read more
Sale! 13-inch 2.7GHz Retina MacBook Pro for $...
 Best Buy has the new 2015 13″ 2.7GHz/128GB Retina MacBook Pro on sale for $1099 – $200 off MSRP. Choose free shipping or free local store pickup (if available). Price for online orders only, in-... Read more
Minimalist MacBook Confirms Death of Steve Jo...
ReadWrite’s Adriana Lee has posted a eulogy for the “Digital Hub” concept Steve Jobs first proposed back in 2001, declaring the new 12-inch MacBook with its single, over-subscribed USB-C port to be... Read more
13-inch 2.7GHz Retina MacBook Pro for $1234 w...
Adorama has the 13″ 2.7GHz/128GB Retina MacBook Pro in stock for $1234.99 ($65 off MSRP) including free shipping plus a free LG external DVD/CD optical drive. Adorama charges sales tax in NY & NJ... Read more
13-inch 2.5GHz MacBook Pro available for $999...
 Adorama has the 13-inch 2.5GHz MacBook Pro on sale for $999 including free shipping plus NY & NJ sales tax only. Their price is $100 off MSRP. Read more
Save up to $600 with Apple refurbished Mac Pr...
The Apple Store is offering Apple Certified Refurbished Mac Pros for up to $600 off the cost of new models. An Apple one-year warranty is included with each Mac Pro, and shipping is free. The... Read more

Jobs Board

*Apple* Client Systems Solution Specialist -...
…drive revenue and profit in assigned sales segment and/or region specific to the Apple brand and product sets. This person will work directly with CDW Account Managers Read more
*Apple* Software Support - Casper (Can work...
…experience . Full knowledge of Mac OS X and prior . Mac OSX / Server . Apple Remote Desktop . Process Documentation . Ability to prioritize multiple tasks in a fast pace Read more
*Apple* Software Support - Xerox Corporation...
…Imaging experience Full knowledge of Mac OS X and prior Mac OSX / Server Apple Remote Desktop Process Documentation Ability to prioritize multiple tasks in a fast pace Read more
*Apple* Support Technician IV - Jack Henry a...
Job Description Jack Henry & Associates is seeking an Apple Support Technician. This position while acting independently, ensures the proper day-to-day control of Read more
*Apple* Retail - Multiple Positions (US) - A...
Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, you're also the Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.