27 December 2022

New Year - New(ish) Me

(repost from my frotz.prose.sh blog)

The end of the calendar year is drawing close, and my life has sort of settled down and perhaps this year I will have some time to write a little on my blog. It's hard for me to commit, as my attention wanders and small changes in my life tend to make big disruptive waves.

Platform Change

Aside from my work stuff (boring boring boring) and personal life (cringey tempest-in-a-teacup sort of stuff), the biggest change recently for me has been to switch away completely from living on the Windows platform to a 100% linux-based setup. I still have to have VMs to run the occasional Windows software, mainly for clients, but all of that takes place from within Linux and all of my personal stuff has been switched over.

I am hopeful that being able to use some better tools and processes will help me clear out my backlog of projects I want to tackle (just thinking about the list exhausts me, so I won't enumerate even a portion here), and maybe help me de-clutter my digital stuff a bit.

I landed on PopOS! for my desktop OS. I'm not really a GNOME fan (not of the "new" GNOME that replaced the old GNOME2, anyway), but System76 has made some nice enhancements to the interface and I'm really digging it, and I can stay on a stable release. Plus PopOS! has good support for my nVidia graphics card.

I hate, hate, hate the rolling-release model for day-to-day tool use; I want to be able to power on, log in, and get to work -- not worry that one of my tools has broken and then have to roll back or find an alternative. I have Fedora Silverblue on my laptop but I expect to replace that with PopOS! as well as I've spent too much time fiddling with it to get the same sort of parity. Since I don't use my laptop as much I don't know what I was thinking -- it needs to be more stable than my desktop, not less. Unfortunately my hardware tends to be too new or require too many non-free drivers to use Debian, so I'm going to have to relegate it to my server.

Dungeon23

I'm going to try to do my take on the Dungeon23 project, but since I don't like following rules unless they're like a consensual agreement between parties I'm not going to follow along precisely. I figure I can do one area a week, but one room per day and using a paper journal and all that is just bollocks for me. I need less clutter in my home, not more. One area per week, digital content, and we'll see how it goes. I will probably put it up here once I get the logistics of hosting the images and files and I guess licensing figured out.

Other stuff

I expect I will post more ramblings about games as well - lately I've been thinking of the identity crisis of D&D and -alikes; the games can't seem to decide if they're supposed to be a coordinated team effort, or just the antics of superstars who are working side-by-side. I blame video games for this mentality (an easy scapegoat even if it's not totally accurate), and I expect I'll write up some stuff about this. Maybe some of it will actually be useful for discussion.

Wrap up

I think that's enough for one day. I hope if you're reading this your 2023 is better than your 2022 (no matter how good or bad your 2022 was). Maybe I can stick with this this year!

*** End of Line ***

04 September 2022

19724

 Last week was my birthday, where I passed the 19,724 day milestone. That's a lot of days under one's belt. Aside from still working more than I want (of the seven days I set aside for myself I was able to forgo work on only two days), I've spent the time between then and now reading 15 books and messing around with a certain space MMO. 


(edit - forgot to account for leap years :-/ )

26 July 2022

Meatless (mostly)

 (reposted from my frotz.prose.sh blog)

I have reduced the amount of meat in my diet significantly, to try to help address some health issues I've been experiencing as I approach my middle fifties. I would say I went from 13/14 meals per week containing meat as a primary course to perhaps 4/14 containing meat at all, and maybe 1 or 2 per week where it was featured as a main course.

I say meatless, because I have not gone vegetarian. I still eat animal products like yogurt and cheese regularly. The (mostly) comes from an occasional breakfast or dinner with my partner, where I may indulge in something more than an egg or two (the bulk of my remaining meat consumption).

On the one hand, I hate being constrained. I hated when I had to give up drinking so much caffeinated sugar water, I hated when I had to cut back on the amount of coffee I drink, etc. But I get used to it -- after a month or two, I still remember the "great" days when I ate or drank what I wanted all the time, damn the consequences, but I don't feel like I really miss the experience so much. I just don't like not (really) having a choice.

It's been the same with the (mostly) meatless diet. It's not what I expected. I pictured endless dishes from a variety of cuisines that were known for featuring in vegetarian diets, but that is not what I've been doing. I have mainly been 'exploring' - trying to turn the vegetables and fruits I'm familiar with into dishes that I can eat regularly and in sufficient quantities to satisfy as main courses.

Thankfully, I only have to do this for myself which makes the process easier. However, my partner has been interested in trying some of the things I've prepared, and they have liked some of them (some of them, not so much :/ ).

I don't normally cook by recipe, so it's hard for me to provide anything that might be useful to someone, but I can give a general idea of some of the things I've made that both of us have enjoyed.

The caveat is that we both spent our formative years in southern California in the US, and Hispanic cuisine there was an important part of our diets, so I've focused a lot on replicating some of those foods, at least in spirit. None of these were invented by me - it's either something I ate when I lived in California, or inspired by something I ate from that time.

Bionicos

This one is essentially a fruit and dairy dish. It's simple and flexible, and may or may not sound appetizing. The idea is to take a mixed bowl of fruit (where I grew up this was a mix of local fruit grown in California and tropical fruit from Mexico), chopped/cut/pared into bite-sized pieces, and mix it with equal parts yogurt or sour cream and either sweetened or unsweetened condensed milk. I usually use thick yogurt (Greek style, as it's known in the US), mix it with an equal amount of unsweetened condensed milk, and then sweeten to taste with whatever I have on hand for the task. Mix the dairy together, sweeten it to your taste (I like mine a little sweet and a little sour), and pour it over the majority of the fruit. Top this with some more fruit, arranged for a pleasant presentation, or sprinkle muesli or granola or toasted grains or nuts or whatever on the top to add a little crunch. With the temperatures here hitting the mid- to high 30s for over a week straight, we had this for our evening meal more than a few times as it was cool and not particularly 'heavy'.

Tostada pizza

These are stupid simple. Per pizza, fry two small corn tortillas until they are the texture you like (crispy, chewy, whatever you prefer). Take one, cover it with refried beans, mashed beans, mashed & fried chickpeas, lentils, or other legume of your choice (spiced and cooked to your preference). I top the legumes with enchilada sauce (guidelines below this one), and shred some cheese.

Then I put another tortilla on top, another layer of beans, another smear of sauce, a little more cheese. Once I put together a few of these, I bake them for a few minutes in an oven or appliance until the cheese melts and crunch away.

Sauce

My sauce usually starts with some olive oil, to which I add a minced aromatic like garlic or onion. I let that cook for a bit, then add some finely ground chili powder of some sort and a little flour and make a roux (stir it around for about a minute until the flour starts to brown and absorbs most of the oil). Then I will add some diced or pureed tomatoes or tomatillos, any other seasonings (salt, cumin, whatever you'd like), and let that cook for 10+ minutes. I usually go with a ratio of equal quantities of oil and chili powder, and add just enough flour to get the roux going. You may want to add a bit of water to your tomatoes if you'd like a thinner sauce (I like it thick, but thin is good, too!).

Nachos

Another stupid simple dish. I take several small corn tortillas, and cut them into eighths. I fry them until they have an appropriate texture, and then drain them. Tonight I fried up about 400g of diced mushrooms and aromatics, mashed up and fried (since I had the skillet out) some white beans (called navy or pea beans here in the US) and seasoned with chili powder, and then topped the tortilla chips I made in the first step with the bean mixture, the mushroom mixture, and then added some cheese and melted it all for a few minutes. Like the tostada pizza, use whatever legume you prefer. I've also used chickpeas, lentils, roman beans, pinto beans, cannellini, and black-eyed peas.

14 July 2022

Oddity

(reposted from my frotz.prose.sh blog) 

I grew up in a sort of in-between time and social class. I was a teen in the early 1980s, and while my family did reasonably well financially my parents didn't feel like the expenditure for a "real" computer ($1,600+ USD for an IBM PC or compatible around 1983 or so in 1983 US dollars) was worthwhile. I certainly didn't earn enough money to purchase something like that for myself with the sorts of jobs I could get, but I could afford an Atari and then buy various add-ons as time went on.

Since no one in my family graduated from a college or university (until my youngest sister), I had no idea what the Internet was, but I definitely was into BBSes and CompuServe in 1984 after I got my first modem (and then had to get my own phone line to avoid tying up the house line when people could reasonably expect to use the phone). I even wrote a couple of BBSes with a high-school friend of mine who also had an Atari, and we ran our own for a while until we got interested in something else.

It is probably nostalgia creeping up on me, but I miss the ease with which one could start programming back then. The machines all came with a rudimentary BASIC interpreter, and one could pay for Pascal or other "serious" programming languages when one bumped against the limitations of BASIC. I think we wrote our BBS software in Pascal or a strange little language called Action! that was Atari-specific. Our first BBSes were strictly interpreted BASIC, of course, and 300-1200 bps and a single user at a time (I couldn't afford more than one phone line) meant that aside from bugs even the BASIC BBSes ran reasonably well.

The programs were less functional, to be sure, but also it was much simpler. We didn't need SDKs or APIs, or dynamically linked anything. When I got into linux around 1993 or 1994 I was really surprised at how much faster a statically compiled system booted on my junk 486sx computer I had. Even now I occasionally try to compile software statically, but it seems mainly a fool's errand that leads to tears unless it's something like ffmpeg (which I do still statically compile).

I don't know why I was thinking about BBSes or my old Atari, but I sort of miss the old single-host BBS. I was never super big into FidoNET or the other gateways - I liked the little self-contained islands where one got to know the other users, and the little cultures that developed on those isolated systems.

That got me to thinking about setting up a BBS that could accept ssh, and there are some packages still around and apparently in use so maybe I will. I ran a Mastodon server for a while but in the end many users just used my low-pop Mastodon instance to get their feeds from octogon.social or the main Mastodon instance so I eventually took it down so the cobwebs wouldn't choke out the local channel.

As usual there's no real point to this post - just my reminiscences and (maybe?) nostalgic cravings.

11 July 2022

Dissatisfied

 (this is a repost of content from my blog at frotz.prose.sh)

I am dissatisfied with a lot of things, but I'm only going to talk about one thing today and that's my dissatisfaction with some aspects of my shared world hexcrawl game.

I wanted to run a fun, interesting exploration game that also rewarded players who wanted to send their characters out into the wilderness rather than into one of the two big dungeons that are close by.

I don't feel like I am really doing as well as I could - since XP in the rules system we're using Halbards and Helmets is based on the amount of gold spent in the game and there aren't piles of gold just lying around regular characters in my game lag behind those who spend time in Stonehell or Barrowmaze.

I am also trying to find the right balance of in-game world events happening, along with local points of interest, so characters have a choice of different activities to pursue.

Originally I planned on using the wilderness random encounters right out of the B/X blue book, but the frequency of the checks seemed like it would result in a lot of dead first-level characters.

Then I thought I would use the Halberds & Helmets rules but as-is it is really designed for travel between dungeons or adventures, and I planned on running a game that was more about exploration in and of itself.

I have included the 'Ravaged Ruins' section of the Judge's Guild Ready Reference Sheets into my encounter check process, and the one location that popped up was interesting, but those results still don't occur very often. On a d6, 1=random encounter, 2=ravaged ruins, and.... and that's it.

I think I am going to add a third entry to the daily encounter check - 3=lairs. These will be the lairs of the types of creatures who are found on the random encounter table. I hope this will add more "points of interest" to each of the hexes, and provide characters with another way of funding their advancement aside from the two dungeons.

I will see how it goes, I suppose.

08 July 2022

Complexity

(this is a re-post of my content on frotz.prose.sh) 

Even though I don't participate in organized play like D&D 5E's Adventurer's League or Pathfinder's Pathfinder Society, I did participate in both for quite some time. I took a hiatus from participating with RPGs as I was a bit burned out from running weekly sessions, then COVID started, and so the hiatus continued. Recently I started playing with some great folks in Europe where we do short 2-hour sessions and limited duration campaigns using lightweight rules. It's been a lot of fun, and I haven't yet felt the telltale indicators of burnout.

My partner and I were discussing some new bit of needless complexity in the MMO EVE Online yesterday, and it started me off thinking about complexity that enhances, versus complexity that obfuscates or is just "complexity for complexity's sake".

The games I'm playing and running at the moment have an ethos of simplicity. Because the sessions are short, we try to pack as much into a session as possible and so complex rules don't seem like a good fit. I run a hexcrawl in a shared world with two other referees, and I'm using Alex Schröder's Halbards & Helmets, a sort of B/X-lite, to do so. It's worked pretty well; we've had to explore some additions to the rules to address funding certain enterprises, but mostly I run right out of the rules.

All of this sort of has coalesced into my mind as I still listen to the occasional "actual play" Pathfinder podcast, where the "complexity for complexity's sake" is definitely evident in the way the referee and the players handle their games. I do like complexity in games - GURPS, Shadowrun 3E, and d20 3rd edition (less so the revised(3.5) edition or Pathfinder) are some of my favorite systems. However I always felt a tension (not a bad thing necessarily) between providing enough complexity to keep players interested but not so complex they tune out. It was a fun line to walk - I felt like I did a reasonable job of "drilling down" when circumstances warranted really getting into the nitty-gritty but I kept things moving without turning everything between combat encounters into a hand-wave-y exposition from me.

Listening to these podcasts makes me think not everyone views complexity as a dial to be adjusted, rather than a switch set to "on" or "off". I like it as a dial, but not everyone does, I guess. Some like as little as possible all the time, and some like the opposite. Sort of like some people like only homegrown vs prepackaged campaign settings and modules, or really letting the imagination fly vs. treating a tabletop game like it's an analog version of a console or computer game with limited input and options.

I don't know where I'm really going with this, other than I don't find complexity for the sake of being complex fun. 


10 April 2022

Hex Crawl pt.2

 In Hex Crawl pt. 1, I discussed the results of testing three different methods for determining the wilderness exploration experience for the hex crawl game I will be running. 

Aside from the method used to determine random encounters, I also want to have things like weather, adverse/beneficial events, site discovery, and foraging occur as well, all without the necessity of making several dice rolls and consulting an ever-increasing number of tables. 

The wilderness rules from Halberts & Helmets (hereafter referred to as "H&H") are simple and easy to use, but they don't help me with any of the exploration aspects I want to incorporate. The 17% chance of encountering anything (good or bad) limits their exclusive use as that would translate into days and days of travel with nothing happening unless I dictated (and I don't like doing that).

Moldvay/Cook B/X (hereafter referred to as "B/X") has more depth to the variety of encounters, but as presented they are "monster" encounters and so don't help with the exploration aspects, as well as proving to make travelling in the wilderness a near-certain death march for low-level characters.

I think the Traveller 5 flux mechanic can form the basis of the system I need. It can handle both beneficial and adverse results, and (good for me) serve as more of a narrative guide for a day's activity while exploring, all while making exceptional events less frequent (thus more memorable and potentially easier for my 1st level characters to deal with).

Using Flux

Rambling background

Before I outline the way I see flux working for me, I would like to explain a particular hang-up I have as a referee. I don't like dictating story beats, or guiding the narrative, or otherwise directing players. This has been my biggest hang-up when trying to run a game system like Numenera or other Cypher system games. I don't like the "GM intrusion" mechanic - it degrades the experience of what I would otherwise consider a great modern rules-light d20 system. I like to participate, as a player (of a different sort), rather than dictate. I prefer improvising when rolling randomly to determine an adverse or beneficial effect or situation, rather than trying to force a story beat or situation on players. I know, it doesn't really make sense in playing a game where I make stuff up for people. YMMV.

To use flux for my wilderness mechanic, I need to step away from details a bit and think more of the experience of a given day, as a whole. I have to direct things a bit more than I would normally prefer, but conversely I can tailor the individual day to exactly what the players are up to.

For example, presume the players have elected to spend a day foraging rather than travelling. In our game we've decided that players can forgo movement for a day, so that everyone can focus on gathering food or water or whatever. They have a base chance of 1 in 6 to gather 1D6 units of supplies), unless they are playing a thief in which case they have a 2 in 6 chance of gathering 1D6 units of supplies. The players can elect to do one roll for the entire group (using the highest skill), or break into smaller groups (each group using the highest skill), or even do it individually; it's all up to them to decide.

First, I have the players roll 1D6 - this is the "light" die in flux parlance. I likewise roll 1D6 (the "dark" die), and we determine flux. 

Example 1: Flux -1

(-1 to skill checks)

The players know today may not be a good day for this - maybe the weather is terrible, maybe someone is having digestive issues, or maybe their hearts are just not into it. Regardless of why, they know that their chances of success today are reduced. Only skilled characters (thieves) even have a chance.

Example 2: Flux +2

(+2 to skill checks)

Today is gorgeous - the weather is beautiful, everyone feels great, plants and animals are in abundance, even the water looks clearer. This is a great day to gather the supplies. 

Example 3: Flux -4

The players have had a restless night. There's been a lot of movement of some kind of creature or creatures in the area and maybe it's best to get out while they can, like all of the local wildlife (roll an appropriate encounter for the terrain). Or, someone is really sick from something they ate, and can't move. Or scavengers or vermin have eaten some of the party's supplies.

Example 4: Flux +5

Finding food or supplies presents no difficulty. Everyone can find whatever they need without making a check. In addition, one of the players has discovered a cave that holds the remnants of a couple of structures. They are solid enough that they can be treated as a safe area in the future. Investigating them might even yield some tools or artifacts from the ancient builders.

Example 5: Flux 0

Today is just a normal day for procuring food or supplies. No bonus or penalty applied. 

Summary

So, using flux in this way is less procedural than I would normally prefer, but I find myself excited by the potential of this during game play. I can apply the effects of a flux roll based on what the players decide to do, and they know up front what sort of day it looks to be. I can still use random tables to determine things like ruins or encounters, but I also have some flexibility in what to apply. We'll see how it goes!

Hexcrawl pt.1

 In a couple of weeks, if things go well, I will be running a hex crawl in a shared world with two other referees (Alex and Peter) who run dungeoncrawls.

Since we've already got two dungeon games, my wilderness game is not an intermission between travelling to new dungeons, it's about exploration. The starting area is largely unexplored - there is next to nothing known about the surrounding areas (I believe we're kind-of/sort-of using the Wilderlands of High Fantasy as a reference point, but we're located below map 18 so it is definitely a make it up as you go situation).

Background

Our shared game world is using a mix of Alex's Halberds and Helmets (hereafter referred to as "H&H", player rules(english and german) and referee rules) and original Moldvay/Cook B/X ("B/X"). I originally intended to run the hex crawl straight out of B/X, but I've had some difficulty reconciling that system with the style of game I will be running.

Our sessions are short - we have a two-hour time limit - and with three of us alternating on the same day of the week, we try to keep things simple enough so that people can jump right back in without a lot of recap or discussion.

Everyone picks a randomly generated character and hirelings from a list pre-generated list, and they all start at level 1

Alex has his own hex crawl rules in H&H, but they're a bit too "rules-light" for my needs; conversely, the B/X rules have some depth but are not overwhelming, but are either potentially amazingly deadly or a bit of a grind for higher-level characters. In addition, for either system I would need a separate method of determining whether players discover something - our world is being generated as it's explored, and I want to minimize the amount of content I hand-place on the map.

As all of the characters are level 1, I started thinking about how encounters would play out, so I simulated 14 day/night rolls using the H&H method, the B/X method, and using the Flux mechanic from Traveller 5. 

To make things even more challenging, there is no healing while travelling. Players can only recover hit points while in a settlement or other safe area. There are no clerics in H&H (they're just magic-users with a religious devotion), and no one is making or selling healing potions or concoctions.

I tested results by generating 14 day/night rolls and comparing the results from the H&H and B/X mechanics. For flux, the daylight roll was the light result, and the nighttime roll was the dark result. I did this test using the actual dice I will play with, not with a PRNG. I could've used the 2d6-7 method, which would've generated the same result.

Results

Halberts and Helmets

H&H uses one roll during the day and another during the night, with a table that varies by region. Using a clever mechanic, it can generate day or night encounters from the same table. The chance for encounters is a flat 1 in 6 for either time.

H&H generated 4 encounters across 14 days and nights. 

Moldvay/Cook B/X

B/X uses one check per day, unless the referee decides to do more. The chance for an encounter is determined by the local terrain, and there are tables and nested tables to determine the specifics of an encounter. I opted for a single check during daylight, and another for night.

B/X generated 5 encounters for the clear/grassland terrain (which in this game is not really present except around settlements); it generated 10 encounters for woods, river, desert, ocean, hills, or barren, and 14 (!) encounters for swamp, mountains, and jungle. Most of the terrain in the area fluctuates between woods/river and swamp, so that is a problematic result for a party of 1st level characters and their retainers, not to mention a *really* slow exploration game where the sessions are limited to two hours at a time.

T5 Flux

Flux is a simple mechanic - roll two differently-colored dice and subtract the darker color from the lighter. Alternatively, one may roll 2d6 and subtract 7. The result will be a number somewhere between -5 and +5, with a tendency for results to cluster near 0.

Flux generated 6 negative results (-1, -2, -2, -3, -3, -4),  6 positive results (1, 1, 1, 3, 3, 3), and 2 zero results.

Summary

To put it in game terms, using the H&H rules, and encounter would occur on the night of the 6th day, during the day on day 7, during the day on day 8, and on the night of the 13th day.

With the B/X rules and presuming the players stay away from swampy areas, they would have random encounters on the night of day 2, the night of day 4, the day of day 6, the day of day 10, the night of day 10, the day of day 11, the day of day 12, the night of day 12, and the day of day 13. Swampy areas would've been worse, with multiple day/night/day encounters.

That's just too many encounters for a game that takes place in 2-hour sessions, much less for a group of level 1 characters.

I think Flux will be a good fit for me and the game I want to run, but I'll have to explain why and how in the next post.


continue on to part 2

12 March 2022

Helmbarten und Halberts

 Alex Schroeder created a rules-light RPG loosely based on the principles of "classic" Traveller, the science fiction game - more specifically, the 1977 or 1981 versions of the so-called "little black books" with some inspired parts from the latest edition of Traveller. 

The German version of the game is called Helmbarten, and Peter Frölich and I helped translate that into the English version called Halberts. Four of us - Alex as referee, Peter, PresGas, and I - have been playtesting the included setting and the rules. Notes on our sessions and characters can be found here.

Unlike Paul Elliot's Mercator or Doc Grognard's Adventurer, Helmbarten is not a straight historical or fantasy adaptation of the original Traveller rules, and doesn't require having access to any of the Traveller books. Instead, it draws inspiration from what sets Traveller apart from other RPGs with origins from the same time - simple task resolution, easy character generation, and (perhaps the biggest difference of all) entirely front-loaded character advancement. 

It doesn't focus on, or even have rules for, gaining experience or item acquisition to increase character power during play - as a player you determine how much risk you want the character to undergo to continue to advance at the time of creation, and then you play that character.

To explain a bit: 

A character in Helmbarten doesn't advance in the fashion of D&D and the other RPGs inspired or derived from it. A Helmbarten character develops in 4-year blocks at the time of creation. At the end of each 4-year stint, the player determines if misfortune strikes the character, and (presuming the character hasn't died) determines if they want to continue in the same career for another 4 years, take a year off to attempt to switch careers, or simply begin adventuring at their current state of advancement. Increasing age and increasing likelihood of a stroke of misfortune are weighed against gaining new skills or increasing those the character already has, as well as the final material or social benefits the character will have once they start adventuring.

The lack of resource acquisition and management during play really makes Helmbarten play differently - you're not out to gain money or experience to improve your character's hit point total or gain the next feat, or learn new spells, and there's no tree of magic items to "climb" to ensure you have the proper power level or build. Your character's survivability (their three physical stats, combined) represent all of the "hit points" your character will ever have.

The default setting is a fantasy Alpine region with a Merovingian feel, but the framework for populating the game world and fleshing it out make it really easy to develop different settings. I myself am working on putting together a few "supplements" that are based around the Sea Peoples of the Mediterranean, an Avestan setting, and an ancient-era Fertile Crescent inspired setting.

As I mentioned earlier, the four of us have been playtesting.  I've become quite immersed in the setting, and I have particularly enjoyed the way the process of character creation generates a character and then gets out of the way of gameplay. No messing around with experience points or gold or consumable resource management - you just "run what you brung".

Our game sessions are short by modern conventions (roughly two hours every two weeks), and our "backstory" is comprised mainly of what we generated through random rolls on the career tables as we generated our characters, mixed with emergent backstory developing through our interactions with Alex's NPCs. It plays like it reads on paper -  a rules-light game system for a short series of adventures that everyone just has a lot of fun with. For me it's also been really immersive in ways I didn't expect.

Maybe it's related to the way that the character advancement is out of the picture once you've created a character. It could also be that I am playing with great players (Peter and PresGas), or that Alex is a fantastic referee, or that because our sessions are short we really focus on playing. It might be that this game really strikes on the key points of what I've always wanted from an RPG. I suspect it's all of that combined that has made this one of the most enjoyable games I've ever played in.