public string RegisterHarvester(List <string> arguments)
    {
        Harvester harvester;
        var       type              = arguments[0];
        var       id                = arguments[1];
        var       oreOutput         = double.Parse(arguments[2]);
        var       energyRequirement = double.Parse(arguments[3]);

        if (CheckIdUniqueness("harvester", id))
        {
            if (type == "Sonic")
            {
                var sonicFactor = int.Parse(arguments[4]);
                try
                {
                    harvester = HarvesterFactory.CreateSonic(id, oreOutput, energyRequirement, sonicFactor);
                }
                catch (Exception e)
                {
                    return(e.Message);
                }
            }
            else
            {
                try
                {
                    harvester = HarvesterFactory.CreateHammer(id, oreOutput, energyRequirement);
                }
                catch (Exception e)
                {
                    return(e.Message);
                }
            }
            Harvesters.Add(harvester);
            return($"Successfully registered {type} Harvester - {id}");
        }
        return("Harvester is not registered, because of it's id");
    }