How to Create a Scientific Calculator in C# - Full Tutorial

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hi guys and welcome to Scientific Calculator developing using C sharp these tutorial is actually at a request of one of my viewers out there so I'm going to click on file select standard there we go I'm going to clear let's say backspace there we go and let's say 85 divided by 13 there now we can multiply that by 9. plus minus multiplied by 78 there we go Claire let's go into the scientific mode 96 binary Claire okay and we can let's say we have 66. okay that is in decimal hexadecimal Hotel binary let's play that and so on guys so what I'm going to do now is I'm going to take you guys straight into C sharp development environment and we put one of these together so let's do that now guys hi and welcome to c-sharp Scientific Calculator I'm going to start by clicking on create new and now make sure you select C sharp I will click on next and I'm going to give that a name I just call it CS there we go so I'm going to be saving that straight into my resources okay that's fine click on Save correct okay my development environment is ready select toolbox and let's scroll right up there I need buttons there we go we have a button there and I'm also going to double click on text box there so now I have a button and a text box on board so as for the text box I am going to just extend it that much and I will do and come right here let's change the a small triangle they are wrecked our triangle to multi-line and you can just select it that much since it's going to be a scientific calculator I'm going to drag this down a little bit there we go now as for the button move it down just about that okay now I am going to just try this out let's see if I can arrange I want you to be four by four so let's go for yeah that's four by four yeah that's about right so that's cool so let's select the whole component together and go straight to the properties I will just change the font of that properties to something much more readable now make that bold come right down here and just change the size to about let's go 4 16. there we go there we go now let's come back in here just adjust that that much that's good select the buttons hold on to your control click and drag we now have two we have eight okay we have 16. all right let's try this down it's going to be four by five okay that'll be 20. all right 20 buttons so far that's good now let me check how these the size of these because I'm going to have to yeah okay first of all let's go back up here you see all before that let's take care of the buttons so this one is going to be called BTN btn7 that's fine btn7 so that's my very first button there and the data in there is going to be seven so let's come in here just enter seven there we go once you enter seven in one of the button text box you can just click on the others and just press eight nine Plus subtract that will be six five four one two three make the multiplication division equals here and here will be decimal and here we enter 0 there so that's our easy it is for us to just take care of the buttons interface there we go now this is going to be btn8 and this btn9 BTN art in here BTN sub btn6 BTN 5. btn4 I'm gonna complete that because of my new beginner as this is a request tutorial so that's BTM one btn2 here btn3 BT and multiply just call that mod BTN divide busy and equals GN we can call that dot org yeah dots that's we do and this one is BTN 0. there we go any text box that very text box let's enter a value in there I'm going to enter 0 as the default value see where we have the Align I'm going to get that aligned right there and just change the name of that one to cxt result there we go that will display the results all right that is fine now you see these two buttons this one is going to be backspace why this one is going to be plus minus and to get those two icon I'm going to go straight into word let's open up Word documents and select insert inside instance you can also look for this online just click on that unless in here let's type in wing and that should take us to windings there we go now the backspace is somewhere there that is it that's the one I intend to use and we also have the plus plus minus so close that I'm gonna copy the backspace and the plus minus I will always delete one here we have the plus minus paste that in there and get rid of this backspace there we have block plus minus here and here let's just enter the backspace there but we then have to change the font size of it we need to change the font style to you know the fonts okay let's change it to winding there we go that's it right there we go that's the backspace so I also need to give that about specific name that's going to be BTN BS backspace and this is BTN Clerk there and the next one I'm going to just call that BTN clear there we go and here that's going to be BTN PM plus minus that they all have a name now so let's double click on the form and go straight into the okay the code View and right here I'm going to declare the following variable so let's talk about so I'm going to just say double and the first one will be to enter enter first value okay that's for interface value the second one is going to be into our second value there we go oh let's accept that that's good the info text there we go that's fine enter second value now I'm also going to declare another one that is going to be string character so let's say string I just call that op that would be for my operator so I will declare just these three variable for now now let's come in here see all of these numeric buttons I'm going to select them all including the decimal button okay and I will now come straight here to the event and you see where we have click I'm going to enter a name for that so I can just call that maybe enter numbers there press enter and that is my code or procedural area for all of those buttons okay right inside is procedure area for the event that I've just created so I'm going to first for declare or create an object I'm going to call it number now it's the object equals let's say button button object that will be equals sender all right so what I'm saying there is whatever is in here is sent straight to the button so I would then use as follows let's say if txt result that would be dot text equals equals the value zero that I have in there so when I say equals equals I'm actually comparing whatever I have in here to what I have on the text box so I'm going to enter curly braces in there and then I will enter as follows using another if statement if number the text if it's equals equals now I want to compare what's going to be in there if it's equals equals decimal point or decimal place then I would then say using another if statements it's more or less likely nested Eaves if not txt result before if it doesn't if the text does not contain the decimal place then we want the following I want txc display to be equal to XD display so txt result equals txt result and that is going to be plus whatever we have inside [Music] number this txt this number 30 XT space that in there and there we go so that should take care of the decimal down we then need to compare else else if he does not we didn't use the decimal place and we keep clicking on the button we just want it to give me as follows so I'm going to grab a whole of all of this whatever value we have on the text box just enter idea remember this this number actually represents all the value we have on the buttons now before I run it because I what I'm saying here if it has the value of zero it should I should enter a true clay first before we can enter something else so I'm going to come in here and just paste that in there and I'll just clear that if we don't create the system will only just give us zero and whatever value we select so let's save and run and we'll see how that's going to work now we enter nine you see five let's see there we go try the decimal again and we can enter as many values once so that takes care of all the numeric patterns so have a good look at those lines of codes it's good now let's take care of the operators let's select these and I'm going to click on the properties and also use event for them make sure you click on the event that's it right here and you can just call that number operators so that's fine press enter there okay with the number operator first of all I'm going to create an object in there so I can just copy this little one as well let's let's come in and paste it right there now underneath here I'm going to say enter Face Value the very first value whatever you enter that would be let's convert that to double and just accept that press enter now at the same time we also need to clear the operator so I'm going to say you know we need to say operator will be equals whatever we have inside number dot text there we go and we then need to clear text box itself paste that in there clear the value whatever we have in there so these lines should take care of the equality operators now that that is taking care of let's take care of the equals double click on equals now inside the equals I'm going to first of all let's say enter second value and the second value that will be equals we need to actually convert that okay so that has to be converted to double because whatever we have inside the text box is in string characters so I'm going to accept this data given to me by the info text so accept that okay then convert that to double now to make life easy I'm going to be using switch statement instead of if statement that's a switch and what administration from that would be the operator can't quite the braces in there so the very first case that would be plus sign enter column in there and you have to break that as well just enter something column now that is for my first operator I'm going to have about three four operators in there it's going to be more than that and anyway but let's just copy and paste this is my if you change this one to subtract and I need two more copy all of this and paste that in there that will be for the multiplication and the last one here I'm going to make that division right looking good okay and that is it let's enter default as well default and we just enter breaking the there we go now let's come to the very first case so that would be that's a txt result the text and that is going to be equals let's say the first interface number this one here first number I will subtract that from SEC oh no we add that to second number release now subtract because this is addition there we go and I'll take care of the first one so I'm going to copy this without coming to subtract just paste that in there change this to subtract then we have multiplication change now to multiplication and here change that to division and that will take care of my equal sign and to enter more values into more operators into the system okay let's try this out I'm going to save that and just run it let's see okay let's select whatever minus two there let's multiply that by eight enter decimal and get that divided by 23. there we go all right that is fine work it as we want okay now let's take care of this one two I'm going to double click on this all we just need to do is just to change the value to zero clay becomes zero there we go there now let's take care of clear entry so in case of clear intro we just want to clear whatever value the last value added so I'm going to copy this first four and let's paste that in here and we just say oh let's declare string character string variable in there get that right and that will be equals let's say is f for first number s for second value that is added there we go so I'm going to then say F that'll be equals let's get that converted now we convert dot to string whatever we have inside entry first entry devil and we're going to repeat the same thing for the second entry so copy that and just enter s in there so that would be enter second value and that is done so we now need to clear boots let's say F that would be equals clay s down to be equals clay hey that should take care of clear entry okay let's try that out so click on run and I am going to just say I said 9 multiplied by 2 oh no I don't want to I changed my mind there we go let's say multiply by eight damn that's it that's how the clear entry works that is that okay so that is fine let's take care of the plus minus double click on the plus minus the case of the plus minus let's just create call it double and then I'll call it q that will be equals let's convert whatever we have inside the text box set that and I'm now going to say txt result txt result dot text we then need to convert that to string so let's convert this framework I'm going to grab a whole of all of these here and just paste that in here and we need to enter whatever we want to convert that is going to be no we want to add one minus one to it so I'm going to say minus one multiply that by Q so that should actually that should be in here there's one minus one there and that should take care of my plus minus they said that run and let's see what's going to happen let's say eight minus multiply that by five that should be minus 40 that is correct very good so finally let's take care of the backspace double click on backspace with the backspace I'm just going to let's grab all of this username statement there let's say if txt result DOT test dot length that is greater than zero then I want as follows txt text box equals txt results not text box txt result that will be let's say dot remove yeah and whatever will be moving this inside the textbook dot length minus one there is already giving me an idea of what to enter that is good however let's assume when I finish clicking zero but before that let's see currently what I'm talking about now ah let's say we have some values in there backspace you see it's all nothing in there now so I will officially like you to default back to zero so in that case I'm going to use an if statement so let's grab hold of all of these and we just change things around let's paste that right underneath here so if this equals nothing in that case this should become zero there we go that is it that should take care of that okay that should take care of that dog that you saw earlier so let's run there we go look at that so backspace that becomes zero okay backspace zero that's good now very good backspace that is brilliant okay now you see this is how my this I should call that the standard calculator now let's add here come let's come right here select the toolbox and I'll need menu make sure the form is selected come right down here I need the menu let's go to m there we go menu strip double click on the menu strip look at it the main strip is right there so I'm going to click in there and enter the very first menu that is five then in here this is standard and that calculator and the next one here we just called the scientific and okay and underneath here you can just enter exit if you want okay all right you see officially when I run this system what I want is I want it to actually default to this size let's say this is the let's check out this size first where is it let's go to the properties inside the property the form for now the size of the phone is that is the size of the phone the width eighth under 16. so what I want it to be a little bit smaller so I'm going to double click on the form itself formula let's say this dots the width and that to be equals that is the default so let me change it to about 400 plus and enter semicolon so this is the original size okay I also need to make sure the text box itself the value of the text boxes in order that's three that's 300 plus so we can just say text box so India I'm going to say txe results with and that is going to be equals this size there we go so when I run it now look at how it's looking now but when I run it we should be able to just have a there we go that's how it's looking I think this seems to be a little bit too wide something like this you do yeah something like that should do so let's cropped it a little bit come back in here and just maybe make that 200 plus two is it 290 I don't know just trying that out so run let's see how tonight is going to look like oh no that's wrong this was on doing whatever I've just done so this should actually be 3 90. now run let's see hmm see too large 320 run okay let's see oh I was almost there maybe 360. there we go run one more time there we go look at that now supposing we want to I'm gonna copy this let's come in here you see the form double click on the standard paste that for standard and now double click on the scientific paste that for scientific in the case of scientific let's just add this so what let's say this become that and this would be 600 and this is six now six three there we go now let's run and see run okay it's coming up scientific check that out guys I think we have to reduce this maybe something like this and back to standard brilliant scientific understand that okay that's good now let's take care of this the exits I will come in here uh drop that down double click on that and first of all I'm just gonna say dialogue results equals let's just call that exits calculator now exit calculator that will be equals let's say message box dot show and in here I'm going to now let's enter bracket confirm if you one two exit now that would be my first argument comma the second argument will just be let's just call this cyan scientific calculator that's going to be the title and the third argument that's going to be message box button dot yes or no comma the fourth argument is going to be message box icon so the icon I'm going to use question mark there we go now let's use an if statement if exit calc equals download result the info test has already told us what to write so I'm going to accept that and in that case that's going to just be application application.exit and set that as well that is it that takes care of the exit lines of codes there of course you can always write just application.exit I just feel that's not professional enough so let's run and see how that's going to work as well exit there we go no exit yes [Music] okay so that is fine I want to change this to about 600 plus for that six 690 that's for the scientific run let's just see how that's going to look like then we can just that's fine okay so I'm going to exit out yes and let's come right in here so what we want to do is either copy this and just drag it that much I only need four of those so let's go into the properties so that I intend to change the name yeah get rid of that for now that is going to be Pi so before I do that I'm going to come in here let's change okay let's just copy this across before I carry out any other changes okay that's fine there we go just one more just one more there we go all right select it all and leave a bit of room right okay if I run it now let's click on run and see how that's going to look like let's see there we go and let's go to Scientific day okay as you can see I'm gonna need more more room here all right or maybe just even if I reduce it I'm still gonna need a little bit of more room and yeah let's drag this all the way and see how let me check that out here so that is going to be six 65 okay that's good 665 and this let's come right here and the form the size of the form seven one five okay let's double click on that and now we need we need a scientific double click on scientific and this is going to be 715. why this is going to be 665. there we go so let's run it one more time and see there we go so let's go for scientific that's good I'm about to day that's fine now let's continue with the development of the interface now here I'm going to change that to Pi so maybe if we go into word okay let's go into word now and I'm going to go into inserts symbol I need thank tool let's just type in Center in there press enter there we go the center inside Center I need the pi symbol and there we go that is the pi symbol there so just click on that and you can get all of that close that I'm going to copy this Center the pi I mean now let's come back in here select the properties and let's come right in here and just enter the pi symbol but I do need to change this to Center look at how it's looking so let's come in to the front and just change that to Center we'll go there we go look at this it's really Pi symbol so that's fine so we've got that sorted so I'm just going to give that the name I'm going to call it BTN pi there we go all right the next one that's again I'm going to call that uh BTN log so so that's full login redeem copy that and change the value I need to log and this is going to be let's say this is square okay let's go for sine H here and I'll give them a name later on and this is going to be signed that's doing a decimal um or stage you have calls here we have binary and um extra decimal timing tangent h exponential modulus octaves and we can make this percent in x okay okay the next one is to enter X exponential to here and exponential three here so I'm going to select this first and let's come in here I'm going to type X then I will hold on to the shift key and I'll press on the number part I'll enter 0 1 7 8. release that should give me X exponential two and I'm going to repeat the same thing I think maybe this might be too large maybe I should use a lowercase x in here let's see lowercase x yeah lowercase x is more pronounced now the next one is going to be lowercase x hold on to the alt and press zero one seven nine that is on the number pad release and that should give me there we go so that is fine okay to do that let me just show you guys the instruction again I'm going to open up word so that you see it so right there that is that would be equals two so so what's happening in there is going to be you enter X hold on to your ALT key and just type in zero one seven eight there we go so that is that and the next one let's increase the font size so that you guys can see what's happening in here let's make it about 36 can you see that that will give you X exponential Two and A and if you change this to box nine changes tonight that should give you x lowercase hold on to the ALT key and that will be zero one seven nine there so that should give you the okay that will give you X exponential three so that is it that's how to enter it on your buttons so minimize that now here okay and finally it is very one I'm just gonna make that uh let's see that's meant to be one over X so you can always research how that one is done okay that's it so all right let's start with our codes so I'm going to start with the Pi double click on Pi in the case of Pi that is simple let's just copy this paste it right here so I'm going to say dot text and that will be equals the following so which that should be three points four one four five nine two six five three five eight double nine seven six three two three so now we do so that's my pie so if I run it now there we go and I'm going to go to my scientific to check out Pi there we go look at that that's pi you can't multiply that by whatever there we go all right that's fine now let's take care of the logarithm double click on that in the case of logarithm I'm going to first of all let's say create a local variable that would be I'm just going to call that log that would be equals let's convert whatever we have in there to double we just say convert convert that to double and then say log equals math dots log 10. I think he's going to be 12 10 and that should be log okay and we then say txt result txt results that to be equals and I want to convert music convert okay there we go okay let's try this out and just see I'm going to first of all let's say we'll go straight into scientific language for logarithm there we go six zero two whatever let's check it out on internet and you'll see there we go here I think we end the log for that that is correct all right now let's go to the next one I'm going to take care of this double click on this square root so I'm just going to copy everything we have in here and paste that right here and maybe change this one to square root this is square here another place I'm going to be square copy a square we are square in there changes to square as well and the bus function that would be Dot Square where is it there we go there so I want to run that I just look for a square root of something oh I didn't change the name I should have changed the name okay let's see that's three that's correct all right I'm going to change this name I don't like so I'll advise you guys to make sure you give your all your components appropriate name that is square there we go so double click on that and I'm just going to copy this cut it off come in here go to the that is the event I'm going to delete that now double click on it again that should give me the name oh look I haven't got the name wrong that should have been BTN BTN BTN okay that's correct go back into and get rid of that back in here and now double click on that that should give me the right one BTN square root there we go so the square root is fine as well so what else do I need to do now let's take care of this okay first of all I'm gonna have to change the name of this exponential to to BTN X 2. and the one right below eclairs just a BTN X3 okay might as well change all the names first then I can start One X and this is going to be a link one BTN lean that's fine and this is going to be BTN percentage okay and this is going to be BTN up to modulus BTN mode BTN exponential BTN tongue h b t n10 I'm purposely showing how is named for because the guy who put in a record for this is a beginner that's why I'm showing everything so if you know how to do that you can just keep all of this however I'm almost done this is called sign and cross H here sine h sine and finally the decimal they will go all done very good now I'm going to double click on the exponential double click on that and I'm going to declare a variable in there let's just say double okay we can just call that X and X let's say x taking the following value and the value that is going to take you we have to be converted to dot convert to double there we go however we need to multiply that by itself so I'm going to grab hold of all of these yeah copy that and just multiply it here there we go all right so that is that taking care of all the other way around you can just add some variable there multiply the variables so now we then say this come down here paste that I would say equals we then need to convert that to converts to string there that is it that takes care of that so if I run it now and whatever value your enter is stored in your multiply that by two and then we store it back in here so let's see let's go here come in here scientific let's go for nine that would go without it is correct right so let's take care of the next one double click on that okay in the case of that I'm just going to copy this paste that in here but what I'm going to do is inside do is instead of adding another one let's just use another metal so that you guys know that is possible I'm going to enter q and maybe p and one more let's just see m Okay so we then say okay let's copy all of this paste them here we need three of those really so this is going to be Q and this is going to be p there just one more the next one is going to be m so all we need to do is just to multiply all of them together so we can get rid of this we just say Q multiplied by P multiplied by m there and installed right in there okay so if we run that now it's exactly the same thing the only thing we did is just adding one more to it so let's run it and see that's another easy way of doing it so let's say I want to say 2 multiplied by two by two so let's see scientific two uh where is it there we go that's correct two times two is four times two is eight there we go so that's fine now let's take care of something else maybe signage double click on signage okay with this sign H I'm just going to copy yeah let's get a hold of this this Square they just copy that because there's a function for that so let's see double click on that and just paste that in there the mass function is financial that's sine H there we go that is it you can change the variable if you want so I'm just going to call it sh all take care of the signage all right we're going to copy that now let's take care of sine double click on sign and write in here just paste and this is the sign itself so I'm going to call it let's get rid of that and just change this to sign and this one is going to be sine as well and this okay the function that is the function if you say dot and that's it right there okay in uppercase so if I run it let's run it and we'll try those two out okay so let's go into the scientific mode and let's say one sign that is 1.17 whatever clear and let's say one signed us 0.8 whatever so sign H is different from of so let's try it out here and I'm going to just say once no that's a one let's play that I think I've made an error day say sine 1 check now 0.8 whatever just exactly what I've got in here okay so let's take care of all these other ones there's I'm going to stop that and let's come right here double click on course and I'm going to copy this and just paste that in here okay that is for pause h I just change all of these to close H as well no Dot H does it right there now we change the variable and copy and change this as well and this so that is killed that so let's take care of the next one paste and I'll change these changes to lowercase so that's the course taken care of now let's take our tangent and changes to tonnage and that is time h age as well on here let's change this dot t there we go copy this now I'm going to use that for just tangent paste there and that's it done okay as for exponential and models I'm going to add them to part of the operators so let's click and see yeah that is that's the name number operator so I'm going to select that let's go straight to the property I just want to see how it's okay now I'm going to select these two now let's go into the event and in here let's paste that in there press enter so now they are part of that very event so I'm now going to go straight into the equals right underneath here I'm going to create to select case or two switch case sorry um this first one that's gonna be let's call that mode and the next one I'm going to call that exponential let's come down here there now the more design for more that is it and uh the percentage signed it that's fine as for exponential we need to do a bit of work so I'm gonna come down here so right in here I'm going to first of all declare a variable so I'm just going to call that I and I will be equals let's say we convert whatever we have inside the text box dot to double okay that is fine and I also need another declaration another variable I mean so I'm going to call that J okay that's fine J is okay so whatever we have inside J let's end this here get rid of all of that so Jay is going to take in whatever we have inside okay let's say j j is equals enter value right that is J enter semicolon so in that case we then say as follows let me just get rid of all of this so I'm going to just enter SMS dot exponential and that is going to be I multiply by math DOT log and that is going to be J multiply that by four ago but that should be the thing that's right for exponential anyway yep that is give those two so let's save that there so we can just try those out and see let's run it scientific there we go there so that is fine and all of these are working there we go guys okay let's take care of this very one one link X so let's come in here double click on that and first of all is declare a variable I'm going to call that a and a be equals let's get it converted converts about to double and what I've converted to double I might as well I'm going to just copy this um let's see all right copy that yeah and I'm now going to say let's say 1.0 divided by we convert this let's grab whole of this paste that right here and there we go right and paste that you know undo that and I'm now going to enter a here so let's come back in here paste that and see equals convert dot the string and that is it so that should take care of that yeah so now let's come back in here let's take up this one double click on that so I'm going to copy let's come in here I'm just going to copy this yeah that's fine and right in here paste and just change that to l and this one is going to be DOT log and just change all of this and that is just taking care of as well there save that okay let's take care of the percentage yourself double click on percentage and with this percent or the percentage is less maybe just copy all of these as well paste it right here okay so I now want to okay let's make this one grab all of that cut that off and now I'm just gonna change that to 100 and here whatever we have in here we want to divide it by yeah I think that's that is correct let's see let's put a bracket here okay I think that is correct we have one this and this yeah I think we should delete this okay let me try that particular percent out let's see it's you'll officially enter a decimal whatever values come in here scientific and where is it okay that's fine walking fine that's good okay let's take care of the other buttons here there's four in total I'm going to double click on this very decimal button now in there I'm going to first of all declare the following variable let's say days and we want to convert that to double and let's accept that and I'm going to then say int I one and that is going to be equals convert dot to insta32 accept that that's good so I'm now going to declare another one I'll say ins I2 and that is going to be equals let's say int that will be days underscore now I'm going to then say txt result Dot text and that's which is going to be equals let's get that converted to dot to string and what I will convert into string that's going to be I2 I2 therefore I'm right here in Testament column let's see oh that's that's meant to be I2 here okay there we go so I'm going to try that out say first click on run and whenever I enter with a decimal place you actually get converted to an integer let's see go back in here scientific and let's say nine points whatever and check that out okay we do have an error let's see what was the error about all right that was an arrow so that should actually be this there right okay let's make sure it's all right now so I'm gonna run that again and hopefully I've corrected all the errors now so let's come in here now it's whatever and there we go that's fine okay that's taken care of now let's take it off binary in the case of the binary first of all I'm going to declare an integer variable in there and let's say ends but I like you to pass as follows and what we're passing is whatever we have inside the text box once that is taken care of we don't say txt result.txt dot text and that will be equals let's convert that as well that dot to ring I'm always converting that is going to be from a to two there we go that's taken care of I'm going to copy that and I'll be using that for extra decimal as well so let's run this first and see it see how the decimal work so and let's see this scientific let's say we have 95 there we go that's fine clear that let's say 65. that is correct okay good now let's come in here hexadecimal and paste and I'm going to change that to 16 base 16 and the octaves that's going to be it's double click on that and change that to 8 here today and let's run that and see if those three works as expected and that will be the end of our scientific calculator so let's check the check this out 96. very good binary clear let's say we have 85. there we go you see that guys that's how you create your own scientific calculator and with that I'm going to call it the end of this tutorial I suppose you guys enjoyed and please do subscribe to this my second Channel this is Paul Omen speaking the owner of DJ Omen Channel so this tutorial is actually at a request of one of my viewers out there so with that I want to say bye for now you all have a nice day now
Info
Channel: Paul Oamen
Views: 30,653
Rating: undefined out of 5
Keywords: Scientific Calculator in C#, Create a Scientific Calculator in C#, How to Create a Scientific Calculator in C#
Id: 8OphyxOdQ-w
Channel Id: undefined
Length: 70min 31sec (4231 seconds)
Published: Sun Oct 23 2022
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.