diff --git a/2018/Day 02/Day 02.csproj b/2018/Day 02/Day 02.csproj
new file mode 100644
index 0000000..6e65876
--- /dev/null
+++ b/2018/Day 02/Day 02.csproj
@@ -0,0 +1,9 @@
+
+
+
+ Exe
+ netcoreapp2.2
+ Day_02
+
+
+
diff --git a/2018/Day 02/Program.cs b/2018/Day 02/Program.cs
new file mode 100644
index 0000000..25e8652
--- /dev/null
+++ b/2018/Day 02/Program.cs
@@ -0,0 +1,124 @@
+using System;
+using System.IO;
+using System.Collections.Generic;
+using System.Linq;
+
+namespace Day_02
+{
+ class Program
+ {
+ static void Main(string[] args)
+ {
+ //Part1();
+ Part2();
+ }
+
+ static void Part1()
+ {
+ int twiceCounter = 0;
+ int thriceCounter = 0;
+
+ var lines = File.ReadAllLines("input.txt");
+ foreach (var line in lines)
+ {
+ List searchCharHistory = new List();
+ int lineTwiceCounter = 0;
+ int lineThriceCounter = 0;
+
+ for (int i = 0; i < line.Length; i++)
+ {
+ char searchChar = line[i];
+
+ if(!searchCharHistory.Any(s => s == searchChar))
+ {
+ // If we haven't already counted this letter
+
+ int matchCharCount = line.Count(f => f == searchChar);
+
+ // Check if a letter appears twice (and increment the counter)
+ if (matchCharCount == 2) {
+ lineTwiceCounter += 1;
+ }
+ // Check if a letter appears three times (and increment the counter)
+ else if (matchCharCount == 3) {
+ lineThriceCounter += 1;
+ }
+ }
+ searchCharHistory.Add(searchChar);
+ }
+
+ if (lineTwiceCounter > 0) {
+ twiceCounter += 1;
+ }
+ if (lineThriceCounter > 0) {
+ thriceCounter += 1;
+ }
+ }
+ Console.WriteLine(twiceCounter);
+ Console.WriteLine(thriceCounter);
+ // multiply the two counters together
+ Console.WriteLine("The checksum is " + (twiceCounter * thriceCounter));
+ }
+
+ static void Part2()
+ {
+ bool endLoop = false;
+
+ var lines = File.ReadAllLines("input.txt");
+ // For each line of the input file
+ for (int i = 0; i < lines.Length; i++)
+ {
+ // Compare this line with each other line in the array
+ for (int j = 0; j < lines.Length; j++) {
+ if (CompareStrings(lines[i],lines[j])) {
+ // If it finds a string with just one letter wrong
+ endLoop = true;
+ break;
+ }
+ }
+ if (endLoop) {
+ break;
+ }
+ }
+ }
+
+ static bool CompareStrings(string string1, string string2)
+ {
+ if (string1 == string2) {
+ // Do nothing, it's the same string
+ }
+
+ // Split the characters of both strings into arrays
+ List arr1 = new List();
+ List arr2 = new List();
+
+ for (int ii = 0; ii < string1.Length; ii++) {
+ arr1.Add(string1[ii]);
+ }
+ for (int jj = 0; jj < string2.Length; jj++) {
+ arr2.Add(string2[jj]);
+ }
+
+ int wrongCharCounter = 0;
+ List sameChars = new List();
+
+ // For each letter in the first array, check if it corresponds to the appropriate letter in the second array
+ for (int kk = 0; kk < arr1.Count(); kk++) {
+ if (arr1[kk] != arr2[kk]) {
+ wrongCharCounter += 1;
+ }
+ else {
+ sameChars.Add(arr1[kk]);
+ }
+ }
+
+ if (wrongCharCounter == 1) {
+ Console.WriteLine("Common letters are: " + string.Join( ",", sameChars).Replace(",", ""));
+ return true;
+ }
+ else {
+ return false;
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/2018/Day 02/input.txt b/2018/Day 02/input.txt
new file mode 100644
index 0000000..d47ff43
--- /dev/null
+++ b/2018/Day 02/input.txt
@@ -0,0 +1,250 @@
+mphcuiszrnjzxwkbgdzqeoyxfa
+mihcuisgrnjzxwkbgdtqeoylia
+mphauisvrnjgxwkbgdtqeiylfa
+mphcuisnrnjzxwkbgdgqeoylua
+mphcuisurnjzxwkbgdtqeoilfi
+mkhcuisvrnjzowkbgdteeoylfa
+mphcoicvrnjzxwksgdtqeoylfa
+mxhcuisvrndzxwkbgdtqeeylfa
+dphcuisijnjzxwkbgdtqeoylfa
+mihvuisvrqjzxwkbgdtqeoylfa
+mphcuisrrnvzxwkbgdtqeodlfa
+mphtuisdrnjzxskbgdtqeoylfa
+mphcutmvsnjzxwkbgdtqeoylfa
+mphcunsvrnjzswkggdtqeoylfa
+mphcuisvrwjzxwkbpdtqeoylfr
+mphcujsdrnjzxwkbgdtqeovlfa
+mpfcuisvrdjzxwkbgdtteoylfa
+mppcuisvrpjzxwkbgdtqeoywfa
+mphcuisvrnjzxwkbfptqroylfa
+mphcuisvrnjzxwkbgstoeoysfa
+mphcufsvrnjzcwkbgdeqeoylfa
+mphcuissrnjzxwkbgdkquoylfa
+sphcuxsvrnjzxwkbgdtqioylfa
+mphcuiivrhjzxwkbgdtqevylfa
+echcuisvrnjzxwkbgltqeoylfa
+mphcuisvrljexwkbvdtqeoylfa
+mpjcuisvrnjzxwkhidtqeoylfa
+mphcuisvrfjzmwkbgdtqeoylfl
+mwhcuisvrnjzxwkbgdtqeoytfm
+mphcuisvrsjzxwkbgdaqeoylfh
+mohcuisvrnjzxwkbgdtqtoymfa
+maycuisvrnjzxwkbgdtqboylfa
+pphcuisvqnjzxwkbgdtqeoylfd
+mprcuisvrnjtxwmbgdtqeoylfa
+mfhcuisgrnjzxckbgdtqeoylfa
+mphiubsvrnjzxwkbgdtqeoyufa
+dphctisvrnjzxwkbgdtqeoylfk
+mphcuisvrnjznwksgdtqeoyzfa
+mpwcuisvrnjziwkbgdtqaoylfa
+mphduzsvrnjznwkbgdtqeoylfa
+mphccisvrnjzxwebgdtqeoylqa
+xphcuisvrnjzxwkfvdtqeoylfa
+mphcupsvrnjzxwkbgdtfeoylpa
+mphcuisvrtjzjwkbgdtqeoylfe
+mpbcuisvrnjzxwkbgdmieoylfa
+mphcuisvrnjzxwkbgjtqetylaa
+mphcuisvrnjzxwpbgdtgdoylfa
+ophcufsvrqjzxwkbgdtqeoylfa
+iphcuhsvrnjzxwkbgetqeoylfa
+mphcuisvunjzxwwbgdtqeoylqa
+mphcpisvrnjzowkbgdtveoylfa
+mphcuisvrnjzxhkbgdtqeotlla
+mphcuisvrnjzxwkbodtgeoylha
+mphcuisvrjjzxwkbwdtqtoylfa
+mphcwisvrnjnxwkbgjtqeoylfa
+mplcuicqrnjzxwkbgdtqeoylfa
+mphcuisvrnjzxydbgdtqeoylfn
+ophckisvrnjzxwkbgdtqeozlfa
+mphcuisvrkjzxwkbgdtteoblfa
+yphcuisvrnjcxwkbggtqeoylfa
+mphcuisvrnazxwfbqdtqeoylfa
+mphcuisvrmjzxwkbgdtlwoylfa
+mphctksvrnjzxwibgdtqeoylfa
+mphcuisprnjzxlebgdtqeoylfa
+mphcuisnrnjzxakbgdtueoylfa
+mphcuiavrnjoxwtbgdtqeoylfa
+nphcuisvrnjzxwkbgdtqzoylfk
+mphcuisrrnjmxwkbgdtqdoylfa
+mphcuisvrujzxwkvgdtqehylfa
+mphcuisvrnfzxwkogdtqebylfa
+mphcuisvrnjwdwkbgdtqeoyxfa
+mphcuisvrntzxwkrgxtqeoylfa
+mpzcuisvrnjzxwebgdtqeoylsa
+aphcuikvrnjzxwwbgdtqeoylfa
+mphcqisvrnjzxwkpgdtqeoelfa
+mphcuusvrnjzxwkbgdtjeodlfa
+mphcuisvrnjzewkbgdtteoylza
+mphcuisvanjzxwkbgdtheoylfc
+mphcjishrnjzxwkbgltqeoylfa
+mpxcuislrnjzxwkbgdtqeoynfa
+mphcuisvrnjjxwkbgdtmeoxlfa
+mphcimsvrnjzxwkbsdtqeoylfa
+mphcxisvcnjzxwjbgdtqeoylfa
+mphcuisbrvjzxwkbgdtqeoymfa
+mplcuisvrnjzxwkbgdtaenylfa
+mphcuihvrnjzxwkygytqeoylfa
+mphcbisvrnjzxhkbgdtqezylfa
+mphcuisarnjzxwkbgatqeoylfv
+mphcumsvrnjzxwkbgdrqebylfa
+mlhcuisvrnwzxwkbgdtqeoylfx
+mpkcuisvrkjzxwkbgdtqeoylfo
+mphcuissrnjzxwkbgdtqmoylfc
+mphcuiwvrnjuxwkfgdtqeoylfa
+mphcuicvlnjzxwkbgdvqeoylfa
+mphcuisvrvvzxwkbfdtqeoylfa
+myhcuisvrnjpxwkbgntqeoylfa
+mpocuisvrnjzxwtbgitqeoylfa
+mphcuisvrnjzxwkbgdtwewyqfa
+mphcuisvtnjzxwwbgdtqeoolfa
+mphcuisvrnjzxgkbgdyqeoyyfa
+mphcuisvrdjzxwkbgpyqeoylfa
+bphcuisvrnjzxwkbgxtqefylfa
+sphcuisvrdjzxwktgdtqeoylfa
+mphcuvsvrnjmxwobgdtqeoylfa
+mphcuisvrnjzxwkbsdtqeuylfb
+mnhcmisvynjzxwkbgdtqeoylfa
+mphckisvrnjzxwkhgdkqeoylfa
+mpacuisvrnjzxwkbgdtqeoolaa
+mpgcuisvrnjzxwkbzdtqeoynfa
+mphcuisvrojzxwkbzdtqeoylga
+mphcuisvknjfxwkbydtqeoylfa
+mphcuistrnjzxwkbgdqqeuylfa
+bpvcuiszrnjzxwkbgdtqeoylfa
+mphcuxsvrnjzswkbgdtqeoelfa
+mphcuisvbnjzxwlbgdtqeoylla
+mphcuisvonczxwkbgktqeoylfa
+mphcuisvrnkzxwvbgdtquoylfa
+mphcuisvrnjzxokfgdtqeoylia
+tphcuisvrnjzxwkbjdwqeoylfa
+mihcuisvrnjzpwibgdtqeoylfa
+mphcuisvrejzxwkbgdtqjuylfa
+mprcuisvrnjixwkxgdtqeoylfa
+mpqcuiszrnjzxwkbgdtqeodlfa
+mphcuasvrnjzzakbgdtqeoylva
+mphcuisvrnjzmwkbtdtqeoycfa
+mphcuisvrnjzxwkbcdtqioylxa
+mphckisvrnjzxwkbcdtqeoylfm
+mphcuisvrnjuxwbogdtqeoylfa
+mphcuisdrnjzxwkbldtqeoylfx
+mphcuisvrnjoxwkbgdtqeyyyfa
+mphcuicvqnjzxwkbgdtqeoylna
+mpmcuisvrnjzxwkbgdtqktylfa
+mphcuisvrnqzxwkggdtqeoykfa
+mphcuisvryjzxwkbydtqejylfa
+mphcugsvrnjzxwkbghtqeeylfa
+rphcuusvrnjzxwkwgdtqeoylfa
+zphwuiyvrnjzxwkbgdtqeoylfa
+cphcuivvrnjzxwkbgdtqenylfa
+mphcuisvrnjzxwkagotqevylfa
+mprcuisvrcjzxwkbgdtqeoytfa
+mphjugsvrnezxwkbgdtqeoylfa
+mphcuisvryjzxwkbgltqeoylaa
+mphcursvrnjzxfkbgdtqeoydfa
+mphcuisvrcuzxwkbgdtqeoylfw
+mphcuisvrijzxwkbgdtqeoelfh
+xphcuisvenjzxjkbgdtqeoylfa
+mphcuisvrnazxwkbgdeqeoylaa
+mphcuisbrsjzxwkbgdtqeoygfa
+mlhvuisvrnjzxwkbgdtqeoylfh
+mphcuisvrnjzxukbgdtqeoyhfy
+mpzcuilvrnjzawkbgdtqeoylfa
+hphcuisjfnjzxwkbgdtqeoylfa
+mahcuisvrnjzxwkegdtqeoylfi
+mphcuixvrnjzcwkbgdtqetylfa
+mphcuisvrnjzxwkdgdtqeoklfj
+mlhcuisvrnjzxwkbgdteeoylka
+mphcuifvrnjbxwkrgdtqeoylfa
+mphcuasvrnjzzwkbgdtqeoylva
+mphcuisvrnjzxwkboutqeoylba
+mbhcuisvcnjzxwklgdtqeoylfa
+mpbcuisvrnjzxgkbgdtqesylfa
+mphcuisvrnjfswkbgdtqeoylfd
+mphcuisvrnjzxwkbgdoweoysfa
+uphcuisvrnjzrwkbgdtqelylfa
+mphcuisvrnjzxwkbgdtqyoylsi
+mpqcuiqvxnjzxwkbgdtqeoylfa
+mphcuisorfjzxwkbgatqeoylfa
+mphcuisvrntfxwkbzdtqeoylfa
+mphcuisvrnrzxwkbgdtueoylfl
+mphcuisvrnjzewkagdtyeoylfa
+mpocuisdrnjzxwkbgdtqeozlfa
+mphcuisvrnjjxwkbgdtoeoylfm
+mphcuisvenjzxwkbgdtqwoylza
+mpmcuisvrnjzxwkbgdtqeoxlfr
+mphcuisvgnjhxwkbgdtqeoplfa
+mphcuisvrnjzowkdgdtqeoyyfa
+mphcuisqynjzxwkbgdtqeoylda
+hphcuisvgnjzxwkbgdtbeoylfa
+iphcuipvrnuzxwkbgdtqeoylfa
+mphcuisvrnjzsikbpdtqeoylfa
+mpwcuhsvrnjzxbkbgdtqeoylfa
+mnhjuisvcnjzxwkbgdtqeoylfa
+mphcudsvrnjzxwkbgdtqloilfa
+mpncuiwvrwjzxwkbgdtqeoylfa
+mphcuisvrnjgawkbgdtqeoylya
+mphcuisvrnjzxwkbggtteoslfa
+mphcuisvrnjzxwkbgdvqeoylpe
+mphcuisvrnczxfkbgktqeoylfa
+mphcuifvrnjzxwkbgdbmeoylfa
+mphcuisvrnjytwkbgdtqeoylla
+mphcuisvrnjzxwkbgdtjeoxlfn
+mphjuisvrnjzxwkbghtqeoyffa
+mphcuisvrnjzxkrbgdtqeoylaa
+mphcbisvrnjzxwkbgttqeoylfs
+mphkuksvbnjzxwkbgdtqeoylfa
+nphcuidvrnjzxwhbgdtqeoylfa
+mphguzsvrnjzxwkbgdaqeoylfa
+mihcuisfrnjzxwkbgdtqhoylfa
+mphcuisvrnrzxwpbgdtqesylfa
+zphcuisvrnjzxwkbddtqeoylaa
+mphcuigvmnjzxwkbgdtqeoylba
+mjhcuisvrnjzxjkbgdtqeoylha
+mphnuisvrnjznwkbgdtqnoylfa
+mkhcuisvrnjcxwkbgdqqeoylfa
+mphcuisvenjzxwbbqdtqeoylfa
+qphcuisnrnjzawkbgdtqeoylfa
+mphcuisvrdjzxwkbgdtqeoywca
+mphcuzsvvnjzxwfbgdtqeoylfa
+pphcuxsvrnjzxwkbgdtmeoylfa
+mphiuvsvrnjzxlkbgdtqeoylfa
+mphlqisvrnjzxkkbgdtqeoylfa
+mmhcuisvrnjzxwkbgatqeoylea
+mphduisrrnjoxwkbgdtqeoylfa
+mphcuisvrnjnxwkvgdyqeoylfa
+mphcuvsvrnjzxgkbgdtqeoylfz
+mphcuisvryjzxwkbggtqkoylfa
+iphcuisvrdjzxwkbgotqeoylfa
+mphcuisvrnjzxwhbgdtqwoyofa
+mphcorbvrnjzxwkbgdtqeoylfa
+mghcuisvrnpzxykbgdtqeoylfa
+mphauisvrnjnxwkbzdtqeoylfa
+mphcgisvrnjzxwkwgdtqeoygfa
+mphcuisvrnjzxwkggotqeoylba
+mphcuesvrnjzxwkbgdwqebylfa
+yphcuisvrnjzxwkbgdxqeoylja
+ephyuisvrnjzywkbgdtqeoylfa
+mfhcuisqrnjzxwkbgdlqeoylfa
+mphkuisvrnjzxwkbertqeoylfa
+mphcuusgrnjzxwkbggtqeoylfa
+mphcuildrnjvxwkbgdtqeoylfa
+mphcuiuvrnjzlwkbgwtqeoylfa
+mppcuisvrljzxwkbgdtqeoylfw
+mphcwiwvrnjzxwsbgdtqeoylfa
+mphcubivrnjzxwkqgdtqeoylfa
+mphcuisvrnjpxwkngdtqeoylpa
+pchcuisvrgjzxwkbgdtqeoylfa
+mphcuisvlnjzxwkbgdtmeoylfw
+mphcuisvrnjzywkbgdvqeoylfj
+mpzcuisvrnezxwktgdtqeoylfa
+mphcuisvrnjbxwkbgzrqeoylfa
+mphcuisvrnjzxwktgdtqeodtfa
+jphcuiavrnjzxwkbgdtqeoylfv
+mphcuisvrnjzxwkbddppeoylfa
+mphcuissrkjzxwkbgxtqeoylfa
+mphcuisvrhjzxwxbgdtqeoylxa
+mphcvisvgnjjxwkbgdtqeoylfa
+mphcuisprnjwxwtbgdtqeoylfa
+mphcuissrnjzxqkbgdtqeoymfa
+mphcuiabrnjzxokbgdtqeoylfa
+mphcuisvrnczxwkbgmtpeoylfa
\ No newline at end of file