static async Task Main(string[] args)
        {
            var builder = new ContainerBuilder();

            builder.RegisterMediatR(typeof(MonsterCard).Assembly);
            builder.RegisterType <BoardManagerObject>().As <IBoardManager>();
            var container          = builder.Build();
            var mountainRangerCard = new MountainRangerCard();
            var squamation         = new SquamationCard();

            var combatResult = mountainRangerCard.Attacks(squamation);

            var notification = new CardDrawnNotification()
            {
                BoardManager = container.Resolve <IBoardManager>(),
                MonsterCard  = mountainRangerCard
            };
            var mediator = container.Resolve <IMediator>();
            await mediator.Publish(notification);
        }