* Posts by TSM

136 publicly visible posts • joined 8 Aug 2007


Developer's default setting created turbulence in the flight simulator


Re: Check your instruments...

> how would you get the pine trees to move?


CEO arranged his own cybersecurity, with predictable results


Re: Unannounced security tests

> If the link they're clicking on is to a phishing test provider, the one your company contracts with, you can probably take a pretty good guess that it's a phishing test.

The first one or two phishing tests our company organised were detectable this way. Since then they use a different domain for each test, and the domains have no useful whois information available to tie them back to the security company.

CompSci academic thought tech support was useless – until he needed it


> Thankfully, my boss was in the audience and heard everything, as did the entire school.

I guess the batteries were fine then!

Shock horror – and there goes the network neighborhood


Re: The last time I heard a loud noise and things were restarting...

I'm sure that will work very well on the Debian system that the person you replied to said they're running.

Ask a builder to fix a server and out come the vastly inappropriate power tools


Re: Just a quick manicure.

> Even better would be to snip just one pin, and put the jumper back in place so it looked like it was still overclocked.

Nah, you have to remember that in this era that clock speed was displayed (along with other config stuff) for several seconds on bootup, so they woud have known it was no longer overcooked.

Funnily enough, that relates to a situation my wife and I had with the first PC we bought after we got married and couldn't just use my dad's any more. Got the new machine, set it up, turned it on... wait, that's not the clock speed we paid for! (IIRC it was 60MHz instead of 90MHz, or 90MHz instead of 150MHz. A fairly substantial amount slower than it should have been, in any case.)

A little reading of the motherboard manual later to check on which jumpers were involved and how they should be set, and breaking the "do not open" sticker to look inside, revealed the problem: there were two pairs of jumpers for the CPU speed and for this configuration both pairs should have been set. And indeed they were, but the wrong way around - like = instead of ||. Took them off, put them on the right way around, problem solved.

Boffins find AI stumbles when quizzed on the tough stuff


Re: Well ChatGPT can certainly get sarky.

Wait, if I did that, do you think I would get less spam from recruiters? Might be worth trying...

It is 2023 and Excel's reign of date terror might finally be at an end


The thing that's most annoying about, particularly, the date conversion in Excel is that it doesn't consider any context: "The other 1000 values in this column are text strings, but *this* one is clearly supposed to be a date!" Or "Only 40% of the cells in this column are valid {EU|US} dates; they are all valid {US|EU} dates. But I'm going to interpret it as {EU|US} dates anyway and the ones that don't work can be text."

The whole idea of spreadsheets is that you have tabular data, i.e. blocks of data where, generally, each column holds the same information for every row. But this concept has never been applied to the parsing logic.

It doesn't look like the update has done anything about this. It's just allowed us to tell it to stop trying - which is something, at least, but a global solution for a very localised problem.

Excel recruitment time bomb makes top trainee doctors 'unappointable'


> A value of true in the range lookup will mean that if nothing matches, then the next closest approximate value will be returned. This can have fairly disastrous consequences if there are typos in fields such as names.

That's not the biggest problem with it. The biggest problem is that if it uses a range lookup, which is the default, it assumes the data is sorted and does a binary search. If your data isn't sorted, you essentially get a random result from the list. So if you forget to add ", false" in your vlookup, you get a random result, which may or may not be easily noticeable. The same thing happens with match() which is the "find the record" half of vlookup(), index() being the "retrieve a value" half.

It's actually rather annoying that "range vs. exact match" and "data is sorted, use binary search" are tied together in this way. For exact match required cases with large numbers of records, I sort the data and use a two-step process along the lines of "do a range match for this value", followed by "check if the value you found is the value we're looking for". Makes for a clunky spreadsheet design, but a comparison that runs in 20 seconds that used to be "start this and then go to lunch" (and still woudn't be done when you were back), because binary search on 100k+ records is just ever so slightly faster than linear...

That script I wrote three years ago is now doing what? How many times?


That's fine, if (a) you can find the relevant documentation when you need it and (b) the systems haven't changed in the meantime to the point that the documentation is somewhere from slightly inaccurate to actively misleading. Obsolete documentation is (in my experience) both a much worse and a much more pervasive problem.

Had this happen recently when we had to invoke a DR process (which fortunately I knew) that we hadn't needed in several years. [I know, TRWTF is not practising our DR processes regularly. TRRWTF is that we used to do this, but don't any more.] We did eventually find some documentation a few days after the fact, but it was largely inaccurate.

It doesn't help if you change your documentation platform every now and then, and in between reorganise the IT teams periodically so that half of the documentation you need is now in some other team's area. Even apart from those issues, when you have something that involves multiple departments it's impossible to find whether the latest thing is the one on Confluence or one of the ones on Sharepoint or the ones in various Teams channels or the one in an email chain, because everyone has their own ideas on where to put stuff...


Re: On the flip side

> I taught myself Z80 assembly language from books as a pre-teen, and my degrees are in the sciences, not in anything IT related.

(Almost) same [I was a teenager by the time I got into Z80 assembler] and same! I did do a computer science unit in first year but that is the extent of my formal CS education. Like you said, it's the desire to understand that is needed to get you that habit of looking at context above and below and around the thing you're doing and making sure you understand it.

One door opens, another one closes, and this one kills a mainframe


Re: Heavy doors

Logically, if opening all the doors is enough to tip over all the cabinets, then opening one door would be enough to tip over one isolated cabinet.

That old box of tech junk you should probably throw out saves a warehouse


Re: Golden Junque

Looks like there's also a Hemispheres (small).

So they must be fairly useful...

BOFH: Get me a new data file or your manager finds out exactly what you think of him


Re: Oh the pain!

You mean the things that used to be sometimes useful, before they all got converted into buttons that take you to the help portal on the company's website (or worse, the URL that used to be the help portal years ago), but don't do anything to guide you to a relevant help article, even assuming that one exists?


Re: Oh the pain!

We got hit by that one some years back. One of our kids needed to submit a form to get a Universal Student Identifier, required for educational purposes. The way to do this was to submit an online form with a bunch of ID document details, however when we tried to do this it failed because the document details could not be verified automatically.

After much trying over a period of days we eventually figured out that the automated document verification service appeared to only be available during Canberra office hours (which, because of timezones, were over by the time we had been trying to submit the form). Of course this was never mentioned anywhere and the error message on the failed attempts contained no useful information.

BOFH: Ah. Company-branded merch. So much better than a bonus


Re: AHH the good old USB

Our machines are set by group policy to not even recognise USB storage devices. It's a pain any time I want to move files around, especially in bulk.

Pixies keep switching off my morning alarm, says Google Pixel owner


> Unless his list is ~14 songs long, the issue should not reappear every couple of weeks.

Depends how long it takes him to wake up. Some people are heavy sleepers; he might not wake up properly until several songs into the playlist. My wife certainly doesn't wake up when her radio (we're old fashioned) starts playing. It wakes me up though!

Techie called out to customer ASAP, then: Do nothing


(from the article)

"Whether the customer ever realized it was being fooled is lost to history."

Was the customer being fooled, though? I thought it was the customer initiating the callout, because:

"The cost of having Paul travel to the site and do nothing was tiny, when compared to the penalties the customer was owed under the contract if nobody appeared on time."

I assumed the customer was willing to take the risk of paying the tiny fee for a chance at the large penalties - a reasonably rational (especially since it appears there was a good chance Paul might not have made it in time) if less than ethical course of action. I don't understand how the story makes sense any other way. So how is the customer being fooled?

Boeing Starliner's 1st crewed trip to the ISS delayed again over battery overheating risk


Hold on a second

> Software bugs in the flight code also had to be checked

The bugs had to be checked? Shouldn't they have been FIXED?

(Yes, I understand that bugs can be acceptable in this sort of thing if they have been rigorously analysed, the scope for problems is known, and if necessary appropriate mitigations are put in place. I wouldn't describe this as "checking" the bug, though.)

User was told three times 'Do Not Reboot This PC' – then unplugged it anyway


Re: Content

> or even better perform upgrade during the weekend when nobody is in.

I mean, that's what they did in the article.


Re: Content

> It also doesn't have any information why it shouldn't be rebooted, so the user may not know how important it is.

The article did say

> replaced the desktop background with a big sign, white writing on a bright red screen, saying 'Software installation in progress. Do Not Attempt to Re-boot This System'."

So there was some information about the reason it shouldn't be rebooted.

Also doesn't sound like it would have looked like an advert.

The article felt pretty weak to me for other reasons though. Especially when it says "The few machines that hadn't upgraded weren't a worry: someone always turned off their PC by mistake or did something else that needed intervention" but then goes on to explore the details of one case of this happening. Why is it worth doing that, if this was an expected and normal part of the process? Is the leap from "accidentally turning off their machine" to "pulling out the plug to try to get it working again" really so vast that it elevates the story into something worth reading?

Dear Stupid, I write with news I did not check the content of the [Name] field before sending this letter


Re: Live by the shoddy business practices

I know your pain. When my ADSL modem died a few years ago, I was unable to convince my ISP's tech support that a problem with the line would not explain why it wasn't able to route local traffic - or why the power light wasn't coming on any more. It took a technician visit (who confirmed that yes, the line was fine) before they would accept that the modem needed to be replaced.

Artificial pancreas successful in type 2 diabetes tests


Re: Exciting news

I'm a LADA which seems to be not well understood yet, hooray. Diagnosed a couple of years ago. Despite going from 8 to 12 units of insulin since I last saw my endocrinologist my levels are higher than ever... maybe the metformin is not working as well, or maybe my pancreas is starting to give up the fight. My immune system already killed off my thyroid years ago so it has form for this sort of thing (and at the time of that diagnosis my doctor warned me that I'd be at increased risk for other auto-immune diseases, so here we are).

CGMs have just gone onto the subsidy list here in Australia for people with Type 1 so it might be worth looking into. Kinda squeamish about the idea though.

Version 5 of the Endless OS enters testing


Re: Looks like Windows 11

> I do wonder about the possibility (probability?) that I (and others) like the early windows generic interface - menus, taskbar, heirarchical start menu - only because that's what we learned first.

I think there's more to it than that. I started on GUIs with MacOS System 3 (although it was upgraded to 7 after a year or so) at uni and Windows 3.0 at home. Windows 95 was a massive improvement over 3.x by every measure, provided you made sure to configure startup options to suit your DOS games and didn't try to run them under Windows. And most Windows versions continued to improve for quite some time. I certainly wouldn't want to go back to the Windows 95 UI, much less anything earlier.

A key factor in making the most out of the Windows UI has always been a willingness to spend some time organising and customising things. This didn't really start to lose its effectiveness until after Windows 7. Focusing particularly on the start menu and taskbar (since the main job of the OS is to let me start applications and manage the applications that I have running), here are some things both good and bad that stand out to me version by version from 7 onwards (except enough has been said about Windows 8 so I'll ignore it here). Some of the Win 7 things are really Vista things because I never used Vista enough to count:

Windows 7:

* Searching on the Start Menu is OK, but if (like me) you have everything you want in tightly controlled, nested folders, it doesn't help much.

* HomeGroup is terrific. Sharing a printer is much easier than ever before.

* Libraries seem kind of unnecessary.

* Taskbar is still relatively useful as long as you set it to never combine.

* Why would I want windows to be transparent? If I'm working in one window I want to see that window, not what's underneath it.

* Jump lists are pretty cool, if nigh-impossible to discover.

Windows 10:

* I see we still haven't gotten Settings and Control Panel merged after the Windows 8 mess.

* HomeGroup is gone :( Sharing printers is back to being somewhat painful.

* Give up on Start Menu folders. Also, accept that you won't be able to find executables for a bunch of programs.

* Organise the Start Menu by pinning instead. (This was more a work thing than a home thing for me.) Pin every single program you use regularly to the Start Menu with a small tile, organise them into appropriate labelled groups, and set your start menu to show pinned apps by default. Then you have instant access to everything you need. On the rare occasions you need something else, it's easy enough to switch back to the all apps view and search for it.

* Taskbar is still relatively useful as long as you set it to never combine and to show text.

Windows 11:

* OK, let's put the taskbar back on the left (literally the first thing I did).

* I see we STILL haven't gotten Settings and Control Panel merged.

* WHY CAN'T I RIGHT CLICK ON THE TASKBAR TO PULL UP TASK MANAGER? [Note: as of sometime in the last couple of weeks, this is back! Why it ever went away is beyond me - but I was very glad to know the Ctrl+Shift+Esc shortcut in the meantime.]

* Pinning still kind of works to organise your Start Menu, but not as well: you don't have groups any more and you can't control the layout beyond "less pins" and "more pins". You can't turn off recommendations altogether, which is a pity because if I could use those last couple of lines for pinned apps I could fit all the ones I want to use on the same page and not have to scroll.

* There's really no way to ungroup my taskbar icons? Great, let's add time and extra clicks every time I want to swap to an app that has more than one open window. That's only (unsurprisingly) all the ones I use most often. [I think I need to train myself to use the Task List button for app switching rather than the taskbar icons.]

You might notice from the above that there's been useful UI stuff in most of the Windows versions I've used. But I haven't found anything in Windows 11 that works better for me, and several things that are quite a bit worse. It feels like the Windows 8 experience again in some ways (though certainly not as bad).

Stuff that I don't remember well enough to attribute to a particular version, or that has been a tendency over multiple versions:

* Taskbar functionality took a hit for me in whichever version insisted that all the windows for the same application had to be together. But the forced grouping in 11 has really killed it.

* Why don't jump lists work on the pinned apps view? (Not sure if this was the case in 10.)

* Steady removal of detail for customising the layout and appearance of the UI. Fairly minor for the most part and understandable from a vendor perspective. It'd be nice if everything that remained didn't get shifted around continually, I might have been able to find things sooner.

* I actually don't want to search the internet from the Start menu pretty much ever (I will note that it is handy in the case of an app that you thought you had previously installed but actually hadn't yet; but that's a very niche case). If I did want to, I wouldn't want to use Bing.

* Flat UI. Ugh. Borders served a purpose.

Someone else mentioned the rise of skinny, nigh impossible to use scrollbars (especially when you're on the bus and bumping around). I only don't include it above because it only shows up in some apps and I don't know if it's an app thing or an OS thing.

Two signs in the comms cabinet said 'Do not unplug'. Guess what happened



> I put a big sign on the monitor saying "DO NOT REBOOT THIS COMPUTER!! It is being used for $PURPOSE and needs to run interrupted!".

He was just trying to make sure it ran interrupted, like you asked.

Just follow the instructions … no wait, not that instruction to lock everyone out of everything


Re: Writing instruction manuals is an art....

Don't worry, one day soon it will just be a file that you can only access by pressing a specific sequence of buttons on the infotainment panel.


Re: Bah!

Perhaps we need to muster up all the intestinal fortitude we can gather and pretend to be really into such things. Then it will be uncool and they may finally go away.

Go ahead, be rude. You don't know it now, but it will cost you $350,000


Re: You get what you order

Not always. I'm happy to recommend Fisher & Paykel washing machines after ours lasted us 17 years - replaced a couple of years ago by another F&P of the current nearest equivalent line but with larger capacity.

On the other hand I couldn't tell you what brand our freezer is, but I'm happy to get another one if and when it decides to pack up.

To make this computer work, users had to press a button. Why didn't it work? Guess


Re: Bad design

> Ovens for example, never have a simple way to set the bloody clock, they ALWAYS have some weird thing that involves pressing 3 buttons at once and then turning two knobs simultaneously while casting the runes.

Ours isn't too bad. The function knob on the left has six settings, going clockwise they are Fast Set, Slow, Time, Oven, Mind, Set. Time (in the vertical position) is the normal setting and just displays the current time. The ones before Time are for fast (1 hr/step) and slow (1 min/step) increments to the clock. The ones on the other side are for the automatic start or stop (I don't even know which) function that we never use. So it's just "turn it two steps to the left until it gets to the hour you want, one step back to the right until it gets to the right minute, then back to the central position." The only hard part is timing the turns so that it stops on the number you want, but if you miss it you just have to go around again.

Senior engineer reported to management for failing to fix a stapler


Before I was even working in the IT department - but doing IT-ish process improvement in the department where I was working - I was asked to help someone out with their digital camera, which was the first time I'd seen one (this being about 18 years ago). I have no recollection of the actual problem but it was indeed pretty simple to sort out.

Of course, that only reinforces the general belief that you do know how to solve every problem. I did eventually teach the Marketing department how to randomise lists and how to compare two lists in Excel, so they didn't have to ask me to do it for them every time they needed it. So these days it's mostly my team members asking me about actual job related stuff, which is nice.

Tetchy trainee turned the lights down low to teach turgid lecturer a lesson


When I was at uni - around 30 years ago, sigh - what the lecturers wrote on the blackboard was generally what we would write in our notes; the additional discussion, Q&A, etc. was not normally written down although of course you could do so if there was something you found illuminating. Overhead projectors with the continuous rolls were used usually to supplement, for instance if they had been asked to explain something in the main notes and wanted to draw a diagram, or if they wanted to show something that would have taken a lot of time and effort to draw by hand. When I did my honours dissertation presentation it was all on OHP transparencies.

I remember the first time we saw a computer projection in one of our classes - it was not done the same way as today; there was a special backless LCD (I think) monitor that could be put on top of the overhead projector like a fancy, animated transparency. Because everyone had overhead projectors and almost nobody had a dedicated computer projector.

To preserve Earth's treasures, digital silence is golden


Alternative truth being rediscovered: Humans are awful.

As a corollary, if we can find a spot without many of them, we should keep it that way so we can enjoy it.

BOFH: It's Friday, it's time to RTFM


Re: Watch for hidden acronyms.

Both scanners and cameras, I believe.

And it was Technology Without An Interesting Name, if I recall correctly.

You can never have too many backups. Also, you can never have too many backups


Re: Stack popped reading that procedure....

> The classic solution would be using a Grandfather-Father-Son rotation

This was at a point in time where the backup hadn't been done for a month. You're still doing a month's worth of data entry over the weekend.

We were promised integrated packages. Instead we got disintegrated apps


Re: Photos via MMS

> The only thing you didn't explain is why on earth would you need to send a picture from your phone... What could be so urgent it can't wait for you to get home/to work and do it a more conventional way?

Well, in my case yesterday, I wanted to send my daughter pictures of the various multi-colour yarns they had at the shop I was in, so she could tell me which ones she wanted me to buy for her. Taking the pictures, walking home with them, showing them to her, and walking back to the shop to buy the selected ones would have been rather inefficient. (Especially when the response after the first round of pictures was "can you take close-ups of all the ones of this type?")

Mind you, our phones refuse to send photos to each other via MMS or Bluetooth, even though both phones can send and receive photos via MMS with other correspondents; our current working theory is that our phones simply hate each other. So we had to email photos to each other instead.

Enough with the notifications! Focus Assist will shut them u… 'But I'm too important!'


Re: I like that man - even if he did move to France

SQL Developer does this to me all the time - I'm typing in a query and part way through it pops up a dialog box to tell me that the database connection has been reset, and waits for me to click "OK", which of course is the only option. Everything I type before I notice the dialog is there gets lost.


Something similar with one of the apps I use (though not as useless as a mere notification) - on launch, the application displays a dialog box for you to select which connection to use, and to enter login details if you don't have the option set to save them. If you have so much as looked at another application while this one is starting up, this window appears underneath everything else, and doesn't have a task bar button; you have to alt-tab to it - and it appears at the end of the alt-tab list, though of course that's not particularly hard to get to.

More than once I've gone to restart my computer, and on closing down everything else found one or two of those windows patiently waiting for input.


Re: Windows System Sounds - office hell!

I just keep a pair of earphones plugged in to mine. I put them on if I'm on a call or want to listen to music, and the rest of the time they absorb whatever sounds my laptop wishes to inflict on the general environment.

The perfect crime – undone by the perfect email backups


Re: You just never know...

I've had some old requests. One company wanted an explanation a couple of years ago of ~$10k of due payments that were showing up in a report as not having been paid; we had to restore a system we'd decommissioned in 2015 to investigate what had happened to them, but the payments they were asking about were from the 2008 kind of era, so you'd think they could have asked a little earlier. (The big one that was almost all the total was paired with an equal negative amount which was also showing unpaid; most of the others had been paid, but the invoice had been transferred to from a subsidiary to their main company, so it didn't get picked up properly in the data update that got the payment information out of the old system. I think in the end they technically owed us a bit, but we obviously weren't going to press them for it.)

I was less successful when we had a legal request (for a court case) to recover all payments made to a certain vendor ever. We could give them back to ~2006 OK, but before that payment information would have had to be dug out of our (current - 3) system, which was an Access database with a custom front end. Which I was reasonably familiar with, and which I'm pretty sure were backed up to offline storage (they were backed up initially to our fileserver, and some years later we had a big push to archive unused stuff off the fileserver to offline storage), but neither I nor anyone else I asked who'd been around in that sort of era could work out where those archives actually were now, or if they still existed.


Well, you clearly shouldn't have been stealing cameras in the first place!

How one techie ended up paying the tab on an Apple Macintosh Plus


Re: No convert

Did you know the F8 thing still works, more or less?

Looks like the first press of F8 puts it into an odd selection mode, then subsequent presses select the word, sentence, paragraph, and whole document.

But then you're still in that selection mode, and clicking with the mouse will select from wherever the starting point of the latest F8 selection was to the current mouse position. It's a little odd to get out of.

Switch off the mic if it makes you feel better – it'll make no difference


Indeed, the article on this very site about the wallpaper speakers (https://www.theregister.com/2022/04/29/mit_flat_speakers/) does specifically discuss their potential as microphones, which researchers are actively pursuing:


MIT professor Jeffrey Lang confirmed as much in an email to The Register.

"The same device can work as a microphone," said Lang. "It can be mounted on the surface of any object and used for sound recording. The device itself is passive and generates voltage signal under incident acoustic waves. But we apply a small transimpedance amplifier in order to obtain a large signal-to-noise ratio."

"We actually have an upcoming paper that reports the microphonic performance of the same device. The amplifier is the only part that consumes power. If a standalone design is needed, usually the signal storage/processing and wireless transmission consume much more power than the amplifier itself."

"But we can either use a battery or integrate energy harvesting components to make it standalone without wiring to external power. For instance, our group is also developing thin-film solar cells and it's possible to integrate that with the acoustic thin film to provide the energy."


So we can look forward to a time when our houses really are listening to everything we do all day long.

Your software doesn't work when my PC is in 'O' mode


Around 20 years ago the organisation I worked for had a strict policy of having all computers turned off at the end of the day. This policy was accompanied by a photo of the mangled remains of a computer in one of the workshops whose monitor, IIRC, had decided to set itself on fire one night.

You can buy a company. You can buy a product. Common sense? Trickier


I did once waste a fair bit of my ISP's tech support time trying to figure out why I couldn't access my email, which had previously been working.

After about half an hour of rechecking various settings and trying all manner of things, I realised that I still had my work VPN active from when I'd been fixing an issue remotely, hours earlier. (I already knew that my work VPN blocked my ISP's mailserver, though this is fortunately no longer the case.)

Prototype app outperforms and outlasts outsourced production version


Re: Been there - done that

Sounds like they were indeed a team of tools.

No, I've not read the screen. Your software must be rubbish


Re: penultimate hurrah?

Yes, that's why Win98 was the penultimate (second last) entry in the 9x family. I'm not sure what your point is here. Or are you just riffing on WinMe since it came up?


The dialog in question does have a "Don't show this dialog again" checkbox.

Unfortunately I have to leave it set to show the dialog every time, because if I don't, it doesn't turn off the inbuilt speaker when I plug in headphones. And they're treated as a single "Speaker/Headphones" device in the control panel, so I can't just disable the speaker and leave the headphones enabled, which would be my preference.

Bouncing cheques or a bouncy landing? All in a day's work for the expert pilot


I think you mean "autodetecting external screens, and then deciding randomly whether to use the same settings as the last time they were on this screen configuration, or to turn some screens off at random just for the hell of it."

At least that's how my work laptop behaves. Plug it in, see whether all the screens come up, and if not (about 10% of the time) go to display settings and put it back to "Extend" rather than "Show only on monitor <whichever one it likes today>".

BOFH: On Wednesdays, we wear gloves


Re: Beyond 2000

I remember when it was "Towards 2000"...

Wi-Fi not working? It's time to consult the lovely people on those fine Linux forums


Re: Always read from the end

Sometimes you need to be more thorough. Particularly on the Microsoft forums, I've seen error message threads which have a collection of five to ten separate fixes, each of which fixes the problem for a distinct subset of users.


I've done the very same thing. Googled for my odd problem, been happy to see there was a single forum thread about it, realised it was an old thread I'd started, read to the end, and left to ponder the "never mind, I've managed to fix it" message I left last time.

If I recall correctly, I managed to nevertheless use that information to fix the problem - by looking in my sent emails from around the date of that last post for any that might be related to the issue. I don't think I got the actual answer, from memory, but enough hints to put me on the right track.