ckb Standard Ascension

ckb

Minion
Staff member
A new interesting problem: when drinking booze on day one, I got a fascinating error: "[¶-1] has no matches."
What is the expected outcome here?

I assume this is SC. I originally had the Turkey used more for SC, but it was not necessary when I started tweaking the script for HC. I updates the script to use the turkey earlier for SC runs, so it should get the booze by the time it wants to drink.
 

Valliant

Member
Lovely, thank you. I just wanted to say that I'm really impressed by your script so far. I know I've been mentioning all the things that don't work, but it's mostly been working beautifully.
 

Valliant

Member
This thread seems to be half my "Can your script recover when I've failed to perfectly follow instructions" requests, and for that I'm sorry.

That being said, if the script fails from not recovering MP properly (because I failed to have the swiss piggy bank when starting the ascension) and after the clockwork pirate skull has been untinkered to make the clockwork maid it will then not work when I try to run it again because it can't find the clockwork pirate skull. Can it check to see if the maid has been made in order to skip that check?

Separately (and this may be a problem with Mafia), when starting to farm Pirate Insults it fails to detect that I do have the Florist Friar.
 
Last edited:

ckb

Minion
Staff member
Added a check for the clockwork maid.
Also, this script (especially the SC version) will break badly on Jan 1 when Standard restrictions all change. This will take some time and rework before it runs smoothly again. Start your last runs today!
 

hollow2201

New member
Hey. I just wanted to say thank you for sharing this. I eagerly await an update for the new standard restrictions.

I ran 6 normal standard runs (1 of each class, all 2 day, 515-565 turns) and 2 hardcore standard runs (both 3 day, 735-750 turns). It worked beautifully with maybe 1-3 restarts a day and needing a total 15-20 minutes to run. Restarts were mainly due to bedroom nightstand fights and semi-rare windows. Only fights I lost and the most restarts were HC PM with early day 1 meat and MP management but that was expected.

I hesitate to add any critical comments because overall it worked incredibly well and I don't have the technical ability to recommend the appropriate fixes. That said, a few minor annoyances: 1. In normal runs it would not use the Frobozz tent nor create Richard's star key however it would in hardcore runs. 2. For the nuns trick it would not use the arena buff. But that is so trivial. I can't believe it even does the nuns trick and I appreciate the warning when meat drop percentage would create a problem with 1-2 turns remaining.

But really that is it. It just worked. So thank you. It was exactly what I wanted during Crimbo while trying to get remaining 2015 standard outfit pieces.
 

ckb

Minion
Staff member
My first pass updates for Standard 2016 are in for HardCore. Feedback is much welcome (and needed). I would like to improve speed if possible.
Softcore 2016 has not been started yet.

There should be no problem getting a HC run done in 3 days. My last run with this script (as a DB) I finished without needing to eat on day 3... so plenty of headroom here. My other runs were good enough for a leaderboard spot, though it is very early in the year, so it is less impressive than it sounds. Runs should be 3/700 or better.

I am still tweaking things:
  • Note the new requirements in the first post for setup (Bram in the painting, Astral shirt, Xi receiver).
  • Class combat is still tricky on day 1 (especially with the barrel lid +ML). Myst classes are easy, the others not so much. You may run out of meat and fail. try selling some stuff or farming a bit in the Treasury. Let me know what class and where it went wrong. this is hard to debug because it only happens once per run and each class is a little different. Fighting in the Caldera also usually fails, but it is still in there anyway.


@hollow2201
1: It should use the house and make the star key. It is possible that you had these troubles before I made improvements. Let me know if the problems persist.
2: It cannot use the arena buff because it does the nuns trick before the area is complete (usually).
 

Valliant

Member
So the script stops when I get beaten up in the Caldera, but I had successfully gotten fish DNA right before my beating. Can the script watch for the combat message that indicates a success or check the syringe for the appropriate DNA? When I restarted it, it went back to the Caldera for more, despite having what it needed.
 

ckb

Minion
Staff member
So the script stops when I get beaten up in the Caldera, but I had successfully gotten fish DNA right before my beating. Can the script watch for the combat message that indicates a success or check the syringe for the appropriate DNA? When I restarted it, it went back to the Caldera for more, despite having what it needed.

Yea... That happens. Best to hybridize manually if you get beaten up and have fish DNA, though easy to add a check for DNA before adventuring again. I'll do that too.
 

Valliant

Member
A new issue: It hangs on my failure to have Calculate the Universe, though that's not yet in the Required Skills list. Also, ouch, 48M for that skill at the moment. How vital is that skill to making the run work? While I'll get it now that I know about it, it might be nice to let people use the script without it.
 
Last edited:

ckb

Minion
Staff member
A new issue: It hangs on my failure to have Calculate the Universe, though that's not yet in the Required Skills list. Also, ouch, 48M for that skill at the moment. How vital is that skill to making the run work? While I'll get it now that I know about it, it might be nice to let people use the script without it.

I added that to the (incomplete) list of skills needed on page 1. Generally, I assume you have everything in the game. It is not totally critical. You miss out on some adventures days 1 and 3, but you will need to get the Frat War outfit yourself on day 2 without it. If you YR a hippy as the first thing on Day 2, I believe the script may do the rest.

Edit: yea... do that. That should work. You can modify the TryCalcU() function to just return true (line 893) to avoid the abort.

Edit2: I'll add a few lines to work around not having Calculate the Universe to get the hippy suit day 2.

Edit3: Just finished my 6th run (this one as an AT). Best run yet at 3/649. Still good enough for the leaderboard. Still no need to eat on day 3. :)
 
Last edited:

Valliant

Member
Thank you, modifying the TryCalcU() function got it working, and I'm sure people who don't have that expensive skill will appreciate having a workaround built into the script.

Unfortunately, I've got another spot that it stops: when drinking on day 2 after visiting the daily dungeon, the script successfully drank an ice wine and a pixel daiquiri, but then when crafting a perfect dark and stormy ground to a halt because I didn't have any brown sugar cane. Given that I'm level 9 at the moment, I'm not sure how I'm supposed to have acquired any.
 
Last edited:

ckb

Minion
Staff member
Thank you, modifying the TryCalcU() function got it working, and I'm sure people who don't have that expensive skill will appreciate having a workaround built into the script.

Unfortunately, I've got another spot that it stops: when drinking on day 2 after visiting the daily dungeon, the script successfully drank an ice wine and a pixel daiquiri, but then when crafting a perfect dark and stormy ground to a halt because I didn't have any brown sugar cane. Given that I'm level 9 at the moment, I'm not sure how I'm supposed to have acquired any.

Weird. Usually, I have plenty of bottles of rum from the pirates and this has never been an issue. It should not need to create one (unless you somehow failed to get one or sold them or something).
 

Valliant

Member
Ah, let me rescind that issue. I manually played the end of day 1, and may have played sub-optimally. I did not spend much time at the pirates as of yet.
 

Valliant

Member
A new interesting issue, but I think I know the cause of this one:

Code:
[4] The Bubblin' Caldera
Encounter: lava lamprey
Strategy: C:\Users\Valliant\Google Drive\BSB\KolMafia\ccs\ckb-custom.ccs [default]
Round 0: ililili wins initiative!
This may be a hard fight
Round 1: ililili executes a macro!
Round 1: ililili tries to steal an item!
Round 2: You lose 15 hit points
Round 2: You lose 60 hit points

I checked, and I did have "pickpocket before simple actions" turned on. I've turned it off, but I'd already manually gotten the fish DNA, so it'll have to be another run where I confirm that was the issue.
 

ckb

Minion
Staff member
I did have "pickpocket before simple actions" turned on. I've turned it off, but I'd already manually gotten the fish DNA, so it'll have to be another run where I confirm that was the issue.

The script will ALWAYS pickpocket if possible. Maybe not the best choice for the early game. The early game Day 1 needs some work. Especially for muscle and moxie classes.
 

Valliant

Member
The script will ALWAYS pickpocket if possible. Maybe not the best choice for the early game. The early game Day 1 needs some work. Especially for muscle and moxie classes.

The only trouble I had with combats on day one as an AT was getting the fish DNA from the Caldera and the last couple of free fights from the Snojo, where I was able to beat them by spamming saucegeyser, but your combat script wasn't quite being able to manage it for me.
 

Valliant

Member
A new issue: on day 2, having had no other issues in run I didn't have 3 clovers with which to clover for ores, and the script hangs if that's the case. I manually drew a Mine card to continue, and then had a similar issue where I got Temporary Amnesia, and the script hung when it couldn't be cured due to lack of a SGEEA.

I'm also getting baffling equipment/combat choices when going through the Black Forest. Despite being a TT, it's equipping me with a chef's hat, a saucepan and a meat shield, despite having better equipment and then in combat using the three lovebug skills and then Toss-ing every round, despite having much better skills available. This wouldn't be so bad, if it didn't abort in many fights due to reaching 20% hp.

Additionally, I got this issue when the script tried to open the Hidden City:

Code:
ckb-Std: Opening Hidden City
Maximizing...
1 combinations checked, best score 69.06
Maximizing...
1 combinations checked, best score 69.06
Maximizing...
2 combinations checked, best score 69.06
Maximizing...
2 combinations checked, best score 69.09
Holding meat shield...
Equipment changed.
Maximizing...
1 combinations checked, best score 69.09
Maximizing...
2 combinations checked, best score 69.09
Maximizing...
2 combinations checked, best score 69.09
Putting Greedy guts the Slimeling back into terrarium...
Taking GUC the Puck Man out of terrarium...
Cleared mood.
Set mood trigger: When I get Somewhat Poisoned, uneffect Somewhat Poisoned
Set mood trigger: When I get Hardly Poisoned at All, uneffect Hardly Poisoned at All
Set mood trigger: When I get A Little Bit Poisoned, uneffect A Little Bit Poisoned
Set mood trigger: When I get Really Quite Poisoned, uneffect Really Quite Poisoned
Set mood trigger: When I get Majorly Poisoned, uneffect Majorly Poisoned
Set mood trigger: When I run low on Leash of Linguini, cast 1 Leash of Linguini
Set mood trigger: When I run low on Springy Fusilli, cast 1 Springy Fusilli
Set mood trigger: When I run low on Fat Leon's Phat Loot Lyric, cast 1 Fat Leon's Phat Loot Lyric
Set mood trigger: When I run low on Polka of Plenty, cast 1 The Polka of Plenty
Set mood trigger: When I run low on Pride of the Puffin, cast 1 Pride of the Puffin
Set mood trigger: When I run low on Drescher's Annoying Noise, cast 1 Drescher's Annoying Noise
Set mood trigger: When I run low on Ur-Kel's Aria of Annoyance, cast 1 Ur-Kel's Aria of Annoyance
Set mood trigger: When I run low on Empathy, cast 1 Empathy of the Newt
Set mood trigger: When I run low on Singer's Faithful Ocelot, cast 1 Singer's Faithful Ocelot
You acquire an intrinsic: Spirit of Garlic
Spirit of Garlic was successfully cast.
Mood swing complete.
Mood swing complete.
questL11Worship = step1
ckb-Std: Clearing Hidden City
Maximizing...
1 combinations checked, best score 67.48
Maximizing...
1 combinations checked, best score 67.48
Maximizing...
2 combinations checked, best score 67.48
Maximizing...
1 combinations checked, best score 67.48
Maximizing...
1 combinations checked, best score 67.48
Maximizing...
2 combinations checked, best score 67.48
Putting on Bram's choker...
Equipment changed.
Maximizing...
2 combinations checked, best score 67.48
Putting GUC the Puck Man back into terrarium...
Taking Greedy guts the Slimeling out of terrarium...
Feeding Slimeling...
Cleared mood.
Set mood trigger: When I get Somewhat Poisoned, uneffect Somewhat Poisoned
Set mood trigger: When I get Hardly Poisoned at All, uneffect Hardly Poisoned at All
Set mood trigger: When I get A Little Bit Poisoned, uneffect A Little Bit Poisoned
Set mood trigger: When I get Really Quite Poisoned, uneffect Really Quite Poisoned
Set mood trigger: When I get Majorly Poisoned, uneffect Majorly Poisoned
Set mood trigger: When I run low on Leash of Linguini, cast 1 Leash of Linguini
Set mood trigger: When I run low on Springy Fusilli, cast 1 Springy Fusilli
Set mood trigger: When I run low on Fat Leon's Phat Loot Lyric, cast 1 Fat Leon's Phat Loot Lyric
Set mood trigger: When I run low on Polka of Plenty, cast 1 The Polka of Plenty
Set mood trigger: When I run low on Pride of the Puffin, cast 1 Pride of the Puffin
Set mood trigger: When I run low on Drescher's Annoying Noise, cast 1 Drescher's Annoying Noise
Set mood trigger: When I run low on Ur-Kel's Aria of Annoyance, cast 1 Ur-Kel's Aria of Annoyance
Set mood trigger: When I run low on Empathy, cast 1 Empathy of the Newt
Set mood trigger: When I run low on Singer's Faithful Ocelot, cast 1 Singer's Faithful Ocelot
Mood swing complete.
Set mood trigger: When I run low on Smooth Movements, cast 1 Smooth Movement
Set mood trigger: When I run low on The Sonata of Sneakiness, cast 1 The Sonata of Sneakiness
Set mood trigger: When I get Carlweather's Cantata of Confrontation, uneffect Carlweather's Cantata of Confrontation
Set mood trigger: When I run low on Fat Leon's Phat Loot Lyric, cast 1 Fat Leon's Phat Loot Lyric
Set mood trigger: When I run low on Peeled Eyeballs, use 1 Knob Goblin eyedrops
Set mood trigger: When I run low on Heavy Petting, use 1 Knob Goblin pet-buffing spray
Casting Smooth Movement 1 times...
You acquire an effect: Smooth Movements (10)
Smooth Movement was successfully cast.
Casting The Sonata of Sneakiness 1 times...
You acquire an effect: The Sonata of Sneakiness (10)
The Sonata of Sneakiness was successfully cast.
Purchasing Knob Goblin pet-buffing spray (1 @ 237)...
You spent 237 Meat
You acquire an item: Knob Goblin pet-buffing spray
Purchases complete.
Using 1 Knob Goblin pet-buffing spray...
You acquire an effect: Heavy Petting (10)
Finished using 1 Knob Goblin pet-buffing spray.
Purchasing Knob Goblin eyedrops (1 @ 190)...
You spent 190 Meat
You acquire an item: Knob Goblin eyedrops
Purchases complete.
Using 1 Knob Goblin eyedrops...
You acquire an effect: Peeled Eyeballs (10)
Finished using 1 Knob Goblin eyedrops.
Mood swing complete.

Visit to HiddenCity: The Hidden Park in progress...
You can't get to that area.
 
Last edited:

ckb

Minion
Staff member
A new issue: on day 2, having had no other issues in run I didn't have 3 clovers with which to clover for ores, and the script hangs if that's the case. I manually drew a Mine card to continue, and then had a similar issue where I got Temporary Amnesia, and the script hung when it couldn't be cured due to lack of a SGEEA.


I'm also getting baffling equipment/combat choices when going through the Black Forest. Despite being a TT, it's equipping me with a chef's hat, a saucepan and a meat shield, despite having better equipment and then in combat using the three lovebug skills and then Toss-ing every round, despite having much better skills available. This wouldn't be so bad, if it didn't abort in many fights due to reaching 20% hp.

Additionally, I got this issue when the script tried to open the Hidden City:
You can't get to that area.

Your clover problem makes no sense to me. The script should cheat mine day 2 automatically, so you only need 2 clovers day 2.
As for Temporary Amnesia... yea. That's a thing I have not fixed yet.

I am still working on optimizing gear and combat. It is hard to know what is "better". How would you define "better"? I like MP regen and meat drop, so the chef's hat, a saucepan and a meat shield seem decent to me.

I have no idea why you had a problem in the hidden city. Probably because you forced a cheat of a mine and maybe missed out cheat sheep, and did not have stone wool. That would be my guess.

I just ran a TT HC ascension. The script worked mostly great. 3/666 was my final count.
 

Valliant

Member
As far as clovers went, there were indeed two, but I was getting an error at the moment that it said "> ckb-Std: Clovering for Ores". Unfortunately, the error message isn't saved in the log. I'll see if it reoccurs. I'm not sure what was going on with cards on day 2, it didn't use them at all. I'll start noting all places that it stops at all; perhaps it's not recovering quite as well as it seems when I restart it and it goes on.

For a muscle class, especially when it's possible to hit an enemy, it's generally best to just hit them. Particularly in HC runs with the 15 prismatic damage, regular attacks are a good choice if Muscle is high enough to hit them properly. I'm not sure if it's generally possible to both run the ML needed to do 3 day runs and also regularly hit things, but if it's possible to buff Muscle for that, I'd generally consider that ideal. Even with the saucepan, Toss was doing 12 damage, and regular attacks were doing double that.

I just finished mine, at 3/790, with 6 adventures left. I'm honestly really pleased with your script, and look forward to getting more skills to manage it faster.

Edit: Oh, there's one other thing that I'm finding that's odd: the script isn't currently properly detecting obtaining Lady Spookyraven's finest gown. Each run, it's carried on in the bedroom until it finds a second elegant nightstand, and then stops there because it can't find the gown. in this run, the relevant section is:

Code:
Round 9: elegant animated nightstand takes 10 damage.
Round 9: ililili wins the fight!
After Battle: A love dragonfly buzzes softly in your ear.
After Battle: You gain 5 Sarcasm
After Battle: GUC coughs up a pixel.
You acquire an item: yellow pixel
After Battle: You gain 25 Strongness
After Battle: You gain 5 Enchantedness
After Battle: You gain 9 Cheek

[263] The Haunted Bedroom
Encounter: One Elegant Nightstand
Took choice 880/1: Lady Spookyraven's finest gown (once only)
choice.php?whichchoice=880&option=1&pwd
You acquire an item: Lady Spookyraven's finest gown

[263] The Haunted Bedroom
Encounter: Never Break the Chain
Took choice 328/1: Tame it
choice.php?whichchoice=328&option=1&pwd
You acquire turtlemail bits (5)

[263] The Haunted Bedroom
Encounter: Lights Out in the Bedroom
Took choice 897/1: Search for a light
choice.php?whichchoice=897&option=1&pwd
Encounter: Lights Out in the Bedroom
Took choice 897/3: Search a nearby nightstand
choice.php?whichchoice=897&option=3&pwd
Encounter: Lights Out in the Bedroom
Took choice 897/1: Check a nightstand on your left
choice.php?whichchoice=897&option=1&pwd

[263] The Haunted Bedroom
Encounter: elegant animated nightstand
Round 0: ililili wins initiative!
Round 1: ililili executes a macro!
Round 1: ililili casts SUMMON LOVE MOSQUITO!
Round 2: elegant animated nightstand takes 9 damage.
Round 2: You gain 9 hit points
Round 2: ililili casts SUMMON LOVE GNATS!
Round 3: GUC clamps onto your opponent's leg, which doesn't seem to actually hurt it, but is powerfully distracting.
Round 3: ililili casts SUMMON LOVE STINKBUG!
Round 4: elegant animated nightstand takes 10 damage.
Round 4: ililili casts TOSS!
Round 5: You pick up GUC and toss him at your opponent, dealing 12 damage. Go GUC!
Round 5: elegant animated nightstand takes 12 damage.
Round 5: elegant animated nightstand takes 11 damage.
Round 5: ililili casts TOSS!
Round 6: You pick up GUC and toss him at your opponent, dealing 12 damage. Go GUC!
Round 6: elegant animated nightstand takes 12 damage.
Round 6: elegant animated nightstand takes 10 damage.
Round 6: GUC clamps onto your opponent's leg, which doesn't seem to actually hurt it, but is powerfully distracting.
Round 6: ililili casts TOSS!
Round 7: You pick up GUC and toss him at your opponent, dealing 12 damage. Go GUC!
Round 7: elegant animated nightstand takes 12 damage.
Round 7: elegant animated nightstand takes 10 damage.
Round 7: Your opponent seems startled by the fact that you're accompanied by a creature that is a mouth and nothing else.
Round 7: ililili casts TOSS!
Round 8: You pick up GUC and toss him at your opponent, dealing 12 damage. Go GUC!
Round 8: elegant animated nightstand takes 12 damage.
Round 8: elegant animated nightstand takes 8 damage.
Round 8: Your opponent seems startled by the fact that you're accompanied by a creature that is a mouth and nothing else.
Round 8: ililili casts TOSS!
Round 9: You pick up GUC and toss him at your opponent, dealing 12 damage. Go GUC!
Round 9: elegant animated nightstand takes 12 damage.
Round 9: elegant animated nightstand takes 10 damage.
Round 9: ililili wins the fight!
After Battle: GUC barfs some chewed-up dots into your mouth, like a mother bird feeding her young.
After Battle: You gain 37 hit points
After Battle: You gain 30 Muscularity Points
After Battle: GUC stumbles on a pothole, and a pixel goes flying.
You acquire an item: yellow pixel
After Battle: You gain 17 Strongness
After Battle: You gain 12 Magicalness
After Battle: You gain 8 Cheek

Talking to Lady Spookyraven
Encounter: One Elegant Nightstand
> using: 1 old coin purse
Encounter: One Elegant Nightstand
Took choice 880/1: Lady Spookyraven's finest gown (once only)
choice.php?pwd&whichchoice=880&option=1

Whereupon it stopped.

Edit 2: As a HC SC on day 1, something is borked in my mood, as it's trying to keep 5 songs in my head.

Code:
Cleared mood.
Set mood trigger: When I get Somewhat Poisoned, uneffect Somewhat Poisoned
Set mood trigger: When I get Hardly Poisoned at All, uneffect Hardly Poisoned at All
Set mood trigger: When I get A Little Bit Poisoned, uneffect A Little Bit Poisoned
Set mood trigger: When I get Really Quite Poisoned, uneffect Really Quite Poisoned
Set mood trigger: When I get Majorly Poisoned, uneffect Majorly Poisoned
Set mood trigger: When I run low on Leash of Linguini, cast 1 Leash of Linguini
Set mood trigger: When I run low on Springy Fusilli, cast 1 Springy Fusilli
Set mood trigger: When I run low on Fat Leon's Phat Loot Lyric, cast 1 Fat Leon's Phat Loot Lyric
Set mood trigger: When I run low on The Magical Mojomuscular Melody, cast 1 The Magical Mojomuscular Melody
Set mood trigger: When I run low on Ur-Kel's Aria of Annoyance, cast 1 Ur-Kel's Aria of Annoyance
Set mood trigger: When I run low on Power Ballad of the Arrowsmith, cast 1 The Power Ballad of the Arrowsmith
Casting The Magical Mojomuscular Melody 1 times...
You acquire an effect: The Magical Mojomuscular Melody (10)
The Magical Mojomuscular Melody was successfully cast.
Mood swing complete.
Set mood trigger: When I run low on Smooth Movements, cast 1 Smooth Movement
Set mood trigger: When I run low on The Sonata of Sneakiness, cast 1 The Sonata of Sneakiness
Set mood trigger: When I get Carlweather's Cantata of Confrontation, uneffect Carlweather's Cantata of Confrontation
Set mood trigger: When I run low on Fat Leon's Phat Loot Lyric, cast 1 Fat Leon's Phat Loot Lyric
Casting The Sonata of Sneakiness 1 times...
Selected target has the maximum number of AT buffs already.
Mood failed to cast 1 The Sonata of Sneakiness: Selected target has the maximum number of AT buffs already.
KoLmafia declares world peace.
Mood swing complete.

It looks like at least for SC, there's 4 default songs in the mood (Urkel's, Mojo Melody, Power Ballad and Phat Loot), and then when Sonata is added, none of the previous ones are purged to make room. I haven't had this issue other than this run, but I think this is the first HC SC run I've done with your script.

EDIT 3: Ok, I've had the same issue regarding unlocking the city on a second run, but may have I found the issue. I had a login script that tries to acquire wads and use Rainbow Gravitation during my breakfast, and so in run it always stops there. I had it at the end of the order, so it never bothered me, but I think it may be interrupting your script's breakfast logic, specifically cheating the cards. I've deactivated it, and we'll see if that solves this issue.

EDIT 4: I'm also having an issue with the nun trick: the script will get it down to one fight remaining, but for some reason doesn't harvest the ice garden or make the sculpture to actually copy a bandit. Once it's gotten the area down to one fight remaining, it'll go on and finish the Battlefield without closing out the nuns.
 
Last edited:

ckb

Minion
Staff member
Mus class moods / gear: I made some tweaks to the script to improve this. I have a few ideas for better optimization, but it should fail less now.

Lady spookyraven gown: There is something weird in the bedroom with the way the choice advs happen immediately after combat. This requires more work, but it hard to debug because it only happens once per. I'll add this to the open bugs list.

unlocking hidden city and ice garden: If you have a login script, turn that off. If it is automatically running breakfast, then your Day 2 and Day 3 start stuff will never happen. I have never had this issue.
I may add a disable of more scripts if this is the case.
 
Top