protected override void BuildTargetModel(ModelBuilder modelBuilder)
        {
#pragma warning disable 612, 618
            modelBuilder
            .HasAnnotation("ProductVersion", "6.0.1")
            .HasAnnotation("Relational:MaxIdentifierLength", 128);

            SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);

            modelBuilder.Entity("AccountService.Domain.Account", b =>
            {
                b.Property <Guid>("Id")
                .ValueGeneratedOnAdd()
                .HasColumnType("uniqueidentifier")
                .HasColumnName("Id");

                b.Property <string>("Currency")
                .HasMaxLength(3)
                .HasColumnType("nvarchar(3)")
                .HasColumnName("Currency");

                b.Property <string>("Name")
                .IsRequired()
                .HasMaxLength(255)
                .HasColumnType("nvarchar(255)")
                .HasColumnName("Name");

                b.Property <string>("Owner")
                .IsRequired()
                .HasMaxLength(255)
                .HasColumnType("nvarchar(255)")
                .HasColumnName("Owner");

                b.HasKey("Id");

                SqlServerKeyBuilderExtensions.IsClustered(b.HasKey("Id"));

                b.ToTable("Account", "accounts");
            });
#pragma warning restore 612, 618
        }
        protected override void BuildTargetModel(ModelBuilder modelBuilder)
        {
#pragma warning disable 612, 618
            modelBuilder
            .HasAnnotation("ProductVersion", "6.0.1")
            .HasAnnotation("Relational:MaxIdentifierLength", 128);

            SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);

            modelBuilder.Entity("InstrumentService.Domain.Currency", b =>
            {
                b.Property <long>("Id")
                .ValueGeneratedOnAdd()
                .HasColumnType("bigint")
                .HasColumnName("Id");

                SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property <long>("Id"), 1L, 1);

                b.Property <string>("Symbol")
                .IsRequired()
                .HasMaxLength(3)
                .HasColumnType("nvarchar(3)")
                .HasColumnName("Symbol");

                b.HasKey("Id");

                SqlServerKeyBuilderExtensions.IsClustered(b.HasKey("Id"));

                b.ToTable("Currency", "instruments");
            });

            modelBuilder.Entity("InstrumentService.Domain.Instrument", b =>
            {
                b.Property <Guid>("Id")
                .ValueGeneratedOnAdd()
                .HasColumnType("uniqueidentifier")
                .HasColumnName("Id")
                .HasDefaultValueSql("newsequentialid()");

                b.Property <long>("CurrencyId")
                .HasColumnType("bigint");

                b.Property <string>("Exchange")
                .IsRequired()
                .HasColumnType("nvarchar(max)");

                b.Property <bool>("IsDeleted")
                .ValueGeneratedOnAdd()
                .HasColumnType("bit")
                .HasDefaultValue(false)
                .HasColumnName("IsDeleted");

                b.Property <string>("Isin")
                .IsRequired()
                .HasMaxLength(35)
                .HasColumnType("nchar(35)")
                .HasColumnName("Isin");

                b.Property <string>("Name")
                .IsRequired()
                .HasMaxLength(255)
                .HasColumnType("nvarchar(255)")
                .HasColumnName("Name");

                b.Property <long>("SectorId")
                .HasColumnType("bigint");

                b.Property <string>("Ticker")
                .IsRequired()
                .HasMaxLength(255)
                .HasColumnType("nvarchar(255)")
                .HasColumnName("Ticker");

                b.HasKey("Id");

                SqlServerKeyBuilderExtensions.IsClustered(b.HasKey("Id"));

                b.HasIndex("CurrencyId");

                b.HasIndex("SectorId");

                b.ToTable("Instrument", "instruments");
            });

            modelBuilder.Entity("InstrumentService.Domain.Sector", b =>
            {
                b.Property <long>("Id")
                .ValueGeneratedOnAdd()
                .HasColumnType("bigint")
                .HasColumnName("Id");

                SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property <long>("Id"), 1L, 1);

                b.Property <string>("Name")
                .IsRequired()
                .HasMaxLength(50)
                .HasColumnType("nvarchar(50)")
                .HasColumnName("Name");

                b.HasKey("Id");

                SqlServerKeyBuilderExtensions.IsClustered(b.HasKey("Id"));

                b.ToTable("Sector", "instruments");
            });

            modelBuilder.Entity("InstrumentService.Domain.Instrument", b =>
            {
                b.HasOne("InstrumentService.Domain.Currency", "Currency")
                .WithMany()
                .HasForeignKey("CurrencyId")
                .OnDelete(DeleteBehavior.Cascade)
                .IsRequired();

                b.HasOne("InstrumentService.Domain.Sector", "Sector")
                .WithMany()
                .HasForeignKey("SectorId")
                .OnDelete(DeleteBehavior.Cascade)
                .IsRequired();

                b.Navigation("Currency");

                b.Navigation("Sector");
            });
#pragma warning restore 612, 618
        }
        protected override void BuildModel(ModelBuilder modelBuilder)
        {
#pragma warning disable 612, 618
            modelBuilder
            .HasAnnotation("ProductVersion", "6.0.1")
            .HasAnnotation("Relational:MaxIdentifierLength", 128);

            SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);

            modelBuilder.Entity("AccountService.Domain.Account", b =>
            {
                b.Property <Guid>("Id")
                .ValueGeneratedOnAdd()
                .HasColumnType("uniqueidentifier")
                .HasColumnName("Id");

                b.Property <string>("Currency")
                .HasMaxLength(3)
                .HasColumnType("nvarchar(3)")
                .HasColumnName("Currency");

                b.Property <string>("Name")
                .IsRequired()
                .HasMaxLength(255)
                .HasColumnType("nvarchar(255)")
                .HasColumnName("Name");

                b.Property <string>("Owner")
                .IsRequired()
                .HasMaxLength(255)
                .HasColumnType("nvarchar(255)")
                .HasColumnName("Owner");

                b.HasKey("Id");

                SqlServerKeyBuilderExtensions.IsClustered(b.HasKey("Id"));

                b.ToTable("Account", "accounts");
            });

            modelBuilder.Entity("AccountService.Domain.Deposit", b =>
            {
                b.Property <Guid>("Id")
                .ValueGeneratedOnAdd()
                .HasColumnType("uniqueidentifier")
                .HasColumnName("Id");

                b.Property <Guid?>("AccountId")
                .HasColumnType("uniqueidentifier");

                b.Property <decimal>("Amount")
                .HasPrecision(34, 4)
                .HasColumnType("decimal(34,4)")
                .HasColumnName("Amount");

                b.Property <int>("Year")
                .HasColumnType("int")
                .HasColumnName("Year");

                b.HasKey("Id");

                SqlServerKeyBuilderExtensions.IsClustered(b.HasKey("Id"));

                b.HasIndex("AccountId");

                b.ToTable("Deposit", "accounts");
            });

            modelBuilder.Entity("AccountService.Domain.Deposit", b =>
            {
                b.HasOne("AccountService.Domain.Account", "Account")
                .WithMany()
                .HasForeignKey("AccountId");

                b.Navigation("Account");
            });
#pragma warning restore 612, 618
        }