#dev-general
1 messages · Page 474 of 1
I mean i, j, k and r are the actual names lol
also, what is the difference between Vec3 and Vec3i?
complex im guessing?
Doubles v int
ah I see
I wonder if it's worth having BlockPos and Vec3i in here
oh yea true just saw
I mean, Sponge has them in the new API iirc
Yeah those aren't in the obf maps unfortunately
https://github.com/SpongePowered/math ah there's where they get it from
Man this guy is lit https://www.youtube.com/watch?v=du_boiwX1yU, just finished all the encoding types I had to study in like 6 minutes
Easiest & fastest way to do Differential Manchester
*** Subscribe for more upcoming videos ***
Update: I'm dropping kotlin again for c++ 🥴
I learned the basics though so that's nice at least
🥴
🙏
I'm warning you from the start: you're probably gonna learn the non-suggested and discouraged aspects of it and you're gonna hate it and blame it on the language
Couldnt be haskell
surely having practices that are discouraged baked into the language is a bad sign?
Rooting all the way back from its origins? Unfortunately part of it is being C compliant
But if you're gonna use C++, use it how you're supposed to use it instead of not doing it and complain
I'll try and remember this once I get frustrated
I'm tired of this shit
What shit
People saying it's unsafe yet not using it how you're supposed to, how it's designed to be used, not following any kind of guidelines and blaming it on the language (there are official core guidelines that force you to use it safely)
If you're gonna complain at least use it how you're supposed to
Using C++ in a non-suggested and discouraged way and complaining about it is exactly like entering a chemistry lab and not using any kind of protection and blaming it on chemistry
@old wyvern any idea how i can "delegate" a ToJSON implementation? I have this ```hs
instance ToJSON HoverEventAction where
toJSON ShowText = toJSON "show_text" :: String
but it complains that ` Couldn't match type ‘[Char]’ with ‘Value’ Expected type: Value Actual type: String`
HoverEventAction is data HoverEventAction = ShowText | ShowItem | ShowEntity deriving (Show)
It's just fucking common sense, if you were to use more than 3 fucking brain cells then none of those things would happen
🥲
I'm actually mad
I'm scared kaliber idk if I'm making the right decision
hearing about c++ gives me the chills
go back to kotlin 🥲
What happened to Weeb Mitten?
OMG
Rust and Haskell are all you need
HES GONE
I got bribed
You got bored of anime?
Watch jujutsu kaisen or something
soldier is back 😌
I can't 😫 I wanna give unreal engine a shot and I'm not doing that blueprint bs so c++ it is
You don't go around running around with a knife with the blade on your scrotum and say that knives are unsafe
did he actually do it?
Yes
depends who u are
I'm Emily, nice to meet you
Sounds kinda hot
sad
nah im joking
Lol
but fr how could you use c++ "unsafely"?
Sell out
good
Worth it
He probably sold his soul for elara 🙄
soldier good trap pfp bad
You were all complaining so it was free nitro
I bet you would stop using Haskell for money!
Feel free to pay me and we can test
Just get into any course online, any classes in unis, they'll teach you old crap, they'll teach you C with classes, not C++
I will be changing the pfp back after a month btw 😁
YES
oh please do not
Nice
ill pay u another month
NO
trap pfp BAD
HE needs to be a WEEB
weeb mitten BAD
=remindme
Usage: =remindme <time> "<message>"
eg. =remindme in 5 hours "to feed the Llama"
YES!
ok i got question, my stupid armor stand doesn't know how to stand in the middle of a block, any clue on fixes?
no
=remindme in 1 month "to change the pfp back to hot anime femboy"
to change the pfp back to hot anime femboy
Less go
Thanks
😩 😩 😩 😩
why bm just why.
=remindme in 1 month "to gift brister mitten a month of nitro to keep him weeb free"
You need to be at least Tier V in order to set reminders!
WHAT
=remindme in 1 month "to remind odin to gift brister mitten a month of nitro to keep him weeb free"
to remind odin to gift brister mitten a month of nitro to keep him weeb free
Feel free to gift it now and I'll delay it for another month 🙂
🤣
cant
it doesn't work like that
do not use my own meme against me
weeb general 😩
ur mom
You'll need to use one of the value constructors I think
https://hackage.haskell.org/package/aeson-1.5.6.0/docs/Data-Aeson.html#t:Value
nop
You guys are unbelievable, there's no way you didn't like weeb mitten
i got problem with code but idk if anyone can fix
it spawns the armor stand into the next block
ToJson is supposed to return a Value
only 9000 xp to go until i get tier what ever is next.
ByteStrings might work as well I think, worth a shot
or actually that might just be what the String constructor of value takes
ah that worked ty!
lit
i just did ```hs
{-# LANGUAGE InstanceSigs #-}
toJSON :: HoverEventAction -> Value
toJSON ShowText = "show_text"
toJSON ShowItem = "show_item"
toJSON ShowEntity = "show_entity"
might be a bad idea but it looks pretty so
nice
wat
?
English
Thanks for clarifying
np
What would be a good way to have --flagName (optional value) and still be able to use args[n] commands?
@prisma wave why didn't you tell me kotlin was so easy to do this stuff??
Wut
i'm working out how to get a random location and it seems "easy"
val randomLocation = listOf(locations).random()?.take(1) that'll work, right? 
how do you guys work on multiple branches at the same time? Or is this not usual? xd
github branches I mean
oh wait
you can have local branches too can't you?
I forgot about that
Why take(1)? Random should already give you only one
it does
secret-cfg update:
What on earth
What type is locations
ok this is going worse than expected
val locations: List<Location>? = util.getLayerOfBlocks('as'.location, 5)
the ' things are ` things but it breaks discord
wtf
wrong ?
fun Location.getLayerOfBlocks(...)
Why are you naming your stuff so badly lol
is that an instantiated util class
because only i'd see it?
that whole thing is cursed
clearly not
Not an excuse, to the point that you are even using
`as`
Lol
Just name it armorStand
IJ is just suggesting it
I'm sorry, i'm new to kotlin
more often than not u wont have to use ``
matt is talking about using as which is a keyword, not the `
You do.
That's nothing of a Kotlin thing, ij isn't suggesting you use that, it's giving you an error because as is a Kotlin keyword
Name your variables things that make sense and describe what they are
You're new to variables?
I've not done it the kotlin way.
Wait really? Lol, I thought is kt's way to escape keywords
It's the exact same
Yes it is
https://i.imgur.com/E4uGUR9.png this is fine?
It's a way to name things that are considered illegal, in that case you'd get an error if you tried naming it as
Much better naming
Okie
use apply instead of repeating those
why the hell can the equipment be null
armorStand.equipment?.apply {
chestPlate = ...
leggings = ....
boots = ....
...
}
?
bukkit, emilly, that's why
you can do that yugi?
holy fuck, kotlin is cool
Wait till you start using haskell, shit gets real better 😏
Sure
am i the only one who will put the order of equipment setting in the code how it is on the player?
like helmet at top, then chestplate then leggings then boots?
doubt
u can still put setItem in the apply
with function if it wasnt null too 🙂
=arrowcode
that is a thing of beauty emily
?arrow-code
that hurts.
?main
https://minecraft.fandom.com/wiki/Potion/Before_1.9#Item_data can somebody help me with the bits part? Never been a fan of these
Opinions?
where is this masterpiece from?
Ouch
well craftbukkit of course
lmao
Cant just check, for example, if the entity type is an instance of Ghats, instead of the 5 checks?
¯_(ツ)_/¯
I love how it says "Order is *EXTREMELY* important -- keep it right! =D" in all that clusterfuck
actually I want to see the git blame for this
:))
Forget tree data structures, lets write actual trees in code!!!!
Hey
n0
Some dude named "Erik Broes" for the most part
"Nathan Adams".. oh Dinnerbone why
Link
https://hub.spigotmc.org/stash/projects/SPIGOT/repos/craftbukkit/browse/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java#188-389
click the "blame" button on the top right
MBAX
NOOO
yeah, with the repackaging to the official mappings
https://hub.spigotmc.org/stash/projects/SPIGOT/repos/craftbukkit/diff/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java?until=90d6905b1587ac1c5c075e2da471f77d00e0f50d
wait what
Thats written by dinnerbone??
parts of it yes
Someone fire that man please
he was part of the original bukkit team, that's what got him in mojang lol
Really? I thought he was already a part of it
"professional" developers
Said nobody ever about minecraft
dev role when
again?
mojang rn
i havent applied ever
oh?
Do it kali
so much pressure 🥶
pressure good
im sure if i write a haskell program ill scare the reviewer, making them accept me instantly
im sure thats my problem
Do it
hey gaby wheres ur role
Unleash the VB @onyx loom
oh god
"Free getters, setters, tostring, equals, hashcode"
rn?
ye
Ouch ..
idk
Pig was rude and didnt wanted to accept me :( but is ok, will try to reapply when guihelper is done xd
I got some hot ideas for that bad boy
u been working hard on it recently i see
it feels like ur first plugin update in forever 😔
That discord makes you lose brain cells
Link @steel heart
clearly they've never heard of deriving (Eq, Show, Hashable)
Also, change your name.
Whats the lomvokfaq?
?plsnolombok
Why is Lombok bad?
- It's a compiler hack - the Java compiler isn't designed to modify code, so it can cause difficult to debug errors, or worse
- It requires an IDE plugin, so unless you've properly configured Maven, Gradle and your IDE, you'll get hundreds of compilation errors. This process takes time too, it's not easy
- Lombok'd code won't show in Javadocs
- The code generation is often unpredictable and difficult to debug, and often you'll have to do it "the hard way" anyway
- Java is supposed to be explicit, Lombok hides a lot of key functionality into a subtle annotation which can be easy to miss
- While IDEs support it with a plugin, it's usually more difficult to find specific things, like usages of a getter because they don't exist in the source code
- Finally, Lombok'd bytecode doesn't match the source code, so it causes a pretty annoying warning in IntelliJ
I agree that the boilerplate is annoying but lombok is not a substitute
kotlin is 
Well yea, if you REALLY want to get ride of the getters and setters then use kotlin, not fucking lombok
Let's make a boilerplate free Java, with blackjack and hookers
You really like those two, dont you? :))
Ofc
Help
@old wyvern https://x0.at/L_b.png pls help
Couldn't match expected type ‘Value’ with actual type ‘T.Text’
HexString {value :: T.Text }
ofc
Man that looks so bad
probably because it doesn't work
rg.bukkit.plugin.UnknownDependencyException: Unknown dependency KBukkit. Please download and install KBukkit to run this plugin.
how?
im pretty sure i used lombok in one of my plugins
yes you have
tf is that
suislide?
Ticket for 2?
make it 3
make that 3
lol
I think records killed md5
the existence of java above 8 killed md5
yeah lol
ok i have a serious question here
It's more like he is killing himself lol
he just shut lol
im going to redo an old plugin that uses Lombok
part of it has a public API
this api is literally all interfaces
toJSON (HexString hex) = String (T.cons '#' hex) I fixed it 😄
Wait, md wants to add lombok to spigot or was just a general discussion?
general discussion
Oh thank god
Bungee
if he does that paper is gonna hard fork so goddamn hard
Spigot.quality -= Long.MAX_VALUE
use the Value constructor
Ik ik
uh
md_5
can paper just hard fork already
lombok
Proxi said the earliest it could happen was on 1.17 release
Data constructor not in scope: Value :: T.Text -> Value
Lombok in haskell!!
what do i do?
😡
What does that mean?
theyll stop updating upstream
md_5 has attacked haskell!!! All forces unite!!!!
yeah they wouldn't rely on spigot anymore
🥲
it's here
in essence: paper would become its own bukkit impl
Thats a wonderful idea!
good
md_5 must be stopped
at all costs
^
@old wyvern invited you to hrypton
Ayy
NO
bruh
Anyway, gn
I see that you’re scared of impurity
Have exams tmr
gn
impurity in haskell? impossible
😐
absolutely not
Then I shall make jrypton
skrypton when
its a good thing and a bad thing
for plugins
Fer·nan·do Pó·ov
😌
what does that mean
Fer·nan·do Pó·ov
it doesn't have a meaning
Fer·nan·do Pó·ov
Fer·nan·do Pó·ov
Fer·nan·do Pó·ov
😌
F
Esctasy
:)
WHAT
what happened to the guy anyway
Fer·nan·do Pó·ov
He has taken residence in the dkim den
A foul hovel
oh my
Speaking of which, I haven't seen Dkim today
impressive
Did he die?
Does relocation affect resources or only class and package definitions? 
Only classes and packages i think
Hey, does anyone know how to reference a config variable with multiple string lines?
- "Line one!"
- "Line two!"
- "Line three!"```
config.getStringList
Any idea when were potion ids removed
1.13 I think?
I believe all "magic numbers"/numeric IDs were removed in 1.13
Maybe for some things they were migrated before, they have been planning that for years, but 1.13 was the ultimatum definitely
Found it, 1.9
Who the fuck thought that a numeric system is better than what is used now smh

yes now hand me that lib
Ok
😐 😐 😐
im a poor man wanting to make like $100 online
so far i have $17
i am mid way making a plugin for my smp
do you think it would be something people would buy
it takes stats for players and server
@onyx loom i see no Kalibear
and puts them on a webserver json
here is a pic from a few days ago
still wip
ok nvm
no pics
You won't be able to upload images here directly to avoid spam, so please use https://imgur.com/ to upload images/screenshots.
You can also use a screenshot service like gyazo or jinx and post those links here.
but it's a json api
shut it you
uh
👋
Only took 4 extra days.
oof
How can you send stickers? There is no stickers tab on Desktop and Mobile for me
uh okay thank you
i used to have stickers
nope
either that or put code in console || idk if its against tos but if it is plz no ban 🙂 ||
:/ intellij is recently being extremely slow
showing a million of the no memory warnings
it wasn't this slow before
before it would usually respond relatively quickly with
- no servers running
- one mc instance running, not in a server
- one project open
now, it's literally not doing anything
it's been loading for at least like 5-10 minutes ;-;
Got to love when people leave a 1 star review with an error but don't contact you to resolve the error -.-
I've had that :)
Was the first review on my plugin, so I felt real upset about it
I don't even get the error they posted... So....
They managed to make an error you can't reproduce? Classic.
Oh, I had someone do that, reported the comment to spigot saying they didn't even attempt to join the support discord to get help and the review was removed
Maybe I should do the same
Worth a try, just put in the box they didn't attempt to contact you and directly put a 1 star review and they'll hopefully remove it
YEah
You use the same format in each of your update messages
Hey everyone,
<update message>
Thanks,
OmegaWeaponDev
:p
😛
how much ram
@half harness it didn't reply so ping
Hey @lost forge check the reviews ;)
Haha thanks 😛
No problem, just trying to help out a bit :) the plugin looks real cool by the way! 🔥
Gotta love those NPE dump reviews lmao
Yep haha. Specially ones that can't be reproduced
Matt, your pfp seems hungry. He's been eating ever since I first seen him.
Tbh I am hungry, i should go get a kitkat
lol
Grab one for us as well while you're at it
Sure thing, it's one of those that comes with 3 in the package
3??
3??
I need to see this lol
That's huge tf. Its the size of a pillow??
They are normal kitkat sized lol
I mean 1 at a time
Then it goes back in the fridge?
Depends on how hungry i am
Hand reveal???
There has been like 5 or 6 pics of my hand around here xD

You can easily find a picture of me on my twitter
He just had to flex his engagement ring.
If it was known that is, lol.
And the kitkats 😎
Easy to find if you know what to search for
Is it just me who barely posts any pictures of themselves only?
Matt do you bite your nails?
yes
noticeable lol
Stress habit
Same :(
I wanna break it but I can't
Idk if it's a good thing or a bad thing that my face doesn't exist online
lol
Yep I don't exist anywhere online face wise. That's good I guess.
Not trying to sound rude but.. why does that matter
Privacy?
Privacy in 2021 kek
yeah lol
Alot of people don't really like their face to be found due to privacy.
Not quite what I meant but I don't really have the words to form the question I'm trying to say
Google probably knows exactly who you are, what you do, what you like, where you live, knowing your face or not won't change much lmao
I mean, Google can know but legally they have to keep that confidential
I'm sure they do 
A average human is worth $0.0005 to Google so
Aight kitkat break done, back to slimjar
Did you only have 1?
Yes
It'd probably melt
I mean, it's cold enough here for it to freeze.
Best candy
Trimmed fingernails 
double ping ;-;
also, 8gb ram machine, i allocate 1.5gb of ram to intellij, but intellij still uses about 3gb ram :p
okay but where can i find this ;o
like a .jar for that haha
ah
You have to compile it by yourself if you want the jar
That shouldnt be an issue.
Do you know how to compile the code in maven
Currently only supports windows and Mac but I’m working to support Linux
lemme check if i still have maven installed one sec. Did a computer wipe cant remember if i reinstalled.
Ok
gradle wrapper 😌
Yep still have maven installed!
@half harness About what you said in development
If you see any big Kotlin lib you'll realize they work in explicit mode, so you'll see public fun, which isn't that much different than public void
Its been a while though since ive used maven.
Click on the parent module
does explicit mode require : Unit? 👀
Then run ‘mvn clean package’
clean 🤡
I don't think so
phew
Well in my eyes it just clears the binaries
what's so bad about an explicit return type @half harness
Mvn package will generate them if they aren’t existent, but if they are there it uses those
less text 🙂
....
don't the official conventions/guidelines require explicit type for fields?
I remember Bardy saying that
aaaaaaaaaaaaaaaaaaaaaaaaaa
You can also compare
public val someVariable = "a"
To
public var something = "a";
Anything above 10 iirc
ooo thats cool
The egg cracked in 10
there's a caveat tho
you can only use them inside runnable code blocks 🤡 not in fields, exceptions or parameters
so lombok var good
jk
It's a step in the right direction though
I mean I'd rather use var than having to type
final Function<CommandTree<CommandSender>, CommandExecutionCoordinator<CommandSender>> executionCoordinatorFunction = AsynchronousCommandExecutionCoordinator.<CommandSender>newBuilder().build();
fucking cloud
Lmao
There are still use cases for when you should definitely use !! instead of ?.
Like when that nullable case is actually an unexpected state provided by some framework, failingfast is the best to detect errors rather than providing defaults
Using ?. in these places cost me a few days of debugging in a few projects
There are ofc alternatives that can also provide a message, either works
Larry Wall: 5 Programming Languages Everyone Should Know |
New videos DAILY: https://bigth.ink/youtube
Join Big Think Edge for exclusive videos: https://bigth.ink/Edge
Programmer Larry Page offers language suggestions to amateur programmers who might not know exa...
Haskell!!
What a beautiful mustache
Sounds boring
YES 😌 😌 😌 😌
Does pass by value mean that like a copy is passed as a param? So if the method edits the param it wont edit the original var?
Yes
and pass by reference just passes the memory address?
so if its edited the original will be edited
Pretty much
Yo, im a dev and i purchased the Guilds plugin, I wanted to know if you could send the src code so i can see how you made this plugin
Its a very useful plugin for me and my friends!
It's open source lol
Decompile it 🤡
you're joking bm

I wish BM would just contribute to the real Krypton
but I guess it’s finally time to find a new core team member
He turned to the dark side sadly
not even sure if I can remove his ownership role or not
Rip
finding a decent replacement will be difficult though I think
just realized I have like a 5 days gap between my first and second exam for some weird reason
xD
Hrypton is an abomination
yes! Kotlin deserves to die

@prisma wave https://tenor.com/bbEm5.gif
😌
just not true
🥲
Use a good language and I'll contribute 🙂
Angular
woah is that in defence of him saying kotlin bad or just the fact that hes not contributing? 🥲
Hi kaliber
To what
Abow Conclure
No I sold my name
fed up with him doing fuck all for the past months, and now he rips off the name and the about
with some project written in a “better language”
maybe it is a better language
Ok now I changed
not good
conclure I swear
😦
no impersonating mr conclure
I will find you
Ok I will change
just reset your nick
^

what’s wrong with the name conclure anyway?
With all respect, my current name isn’t an impersonation
sus
Source?
Me, and everyone except Haskell users
So I need flags and position arguments for commands (minecraft), would be a bad idea to use something like this? https://commons.apache.org/proper/commons-cli/ xD
Bm
Do you have any plan laid out on what all needs to be implemented?
Any sort of reference, Im free for almost this whole week, so might contribute
So you're implying that you're a haskell user? Another member 😌
Everything
Atm I just want to get the server list ping working though
Then we can decide if we actually want to take this further
wiki.vg ofc for packet details
Alrighty
Why ij gotta act so weird ... https://i.imgur.com/Gd7yM94.png
Kotlin bad
Because ij has a mind of it's own most of the time
😭 😭 😭
Also, I have used this task and now all my commits are fucked up 🤣 https://i.imgur.com/BCJAr4E.png
L
Nice bg
😄
Reminds me of Steve Jobs
Krypton bad Hrypton good
haskell bad
gut feeling
All programming languages are bad in their own way
except haskell
Including Haskell
please back up ur claim
Especially haskell is what you meant
False claim
Thoughts? xd
Yes that should be fine gab
aight, now only if I could get this stupid ide to work 🙄
Dud staph
Kinda asked for it though
Facts
Objective facts
Also, gonna press X on you even managing to allow clients to see something in the world
You couldn't do it with MineKraft so I doubt you'll do it here
Sheesh, weather do be nice af
i agree
apparently u can make an executable in java too
but the answer ur probably looking for is c++ or smth
Rider? i think
if u have jetbrains student thing
ah no CLion is the jetbrains IDE for c++
Jesus Kali
but u can always use visual studio / vsc ig
Today was amazing, like 10+ in the morning so all I needed was a hoodie, and it's a bit windy rn so it's not too hot
Bitwise operator
Oh didn't see it wasn't java eee
out stream
why c++ PepeHands
wat
you can make executables with literally any language
also "making executables" isn't really specific
whats that
you want to make this for mobile or what
Don't see the point of using c++ for that
so much effort especially without an engine
You can make a game like this in anything
Please say you're gonna use java, I want to see you want to commit sudoku when you're making the graphics
maybe you'll have fun with godot
i can feel the rain starting rn 😩
WRONG
i will ban you
Bet
thx for bringing back soldier tho
you're welcome
I'd like to see you try
HASKELL
and F#
you cannot.
trolling
Efe depends
neither
That is non-compliance C++ 🤡
Embarrassing
That is C++ified C
"C with classes"
Not even
also, why did efe select java syntax highlighting for c++ lol
It's just C with cout instead of printf and new instead of malloc lol
how would YOU write that then
Literally missing half of the program lol
Well firstly you make a new .hs file
bm has a point here
lol
When do I not?
🌚
Fer·nan·do Pó·ov
data class
``` 😌
what does @Data do, i forgot
but data class has a copy(params here) method
🤢
kotlin properties 
data
``` :relieved: :relieved:
any news about 1.17?
Custom block types or smtng with resource packs
what?
example?
data Config = Config
{ ip :: String,
port :: Int }
Might have messed up the formatting but
why
data class Config(ip: String, port: Int)
``` 😌
classes 🤣 🤣
oh god this is actually a real thing
I thought it was a joke
what the fuck is this formatting
.
.
Agree
"Delete repository"
hrypton doesn't have bardy on the team :p
what
What formatting
🤣 its haskell
::
🤢
I will not tolerate this slander
Yeah Horstmann is awful
can your language automatically generate implementations of "interfaces"? No.
Does your language have native algebraic data types? Not really
Also, imagine not having access to Adventure smh
imagine needing adventure 🤣
Imagine trying to make a full server implementation in a trash language like Haskell 🤣
Skript
Imagine having to keep switching languages because you're too lazy to finish a project 🤡
Aww, you can infer variable types? That's cute
Nice awful brace style you got there
even md_5, who's known for his up-to-date practices (including using modern tools such as netbeans and maven), says haskell bad
haskell 🤣

Y'all don't have lives
How
well
only 5 mill?
we're at 4.3 mil rn
that's rookie numbers.
and at a rate of 7k messages per day
We need to get 10mill.
~100 days till 5 mil
Great milestone
message #1
we have more messages than most servers odin 😦
message #2
hi mitten
=flex?
A paragon of wisdom
how do u get message amount
Oh my bad
rectangle
triangle
it's rectangles...
Circle
it's an edged circle
Mention one good thing about Haskell Alex
paragon
/ˈparəɡ(ə)n/
Learn to pronounce
noun
a person or thing regarded as a perfect example of a particular quality.
Everything
Hipster - Mitten?
ok so
Elaborate on everything
you ok there piggy
About to get on the bus
why
😂
he can't be going to school because he'll be late
Going back
there's nowhere to go on his plankton sized island
home time baby
You going home already? Jesus
usually it's 8-3 but my computer science lesson was cancelled so
ur classes go for 3 hours?
uh
This is my timetable today but CS was cancelled so home early 😎
1.44 to 1.36
Weird times
ur class goes backwards in time
yeah thats what i was thinking