public static Dragon AddDragon(List <string> input)
        {
            Dragon dragon = new Dragon();

            dragon.Name = input[1];
            if (input[2] != "null")
            {
                dragon.Damage = int.Parse(input[2]);
            }
            if (input[3] != "null")
            {
                dragon.Health = int.Parse(input[3]);
            }
            if (input[4] != "null")
            {
                dragon.Armor = int.Parse(input[4]);
            }

            return(dragon);
        }
        static void Main(string[] args)
        {
            Dictionary <string, List <Dragon> > dragons = new Dictionary <string, List <Dragon> >();
            int numberOfInputs = int.Parse(Console.ReadLine());

            for (int i = 0; i < numberOfInputs; i++)
            {
                List <string> input = Console.ReadLine().Split().ToList();
                string        color = input[0];
                if (!dragons.ContainsKey(color))
                {
                    dragons.Add(color, new List <Dragon>());
                    dragons[color].Add(Dragon.AddDragon(input));
                    //Start with capital ???
                }
                else
                {
                    string name = input[1];
                    if (!dragons[color].Any(x => x.Name == name))
                    {
                        dragons[color].Add(Dragon.AddDragon(input));
                    }
                    else
                    {
                        int damage = 0;
                        int health = 0;
                        int armor  = 0;
                        if (input[2] == "null")
                        {
                            damage = 45;
                        }
                        else
                        {
                            damage = int.Parse(input[2]);
                        }
                        if (input[3] == "null")
                        {
                            health = 250;
                        }
                        else
                        {
                            health = int.Parse(input[3]);
                        }
                        if (input[4] == "null")
                        {
                            armor = 10;
                        }
                        else
                        {
                            armor = int.Parse(input[4]);
                        }

                        foreach (var dragon in dragons.Where(x => x.Key == color))
                        {
                            dragon.Value.Where(x => x.Name == name).Select(x => x.Damage = damage).ToList();
                            dragon.Value.Where(x => x.Name == name).Select(x => x.Health = health).ToList();
                            dragon.Value.Where(x => x.Name == name).Select(x => x.Armor  = armor).ToList();
                        }
                    }
                }
            }

            foreach (var colorTypeDragons in dragons)
            {
                string color     = colorTypeDragons.Key;
                var    avgDamage = dragons[color].Sum(x => x.Damage) / (double)dragons[color].Count * 1.00;
                var    avgHealth = dragons[color].Sum(x => x.Health) / (double)dragons[color].Count * 1.00;
                var    avgArmor  = dragons[color].Sum(x => x.Armor) / (double)dragons[color].Count * 1.00;
                Console.WriteLine($"{color}::({avgDamage:f2}/{avgHealth:f2}/{avgArmor:f2})");
                foreach (var dragon in colorTypeDragons.Value.OrderBy(x => x.Name))
                {
                    Console.WriteLine($"-{dragon.Name} -> damage: {dragon.Damage}, health: {dragon.Health}, armor: {dragon.Armor}");
                }
            }
        }