private static List <ChemicalReaction> ReadFile()
        {
            var reactions = new List <ChemicalReaction>();

            var    fileReader = new StreamReader("./Input/Day14.txt");
            string line;

            while ((line = fileReader.ReadLine()) != null)
            {
                reactions.Add(ChemicalReaction.Parse(line));
            }

            return(reactions);
        }
        public static ChemicalReaction Parse(string reactionInput)
        {
            var returnValue = new ChemicalReaction {
                InputComponents = new List <ReactionComponent>()
            };

            var inOut  = reactionInput.Split(new[] { "=>" }, StringSplitOptions.RemoveEmptyEntries);
            var inputs = inOut[0].Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);

            foreach (var input in inputs)
            {
                returnValue.InputComponents.Add(ReactionComponent.Parse(input.Trim()));
            }

            returnValue.OutputComponent = ReactionComponent.Parse(inOut[1].Trim());

            return(returnValue);
        }