Poisson equation over an L-shaped domain

The example is taken from here. We showcase define a PDE on an L-shaped domain

using ModelingToolkit, DomainSets, Optimization, OptimizationOptimJL, Zygote
using DomainSets: ×
using Sophon

@parameters x y
@variables u(..)
Dxx = Differential(x)^2
Dyy = Differential(y)^2

eq = Dxx(u(x,y)) + Dyy(u(x,y)) ~ -1.0
eqs = [eq => (-1..0) × (-1..0),
       eq => (-1..0) × (0..1),
       eq => (0..1) × (-1..0)]

bc = u(x,y) ~ 0.0
boundaries = [(-1 .. -1) × (-1..1),
              (-1..0) × (1..1),
              (0..0) × (0..1),
              (0..1) × (0..0),
              (1..1) × (-1..0),
              (-1..1) × (-1 .. -1)]

bcs = [bc => boundary for boundary in boundaries]

pde_system = Sophon.PDESystem(eqs, bcs, [x,y], [u(x,y)])
PDESystem
Equations: 
  Differential(y)(Differential(y)(u(x, y))) + Differential(x)(Differential(x)(u(x, y))) ~ -1.0 on (-1 .. 0) × (-1 .. 0)
  Differential(y)(Differential(y)(u(x, y))) + Differential(x)(Differential(x)(u(x, y))) ~ -1.0 on (-1 .. 0) × (0 .. 1)
  Differential(y)(Differential(y)(u(x, y))) + Differential(x)(Differential(x)(u(x, y))) ~ -1.0 on (0 .. 1) × (-1 .. 0)
Boundary Conditions: 
  u(x, y) ~ 0.0 on (-1 .. -1) × (-1 .. 1)
  u(x, y) ~ 0.0 on (-1 .. 0) × (1 .. 1)
  u(x, y) ~ 0.0 on (0 .. 0) × (0 .. 1)
  u(x, y) ~ 0.0 on (0 .. 1) × (0 .. 0)
  u(x, y) ~ 0.0 on (1 .. 1) × (-1 .. 0)
  u(x, y) ~ 0.0 on (-1 .. 1) × (-1 .. -1)
Dependent Variables: Symbolics.Num[u(x, y)]
Independent Variables: Symbolics.Num[x, y]
chain = FullyConnected((2,16,16,16,1), tanh)
pinn = PINN(chain)
sampler = QuasiRandomSampler(300, 30)
strategy = NonAdaptiveTraining()

prob = Sophon.discretize(pde_system, pinn, sampler, strategy)

@showprogress res = Optimization.solve(prob, BFGS(); maxiters=1000)

using CairoMakie

xs = -1:0.01:1
ys = -1:0.01:1

u_pred = [ifelse(x>0.0 && y>0.0, NaN, pinn.phi([x,y], res.u)[1]) for x in xs, y in ys]
fig, ax, hm = heatmap(xs, ys, u_pred, colormap=:jet)
Colorbar(fig[:, end+1], hm)
fig

0.1%┣                                         ┫ 1/1.0k [00:58<Inf:Inf, InfGs/it]

3.106851e+02 0.2%┣                             ┫ 2/1.0k [00:58<16:06:10, 58s/it]

6.062510e+01 0.3%┣                             ┫ 3/1.0k [00:58<08:03:12, 29s/it]

1.400936e+01 0.5%┣▏                            ┫ 5/1.0k [00:58<04:01:23, 15s/it]

6.765225e+00 0.7%┣▏                            ┫ 7/1.0k [00:58<02:40:46, 10s/it]

4.398549e+00 0.9%┣▎                             ┫ 9/1.0k [00:58<02:00:28, 7s/it]

3.635541e+00 1.2%┣▍                            ┫ 12/1.0k [00:58<01:27:28, 5s/it]

2.744493e+00 1.4%┣▍                            ┫ 14/1.0k [00:58<01:13:55, 4s/it]

2.167228e+00 1.6%┣▌                            ┫ 16/1.0k [00:58<01:04:01, 4s/it]

1.627393e+00 1.9%┣▋                               ┫ 19/1.0k [00:59<53:15, 3s/it]

1.382538e+00 2.1%┣▊                               ┫ 21/1.0k [00:59<47:53, 3s/it]

1.135038e+00 2.4%┣▊                               ┫ 24/1.0k [00:59<41:33, 3s/it]

8.224321e-01 2.7%┣▉                               ┫ 27/1.0k [00:59<36:41, 2s/it]

6.832638e-01 3.0%┣█                               ┫ 30/1.0k [00:59<32:49, 2s/it]

5.377533e-01 3.3%┣█                               ┫ 33/1.0k [00:59<29:41, 2s/it]

3.994329e-01 3.6%┣█▏                              ┫ 36/1.0k [00:59<27:06, 2s/it]

3.419911e-01 3.9%┣█▎                              ┫ 39/1.0k [00:59<24:54, 2s/it]

3.217265e-01 4.1%┣█▎                              ┫ 41/1.0k [00:59<23:38, 1s/it]

2.678744e-01 4.4%┣█▍                              ┫ 44/1.0k [00:59<21:56, 1s/it]

2.423837e-01 4.7%┣█▌                              ┫ 47/1.0k [00:59<20:28, 1s/it]

2.022355e-01 4.9%┣█▋                              ┫ 49/1.0k [00:59<19:35, 1s/it]

1.759552e-01 5.2%┣█▋                              ┫ 52/1.0k [00:59<18:24, 1s/it]

1.531521e-01 5.5%┣█▊                              ┫ 55/1.0k [00:59<17:20, 1s/it]

1.253443e-01 5.7%┣█▉                              ┫ 57/1.0k [00:59<16:42, 1s/it]

1.144387e-01 6.0%┣██                              ┫ 60/1.0k [01:00<15:49, 1s/it]

9.971368e-02 6.2%┣██                              ┫ 62/1.0k [01:00<15:17, 1it/s]

6.800788e-02 6.5%┣██                              ┫ 65/1.0k [01:00<14:32, 1it/s]

5.571186e-02 6.8%┣██▏                             ┫ 68/1.0k [01:00<13:51, 1it/s]

4.994844e-02 7.1%┣██▎                             ┫ 71/1.0k [01:00<13:14, 1it/s]

4.170136e-02 7.4%┣██▍                             ┫ 74/1.0k [01:00<12:40, 1it/s]

3.262389e-02 7.7%┣██▌                             ┫ 77/1.0k [01:00<12:08, 1it/s]

2.606086e-02 8.0%┣██▋                             ┫ 80/1.0k [01:00<11:39, 1it/s]

2.238409e-02 8.3%┣██▋                             ┫ 83/1.0k [01:00<11:12, 1it/s]

1.906524e-02 8.6%┣██▊                             ┫ 86/1.0k [01:00<10:47, 1it/s]

1.686050e-02 8.9%┣██▉                             ┫ 89/1.0k [01:00<10:23, 1it/s]

1.461979e-02 9.2%┣███                             ┫ 92/1.0k [01:00<10:01, 2it/s]

1.329204e-02 9.5%┣███                             ┫ 95/1.0k [01:00<09:41, 2it/s]

1.210410e-02 9.8%┣███▏                            ┫ 98/1.0k [01:00<09:22, 2it/s]

1.083297e-02 10.1%┣███                           ┫ 101/1.0k [01:00<09:04, 2it/s]

9.947161e-03 10.4%┣███▏                          ┫ 104/1.0k [01:00<08:46, 2it/s]

9.276639e-03 10.7%┣███▏                          ┫ 107/1.0k [01:01<08:30, 2it/s]

8.678792e-03 11.0%┣███▎                          ┫ 110/1.0k [01:01<08:15, 2it/s]

8.234154e-03 11.3%┣███▍                          ┫ 113/1.0k [01:01<08:01, 2it/s]

7.600265e-03 11.6%┣███▌                          ┫ 116/1.0k [01:01<07:47, 2it/s]

7.001977e-03 11.9%┣███▋                          ┫ 119/1.0k [01:01<07:34, 2it/s]

6.134829e-03 12.2%┣███▋                          ┫ 122/1.0k [01:01<07:22, 2it/s]

5.531365e-03 12.5%┣███▊                          ┫ 125/1.0k [01:01<07:10, 2it/s]

5.193341e-03 12.8%┣███▉                          ┫ 128/1.0k [01:01<06:59, 2it/s]

4.904280e-03 13.1%┣████                          ┫ 131/1.0k [01:01<06:48, 2it/s]

4.628060e-03 13.4%┣████                          ┫ 134/1.0k [01:01<06:38, 2it/s]

4.339513e-03 13.7%┣████                          ┫ 137/1.0k [01:01<06:28, 2it/s]

3.999932e-03 14.0%┣████▏                         ┫ 140/1.0k [01:01<06:19, 2it/s]

3.796700e-03 14.3%┣████▎                         ┫ 143/1.0k [01:01<06:10, 2it/s]

3.554268e-03 14.6%┣████▍                         ┫ 146/1.0k [01:01<06:02, 2it/s]

3.342542e-03 14.9%┣████▌                         ┫ 149/1.0k [01:01<05:53, 2it/s]

2.997145e-03 15.2%┣████▌                         ┫ 152/1.0k [01:01<05:45, 2it/s]

2.813719e-03 15.5%┣████▋                         ┫ 155/1.0k [01:01<05:38, 3it/s]

2.604646e-03 15.8%┣████▊                         ┫ 158/1.0k [01:02<05:31, 3it/s]

2.445007e-03 16.1%┣████▉                         ┫ 161/1.0k [01:02<05:23, 3it/s]

2.343679e-03 16.4%┣█████                         ┫ 164/1.0k [01:02<05:17, 3it/s]

2.246798e-03 16.7%┣█████                         ┫ 167/1.0k [01:02<05:10, 3it/s]

2.147679e-03 17.0%┣█████                         ┫ 170/1.0k [01:02<05:04, 3it/s]

2.078591e-03 17.3%┣█████▏                        ┫ 173/1.0k [01:02<04:58, 3it/s]

1.962222e-03 17.6%┣█████▎                        ┫ 176/1.0k [01:02<04:52, 3it/s]

1.882638e-03 17.9%┣█████▍                        ┫ 179/1.0k [01:02<04:46, 3it/s]

1.830184e-03 18.2%┣█████▌                        ┫ 182/1.0k [01:02<04:41, 3it/s]

1.782609e-03 18.5%┣█████▌                        ┫ 185/1.0k [01:02<04:35, 3it/s]

1.739883e-03 18.8%┣█████▋                        ┫ 188/1.0k [01:02<04:30, 3it/s]

1.708242e-03 19.1%┣█████▊                        ┫ 191/1.0k [01:02<04:25, 3it/s]

1.677844e-03 19.4%┣█████▉                        ┫ 194/1.0k [01:02<04:21, 3it/s]

1.652661e-03 19.7%┣██████                        ┫ 197/1.0k [01:02<04:16, 3it/s]

1.615298e-03 20.0%┣██████                        ┫ 200/1.0k [01:02<04:11, 3it/s]

1.581391e-03 20.3%┣██████                        ┫ 203/1.0k [01:03<04:07, 3it/s]

1.552023e-03 20.6%┣██████▏                       ┫ 206/1.0k [01:03<04:03, 3it/s]

1.527669e-03 20.9%┣██████▎                       ┫ 209/1.0k [01:03<03:59, 3it/s]

1.512097e-03 21.2%┣██████▍                       ┫ 212/1.0k [01:03<03:54, 3it/s]

1.492359e-03 21.5%┣██████▍                       ┫ 215/1.0k [01:03<03:51, 3it/s]

1.472537e-03 21.8%┣██████▌                       ┫ 218/1.0k [01:03<03:47, 3it/s]

1.457521e-03 22.0%┣██████▋                       ┫ 220/1.0k [01:03<03:44, 3it/s]

1.443989e-03 22.3%┣██████▊                       ┫ 223/1.0k [01:03<03:41, 4it/s]

1.432699e-03 22.5%┣██████▊                       ┫ 225/1.0k [01:03<03:38, 4it/s]

1.416040e-03 22.8%┣██████▉                       ┫ 228/1.0k [01:03<03:35, 4it/s]

1.398584e-03 23.1%┣███████                       ┫ 231/1.0k [01:03<03:31, 4it/s]

1.377403e-03 23.4%┣███████                       ┫ 234/1.0k [01:03<03:28, 4it/s]

1.370360e-03 23.7%┣███████                       ┫ 237/1.0k [01:03<03:25, 4it/s]

1.363716e-03 23.9%┣███████▏                      ┫ 239/1.0k [01:03<03:23, 4it/s]

1.351485e-03 24.2%┣███████▎                      ┫ 242/1.0k [01:03<03:20, 4it/s]

1.338132e-03 24.5%┣███████▍                      ┫ 245/1.0k [01:03<03:17, 4it/s]

1.330425e-03 24.8%┣███████▍                      ┫ 248/1.0k [01:04<03:14, 4it/s]

1.324524e-03 25.0%┣███████▌                      ┫ 250/1.0k [01:04<03:12, 4it/s]

1.305118e-03 25.3%┣███████▋                      ┫ 253/1.0k [01:04<03:09, 4it/s]

1.292719e-03 25.5%┣███████▋                      ┫ 255/1.0k [01:04<03:07, 4it/s]

1.276668e-03 25.8%┣███████▊                      ┫ 258/1.0k [01:04<03:04, 4it/s]

1.258112e-03 26.1%┣███████▉                      ┫ 261/1.0k [01:04<03:02, 4it/s]

1.241798e-03 26.4%┣████████                      ┫ 264/1.0k [01:04<02:59, 4it/s]

1.219266e-03 26.7%┣████████                      ┫ 267/1.0k [01:04<02:57, 4it/s]

1.207059e-03 27.0%┣████████                      ┫ 270/1.0k [01:04<02:54, 4it/s]

1.194013e-03 27.3%┣████████▏                     ┫ 273/1.0k [01:04<02:52, 4it/s]

1.188265e-03 27.5%┣████████▎                     ┫ 275/1.0k [01:04<02:50, 4it/s]

1.170898e-03 27.8%┣████████▎                     ┫ 278/1.0k [01:04<02:48, 4it/s]

1.155523e-03 28.1%┣████████▍                     ┫ 281/1.0k [01:04<02:45, 4it/s]

1.138687e-03 28.4%┣████████▌                     ┫ 284/1.0k [01:04<02:43, 4it/s]

1.122331e-03 28.7%┣████████▋                     ┫ 287/1.0k [01:04<02:41, 4it/s]

1.110831e-03 29.0%┣████████▊                     ┫ 290/1.0k [01:05<02:39, 4it/s]

1.099276e-03 29.3%┣████████▉                     ┫ 293/1.0k [01:05<02:37, 5it/s]

1.090659e-03 29.6%┣████████▉                     ┫ 296/1.0k [01:05<02:34, 5it/s]

1.085657e-03 29.9%┣█████████                     ┫ 299/1.0k [01:05<02:32, 5it/s]

1.077378e-03 30.2%┣█████████                     ┫ 302/1.0k [01:05<02:30, 5it/s]

1.068074e-03 30.5%┣█████████▏                    ┫ 305/1.0k [01:05<02:28, 5it/s]

1.060115e-03 30.8%┣█████████▎                    ┫ 308/1.0k [01:05<02:26, 5it/s]

1.056844e-03 31.0%┣█████████▎                    ┫ 310/1.0k [01:05<02:25, 5it/s]

1.050821e-03 31.2%┣█████████▍                    ┫ 312/1.0k [01:05<02:24, 5it/s]

1.042932e-03 31.5%┣█████████▍                    ┫ 315/1.0k [01:05<02:22, 5it/s]

1.036239e-03 31.7%┣█████████▌                    ┫ 317/1.0k [01:05<02:21, 5it/s]

1.028986e-03 32.0%┣█████████▋                    ┫ 320/1.0k [01:05<02:19, 5it/s]

1.018718e-03 32.3%┣█████████▊                    ┫ 323/1.0k [01:05<02:17, 5it/s]

1.010117e-03 32.6%┣█████████▊                    ┫ 326/1.0k [01:05<02:16, 5it/s]

1.001740e-03 32.9%┣█████████▉                    ┫ 329/1.0k [01:05<02:14, 5it/s]

9.938733e-04 33.1%┣██████████                    ┫ 331/1.0k [01:05<02:13, 5it/s]

9.834347e-04 33.4%┣██████████                    ┫ 334/1.0k [01:05<02:11, 5it/s]

9.713525e-04 33.7%┣██████████                    ┫ 337/1.0k [01:06<02:10, 5it/s]

9.632247e-04 33.9%┣██████████▏                   ┫ 339/1.0k [01:06<02:09, 5it/s]

9.543022e-04 34.2%┣██████████▎                   ┫ 342/1.0k [01:06<02:07, 5it/s]

9.465084e-04 34.5%┣██████████▍                   ┫ 345/1.0k [01:06<02:05, 5it/s]

9.371345e-04 34.8%┣██████████▍                   ┫ 348/1.0k [01:06<02:04, 5it/s]

9.248015e-04 35.1%┣██████████▌                   ┫ 351/1.0k [01:06<02:02, 5it/s]

9.136619e-04 35.4%┣██████████▋                   ┫ 354/1.0k [01:06<02:01, 5it/s]

9.056831e-04 35.7%┣██████████▊                   ┫ 357/1.0k [01:06<01:59, 5it/s]

8.974150e-04 36.0%┣██████████▉                   ┫ 360/1.0k [01:06<01:58, 5it/s]

8.858279e-04 36.3%┣██████████▉                   ┫ 363/1.0k [01:06<01:57, 5it/s]

8.766797e-04 36.6%┣███████████                   ┫ 366/1.0k [01:06<01:55, 6it/s]

8.687779e-04 36.9%┣███████████                   ┫ 369/1.0k [01:06<01:54, 6it/s]

8.590935e-04 37.2%┣███████████▏                  ┫ 372/1.0k [01:06<01:52, 6it/s]

8.503969e-04 37.5%┣███████████▎                  ┫ 375/1.0k [01:06<01:51, 6it/s]

8.429105e-04 37.8%┣███████████▎                  ┫ 378/1.0k [01:06<01:50, 6it/s]

8.367910e-04 38.1%┣███████████▍                  ┫ 381/1.0k [01:06<01:48, 6it/s]

8.260987e-04 38.4%┣███████████▌                  ┫ 384/1.0k [01:07<01:47, 6it/s]

8.155620e-04 38.7%┣███████████▋                  ┫ 387/1.0k [01:07<01:46, 6it/s]

8.064425e-04 39.0%┣███████████▊                  ┫ 390/1.0k [01:07<01:45, 6it/s]

7.951721e-04 39.3%┣███████████▉                  ┫ 393/1.0k [01:07<01:44, 6it/s]

7.842790e-04 39.6%┣███████████▉                  ┫ 396/1.0k [01:07<01:42, 6it/s]

7.749736e-04 39.9%┣████████████                  ┫ 399/1.0k [01:07<01:41, 6it/s]

7.680408e-04 40.1%┣████████████                  ┫ 401/1.0k [01:07<01:40, 6it/s]

7.589098e-04 40.4%┣████████████                  ┫ 404/1.0k [01:07<01:39, 6it/s]

7.518179e-04 40.7%┣████████████▏                 ┫ 407/1.0k [01:07<01:38, 6it/s]

7.437766e-04 41.0%┣████████████▎                 ┫ 410/1.0k [01:07<01:37, 6it/s]

7.344422e-04 41.3%┣████████████▍                 ┫ 413/1.0k [01:07<01:36, 6it/s]

7.225735e-04 41.6%┣████████████▌                 ┫ 416/1.0k [01:07<01:35, 6it/s]

7.098841e-04 41.9%┣████████████▋                 ┫ 419/1.0k [01:07<01:34, 6it/s]

7.032382e-04 42.2%┣████████████▋                 ┫ 422/1.0k [01:07<01:33, 6it/s]

6.982563e-04 42.5%┣████████████▊                 ┫ 425/1.0k [01:07<01:32, 6it/s]

6.939586e-04 42.8%┣████████████▉                 ┫ 428/1.0k [01:07<01:31, 6it/s]

6.908913e-04 43.1%┣█████████████                 ┫ 431/1.0k [01:08<01:30, 6it/s]

6.849089e-04 43.4%┣█████████████                 ┫ 434/1.0k [01:08<01:29, 6it/s]

6.814230e-04 43.6%┣█████████████                 ┫ 436/1.0k [01:08<01:28, 6it/s]

6.782491e-04 43.8%┣█████████████▏                ┫ 438/1.0k [01:08<01:27, 6it/s]

6.750147e-04 44.0%┣█████████████▏                ┫ 440/1.0k [01:08<01:27, 6it/s]

6.694977e-04 44.2%┣█████████████▎                ┫ 442/1.0k [01:08<01:26, 7it/s]

6.616612e-04 44.5%┣█████████████▍                ┫ 445/1.0k [01:08<01:25, 7it/s]

6.584470e-04 44.8%┣█████████████▍                ┫ 448/1.0k [01:08<01:24, 7it/s]

6.534768e-04 45.1%┣█████████████▌                ┫ 451/1.0k [01:08<01:23, 7it/s]

6.497740e-04 45.4%┣█████████████▋                ┫ 454/1.0k [01:08<01:22, 7it/s]

6.474921e-04 45.6%┣█████████████▋                ┫ 456/1.0k [01:08<01:22, 7it/s]

6.446042e-04 45.8%┣█████████████▊                ┫ 458/1.0k [01:08<01:21, 7it/s]

6.412138e-04 46.0%┣█████████████▉                ┫ 460/1.0k [01:08<01:20, 7it/s]

6.377592e-04 46.2%┣█████████████▉                ┫ 462/1.0k [01:08<01:20, 7it/s]

6.316874e-04 46.5%┣██████████████                ┫ 465/1.0k [01:08<01:19, 7it/s]

6.264838e-04 46.7%┣██████████████                ┫ 467/1.0k [01:08<01:18, 7it/s]

6.161002e-04 47.0%┣██████████████                ┫ 470/1.0k [01:09<01:18, 7it/s]

6.078876e-04 47.3%┣██████████████▏               ┫ 473/1.0k [01:09<01:17, 7it/s]

6.019639e-04 47.6%┣██████████████▎               ┫ 476/1.0k [01:09<01:16, 7it/s]

5.965245e-04 47.9%┣██████████████▍               ┫ 479/1.0k [01:09<01:15, 7it/s]

5.925031e-04 48.2%┣██████████████▌               ┫ 482/1.0k [01:09<01:14, 7it/s]

5.900063e-04 48.4%┣██████████████▌               ┫ 484/1.0k [01:09<01:14, 7it/s]

5.857160e-04 48.7%┣██████████████▋               ┫ 487/1.0k [01:09<01:13, 7it/s]

5.810160e-04 49.0%┣██████████████▊               ┫ 490/1.0k [01:09<01:12, 7it/s]

5.767026e-04 49.3%┣██████████████▊               ┫ 493/1.0k [01:09<01:11, 7it/s]

5.740475e-04 49.5%┣██████████████▉               ┫ 495/1.0k [01:09<01:11, 7it/s]

5.712211e-04 49.7%┣███████████████               ┫ 497/1.0k [01:09<01:10, 7it/s]

5.675376e-04 49.9%┣███████████████               ┫ 499/1.0k [01:09<01:10, 7it/s]

5.649784e-04 50.0%┣███████████████               ┫ 501/1.0k [01:09<01:09, 7it/s]

5.621206e-04 50.2%┣███████████████               ┫ 503/1.0k [01:09<01:09, 7it/s]

5.590607e-04 50.4%┣███████████████▏              ┫ 505/1.0k [01:09<01:08, 7it/s]

5.514762e-04 50.7%┣███████████████▎              ┫ 508/1.0k [01:09<01:07, 7it/s]

5.448145e-04 51.0%┣███████████████▎              ┫ 511/1.0k [01:09<01:07, 7it/s]

5.379800e-04 51.3%┣███████████████▍              ┫ 514/1.0k [01:10<01:06, 7it/s]

5.290437e-04 51.6%┣███████████████▌              ┫ 517/1.0k [01:10<01:05, 7it/s]

5.246019e-04 51.9%┣███████████████▋              ┫ 520/1.0k [01:10<01:05, 7it/s]

5.208664e-04 52.2%┣███████████████▊              ┫ 523/1.0k [01:10<01:04, 7it/s]

5.159059e-04 52.5%┣███████████████▊              ┫ 526/1.0k [01:10<01:03, 8it/s]

5.115785e-04 52.8%┣███████████████▉              ┫ 529/1.0k [01:10<01:02, 8it/s]

5.087722e-04 53.0%┣████████████████              ┫ 531/1.0k [01:10<01:02, 8it/s]

5.038362e-04 53.3%┣████████████████              ┫ 534/1.0k [01:10<01:01, 8it/s]

5.007970e-04 53.6%┣████████████████              ┫ 537/1.0k [01:10<01:01, 8it/s]

4.984333e-04 53.8%┣████████████████▏             ┫ 539/1.0k [01:10<01:00, 8it/s]

4.930789e-04 54.1%┣████████████████▎             ┫ 542/1.0k [01:10<00:59, 8it/s]

4.890948e-04 54.4%┣████████████████▍             ┫ 545/1.0k [01:10<00:59, 8it/s]

4.821422e-04 54.7%┣████████████████▍             ┫ 548/1.0k [01:10<00:58, 8it/s]

4.793716e-04 54.9%┣████████████████▌             ┫ 550/1.0k [01:10<00:58, 8it/s]

4.751712e-04 55.2%┣████████████████▋             ┫ 553/1.0k [01:10<00:57, 8it/s]

4.718450e-04 55.5%┣████████████████▋             ┫ 556/1.0k [01:10<00:56, 8it/s]

4.702531e-04 55.7%┣████████████████▊             ┫ 558/1.0k [01:10<00:56, 8it/s]

4.669221e-04 56.0%┣████████████████▉             ┫ 561/1.0k [01:11<00:55, 8it/s]

4.643989e-04 56.2%┣████████████████▉             ┫ 563/1.0k [01:11<00:55, 8it/s]

4.621418e-04 56.4%┣█████████████████             ┫ 565/1.0k [01:11<00:55, 8it/s]

4.586205e-04 56.7%┣█████████████████             ┫ 568/1.0k [01:11<00:54, 8it/s]

4.547922e-04 57.0%┣█████████████████▏            ┫ 571/1.0k [01:11<00:53, 8it/s]

4.525666e-04 57.2%┣█████████████████▏            ┫ 573/1.0k [01:11<00:53, 8it/s]

4.501281e-04 57.4%┣█████████████████▎            ┫ 575/1.0k [01:11<00:53, 8it/s]

4.480296e-04 57.6%┣█████████████████▎            ┫ 577/1.0k [01:11<00:52, 8it/s]

4.456850e-04 57.9%┣█████████████████▍            ┫ 580/1.0k [01:11<00:52, 8it/s]

4.434029e-04 58.2%┣█████████████████▌            ┫ 583/1.0k [01:11<00:51, 8it/s]

4.416662e-04 58.4%┣█████████████████▌            ┫ 585/1.0k [01:11<00:51, 8it/s]

4.392953e-04 58.6%┣█████████████████▋            ┫ 587/1.0k [01:11<00:50, 8it/s]

4.357636e-04 58.8%┣█████████████████▋            ┫ 589/1.0k [01:11<00:50, 8it/s]

4.303301e-04 59.1%┣█████████████████▊            ┫ 592/1.0k [01:11<00:49, 8it/s]

4.266580e-04 59.4%┣█████████████████▉            ┫ 595/1.0k [01:11<00:49, 8it/s]

4.244046e-04 59.7%┣██████████████████            ┫ 598/1.0k [01:11<00:48, 8it/s]

4.224752e-04 59.9%┣██████████████████            ┫ 600/1.0k [01:11<00:48, 8it/s]

4.191379e-04 60.2%┣██████████████████            ┫ 603/1.0k [01:12<00:47, 8it/s]

4.173353e-04 60.5%┣██████████████████▏           ┫ 606/1.0k [01:12<00:47, 8it/s]

4.159419e-04 60.8%┣██████████████████▎           ┫ 609/1.0k [01:12<00:46, 8it/s]

4.147842e-04 61.0%┣██████████████████▎           ┫ 611/1.0k [01:12<00:46, 9it/s]

4.128487e-04 61.2%┣██████████████████▍           ┫ 613/1.0k [01:12<00:46, 9it/s]

4.093705e-04 61.4%┣██████████████████▍           ┫ 615/1.0k [01:12<00:45, 9it/s]

4.051875e-04 61.7%┣██████████████████▌           ┫ 618/1.0k [01:12<00:45, 9it/s]

4.032799e-04 61.9%┣██████████████████▋           ┫ 620/1.0k [01:12<00:44, 9it/s]

3.999316e-04 62.2%┣██████████████████▊           ┫ 623/1.0k [01:12<00:44, 9it/s]

3.982325e-04 62.4%┣██████████████████▊           ┫ 625/1.0k [01:12<00:43, 9it/s]

3.954658e-04 62.7%┣██████████████████▉           ┫ 628/1.0k [01:12<00:43, 9it/s]

3.930706e-04 63.0%┣███████████████████           ┫ 631/1.0k [01:12<00:42, 9it/s]

3.919525e-04 63.2%┣███████████████████           ┫ 633/1.0k [01:12<00:42, 9it/s]

3.906856e-04 63.4%┣███████████████████           ┫ 635/1.0k [01:12<00:42, 9it/s]

3.890704e-04 63.6%┣███████████████████           ┫ 637/1.0k [01:12<00:41, 9it/s]

3.853640e-04 63.9%┣███████████████████▏          ┫ 640/1.0k [01:12<00:41, 9it/s]

3.842432e-04 64.1%┣███████████████████▎          ┫ 642/1.0k [01:13<00:41, 9it/s]

3.833445e-04 64.3%┣███████████████████▎          ┫ 644/1.0k [01:13<00:40, 9it/s]

3.807013e-04 64.6%┣███████████████████▍          ┫ 647/1.0k [01:13<00:40, 9it/s]

3.786545e-04 64.9%┣███████████████████▌          ┫ 650/1.0k [01:13<00:39, 9it/s]

3.769939e-04 65.1%┣███████████████████▌          ┫ 652/1.0k [01:13<00:39, 9it/s]

3.744717e-04 65.4%┣███████████████████▋          ┫ 655/1.0k [01:13<00:39, 9it/s]

3.727914e-04 65.6%┣███████████████████▊          ┫ 657/1.0k [01:13<00:38, 9it/s]

3.711023e-04 65.8%┣███████████████████▊          ┫ 659/1.0k [01:13<00:38, 9it/s]

3.681935e-04 66.1%┣███████████████████▉          ┫ 662/1.0k [01:13<00:37, 9it/s]

3.664567e-04 66.4%┣████████████████████          ┫ 665/1.0k [01:13<00:37, 9it/s]

3.655036e-04 66.6%┣████████████████████          ┫ 667/1.0k [01:13<00:37, 9it/s]

3.644106e-04 66.8%┣████████████████████          ┫ 669/1.0k [01:13<00:36, 9it/s]

3.629165e-04 67.0%┣████████████████████          ┫ 671/1.0k [01:13<00:36, 9it/s]

3.611620e-04 67.3%┣████████████████████▏         ┫ 674/1.0k [01:13<00:36, 9it/s]

3.602097e-04 67.5%┣████████████████████▎         ┫ 676/1.0k [01:13<00:35, 9it/s]

3.583462e-04 67.8%┣████████████████████▍         ┫ 679/1.0k [01:13<00:35, 9it/s]

3.574920e-04 68.0%┣████████████████████▍         ┫ 681/1.0k [01:13<00:35, 9it/s]

3.566411e-04 68.2%┣████████████████████▌         ┫ 683/1.0k [01:14<00:34, 9it/s]

3.554256e-04 68.4%┣████████████████████▌         ┫ 685/1.0k [01:14<00:34, 9it/s]

3.541608e-04 68.6%┣████████████████████▋         ┫ 687/1.0k [01:14<00:34, 9it/s]

3.529894e-04 68.9%┣████████████████████▊         ┫ 690/1.0k [01:14<00:33, 9it/s]

3.524869e-04 69.1%┣████████████████████▊         ┫ 692/1.0k [01:14<00:33, 9it/s]

3.514444e-04 69.3%┣████████████████████▉         ┫ 694/1.0k [01:14<00:33, 9it/s]

3.502670e-04 69.5%┣████████████████████▉         ┫ 696/1.0k [01:14<00:32, 9it/s]

3.489573e-04 69.7%┣█████████████████████         ┫ 698/1.0k [01:14<00:32, 9it/s]

3.473461e-04 70.0%┣█████████████████████         ┫ 701/1.0k [01:14<00:32, 9it/s]

3.459732e-04 70.2%┣█████████████████████         ┫ 703/1.0k [01:14<00:31, 9it/s]

3.433045e-04 70.5%┣████████████████████▌        ┫ 706/1.0k [01:14<00:31, 10it/s]

3.419340e-04 70.7%┣████████████████████▌        ┫ 708/1.0k [01:14<00:31, 10it/s]

3.402205e-04 70.9%┣████████████████████▋        ┫ 710/1.0k [01:14<00:30, 10it/s]

3.372028e-04 71.2%┣████████████████████▋        ┫ 713/1.0k [01:14<00:30, 10it/s]

3.346806e-04 71.5%┣████████████████████▊        ┫ 716/1.0k [01:14<00:30, 10it/s]

3.324143e-04 71.8%┣████████████████████▉        ┫ 719/1.0k [01:14<00:29, 10it/s]

3.310300e-04 72.1%┣█████████████████████        ┫ 722/1.0k [01:15<00:29, 10it/s]

3.296216e-04 72.4%┣█████████████████████        ┫ 725/1.0k [01:15<00:28, 10it/s]

3.285306e-04 72.6%┣█████████████████████        ┫ 727/1.0k [01:15<00:28, 10it/s]

3.273018e-04 72.8%┣█████████████████████▏       ┫ 729/1.0k [01:15<00:28, 10it/s]

3.250696e-04 73.1%┣█████████████████████▏       ┫ 732/1.0k [01:15<00:28, 10it/s]

3.226150e-04 73.4%┣█████████████████████▎       ┫ 735/1.0k [01:15<00:27, 10it/s]

3.213040e-04 73.7%┣█████████████████████▍       ┫ 738/1.0k [01:15<00:27, 10it/s]

3.202470e-04 73.9%┣█████████████████████▍       ┫ 740/1.0k [01:15<00:26, 10it/s]

3.183934e-04 74.1%┣█████████████████████▌       ┫ 742/1.0k [01:15<00:26, 10it/s]

3.157145e-04 74.4%┣█████████████████████▋       ┫ 745/1.0k [01:15<00:26, 10it/s]

3.109383e-04 74.7%┣█████████████████████▊       ┫ 748/1.0k [01:15<00:25, 10it/s]

3.076469e-04 75.0%┣█████████████████████▊       ┫ 751/1.0k [01:15<00:25, 10it/s]

3.045889e-04 75.3%┣█████████████████████▉       ┫ 754/1.0k [01:15<00:25, 10it/s]

3.016716e-04 75.6%┣██████████████████████       ┫ 757/1.0k [01:15<00:24, 10it/s]

3.003843e-04 75.9%┣██████████████████████       ┫ 760/1.0k [01:15<00:24, 10it/s]

2.994577e-04 76.1%┣██████████████████████       ┫ 762/1.0k [01:15<00:24, 10it/s]

2.968747e-04 76.4%┣██████████████████████▏      ┫ 765/1.0k [01:15<00:23, 10it/s]

2.954897e-04 76.7%┣██████████████████████▎      ┫ 768/1.0k [01:16<00:23, 10it/s]

2.943318e-04 77.0%┣██████████████████████▍      ┫ 771/1.0k [01:16<00:23, 10it/s]

2.932067e-04 77.2%┣██████████████████████▍      ┫ 773/1.0k [01:16<00:22, 10it/s]

2.920367e-04 77.4%┣██████████████████████▌      ┫ 775/1.0k [01:16<00:22, 10it/s]

2.904588e-04 77.7%┣██████████████████████▌      ┫ 778/1.0k [01:16<00:22, 10it/s]

2.896202e-04 77.9%┣██████████████████████▋      ┫ 780/1.0k [01:16<00:22, 10it/s]

2.888274e-04 78.1%┣██████████████████████▋      ┫ 782/1.0k [01:16<00:21, 10it/s]

2.879897e-04 78.3%┣██████████████████████▊      ┫ 784/1.0k [01:16<00:21, 10it/s]

2.869931e-04 78.5%┣██████████████████████▊      ┫ 786/1.0k [01:16<00:21, 10it/s]

2.860415e-04 78.7%┣██████████████████████▉      ┫ 788/1.0k [01:16<00:21, 10it/s]

2.849083e-04 79.0%┣███████████████████████      ┫ 791/1.0k [01:16<00:20, 10it/s]

2.845102e-04 79.2%┣███████████████████████      ┫ 793/1.0k [01:16<00:20, 10it/s]

2.840986e-04 79.4%┣███████████████████████      ┫ 795/1.0k [01:16<00:20, 10it/s]

2.836980e-04 79.6%┣███████████████████████      ┫ 797/1.0k [01:16<00:20, 10it/s]

2.831351e-04 79.9%┣███████████████████████▏     ┫ 800/1.0k [01:16<00:19, 10it/s]

2.827436e-04 80.1%┣███████████████████████▎     ┫ 802/1.0k [01:16<00:19, 10it/s]

2.823060e-04 80.3%┣███████████████████████▎     ┫ 804/1.0k [01:16<00:19, 11it/s]

2.815571e-04 80.5%┣███████████████████████▍     ┫ 806/1.0k [01:17<00:19, 11it/s]

2.802812e-04 80.7%┣███████████████████████▍     ┫ 808/1.0k [01:17<00:18, 11it/s]

2.793655e-04 80.9%┣███████████████████████▌     ┫ 810/1.0k [01:17<00:18, 11it/s]

2.784325e-04 81.1%┣███████████████████████▌     ┫ 812/1.0k [01:17<00:18, 11it/s]

2.773352e-04 81.4%┣███████████████████████▋     ┫ 815/1.0k [01:17<00:18, 11it/s]

2.764139e-04 81.7%┣███████████████████████▊     ┫ 818/1.0k [01:17<00:17, 11it/s]

2.755074e-04 81.9%┣███████████████████████▊     ┫ 820/1.0k [01:17<00:17, 11it/s]

2.746207e-04 82.1%┣███████████████████████▉     ┫ 822/1.0k [01:17<00:17, 11it/s]

2.739086e-04 82.3%┣███████████████████████▉     ┫ 824/1.0k [01:17<00:17, 11it/s]

2.734661e-04 82.5%┣████████████████████████     ┫ 826/1.0k [01:17<00:16, 11it/s]

2.723882e-04 82.7%┣████████████████████████     ┫ 828/1.0k [01:17<00:16, 11it/s]

2.710520e-04 82.9%┣████████████████████████     ┫ 830/1.0k [01:17<00:16, 11it/s]

2.697955e-04 83.1%┣████████████████████████     ┫ 832/1.0k [01:17<00:16, 11it/s]

2.690449e-04 83.3%┣████████████████████████▏    ┫ 834/1.0k [01:17<00:15, 11it/s]

2.683915e-04 83.6%┣████████████████████████▎    ┫ 837/1.0k [01:17<00:15, 11it/s]

2.677535e-04 83.8%┣████████████████████████▎    ┫ 839/1.0k [01:17<00:15, 11it/s]

2.664956e-04 84.1%┣████████████████████████▍    ┫ 842/1.0k [01:17<00:15, 11it/s]

2.650218e-04 84.3%┣████████████████████████▌    ┫ 844/1.0k [01:17<00:14, 11it/s]

2.639233e-04 84.5%┣████████████████████████▌    ┫ 846/1.0k [01:18<00:14, 11it/s]

2.627377e-04 84.8%┣████████████████████████▋    ┫ 849/1.0k [01:18<00:14, 11it/s]

2.614866e-04 85.1%┣████████████████████████▊    ┫ 852/1.0k [01:18<00:14, 11it/s]

2.600694e-04 85.4%┣████████████████████████▊    ┫ 855/1.0k [01:18<00:13, 11it/s]

2.593662e-04 85.6%┣████████████████████████▉    ┫ 857/1.0k [01:18<00:13, 11it/s]

2.585637e-04 85.9%┣█████████████████████████    ┫ 860/1.0k [01:18<00:13, 11it/s]

2.577844e-04 86.2%┣█████████████████████████    ┫ 863/1.0k [01:18<00:12, 11it/s]

2.573500e-04 86.4%┣█████████████████████████    ┫ 865/1.0k [01:18<00:12, 11it/s]

2.569284e-04 86.6%┣█████████████████████████▏   ┫ 867/1.0k [01:18<00:12, 11it/s]

2.562685e-04 86.8%┣█████████████████████████▏   ┫ 869/1.0k [01:18<00:12, 11it/s]

2.555891e-04 87.0%┣█████████████████████████▎   ┫ 871/1.0k [01:18<00:12, 11it/s]

2.552870e-04 87.2%┣█████████████████████████▎   ┫ 873/1.0k [01:18<00:11, 11it/s]

2.549278e-04 87.4%┣█████████████████████████▍   ┫ 875/1.0k [01:18<00:11, 11it/s]

2.543165e-04 87.6%┣█████████████████████████▍   ┫ 877/1.0k [01:18<00:11, 11it/s]

2.531438e-04 87.8%┣█████████████████████████▌   ┫ 879/1.0k [01:18<00:11, 11it/s]

2.516911e-04 88.1%┣█████████████████████████▌   ┫ 882/1.0k [01:18<00:11, 11it/s]

2.510346e-04 88.3%┣█████████████████████████▋   ┫ 884/1.0k [01:19<00:10, 11it/s]

2.497775e-04 88.6%┣█████████████████████████▊   ┫ 887/1.0k [01:19<00:10, 11it/s]

2.488437e-04 88.9%┣█████████████████████████▉   ┫ 890/1.0k [01:19<00:10, 11it/s]

2.481546e-04 89.1%┣█████████████████████████▉   ┫ 892/1.0k [01:19<00:10, 11it/s]

2.470068e-04 89.4%┣██████████████████████████   ┫ 895/1.0k [01:19<00:09, 11it/s]

2.458490e-04 89.7%┣██████████████████████████   ┫ 898/1.0k [01:19<00:09, 11it/s]

2.448544e-04 90.0%┣██████████████████████████   ┫ 901/1.0k [01:19<00:09, 11it/s]

2.440837e-04 90.3%┣██████████████████████████▏  ┫ 904/1.0k [01:19<00:08, 11it/s]

2.435639e-04 90.6%┣██████████████████████████▎  ┫ 907/1.0k [01:19<00:08, 11it/s]

2.428145e-04 90.8%┣██████████████████████████▍  ┫ 909/1.0k [01:19<00:08, 11it/s]

2.422054e-04 91.0%┣██████████████████████████▍  ┫ 911/1.0k [01:19<00:08, 11it/s]

2.414574e-04 91.2%┣██████████████████████████▌  ┫ 913/1.0k [01:19<00:08, 12it/s]

2.404756e-04 91.4%┣██████████████████████████▌  ┫ 915/1.0k [01:19<00:07, 12it/s]

2.396114e-04 91.6%┣██████████████████████████▋  ┫ 917/1.0k [01:19<00:07, 12it/s]

2.387859e-04 91.9%┣██████████████████████████▋  ┫ 920/1.0k [01:19<00:07, 12it/s]

2.383670e-04 92.1%┣██████████████████████████▊  ┫ 922/1.0k [01:19<00:07, 12it/s]

2.373818e-04 92.4%┣██████████████████████████▉  ┫ 925/1.0k [01:20<00:07, 12it/s]

2.363511e-04 92.7%┣██████████████████████████▉  ┫ 928/1.0k [01:20<00:06, 12it/s]

2.356841e-04 93.0%┣███████████████████████████  ┫ 931/1.0k [01:20<00:06, 12it/s]

2.348257e-04 93.2%┣███████████████████████████  ┫ 933/1.0k [01:20<00:06, 12it/s]

2.339134e-04 93.4%┣███████████████████████████  ┫ 935/1.0k [01:20<00:06, 12it/s]

2.327948e-04 93.7%┣███████████████████████████▏ ┫ 938/1.0k [01:20<00:05, 12it/s]

2.318046e-04 93.9%┣███████████████████████████▎ ┫ 940/1.0k [01:20<00:05, 12it/s]

2.300128e-04 94.2%┣███████████████████████████▎ ┫ 943/1.0k [01:20<00:05, 12it/s]

2.289113e-04 94.5%┣███████████████████████████▍ ┫ 946/1.0k [01:20<00:05, 12it/s]

2.281867e-04 94.8%┣███████████████████████████▌ ┫ 949/1.0k [01:20<00:04, 12it/s]

2.277954e-04 95.0%┣███████████████████████████▌ ┫ 951/1.0k [01:20<00:04, 12it/s]

2.270726e-04 95.2%┣███████████████████████████▋ ┫ 953/1.0k [01:20<00:04, 12it/s]

2.263099e-04 95.4%┣███████████████████████████▊ ┫ 955/1.0k [01:20<00:04, 12it/s]

2.254371e-04 95.6%┣███████████████████████████▊ ┫ 957/1.0k [01:20<00:04, 12it/s]

2.244820e-04 95.8%┣███████████████████████████▉ ┫ 959/1.0k [01:20<00:04, 12it/s]

2.232432e-04 96.0%┣███████████████████████████▉ ┫ 961/1.0k [01:20<00:03, 12it/s]

2.218690e-04 96.3%┣████████████████████████████ ┫ 964/1.0k [01:20<00:03, 12it/s]

2.207063e-04 96.6%┣████████████████████████████ ┫ 967/1.0k [01:21<00:03, 12it/s]

2.199899e-04 96.9%┣████████████████████████████ ┫ 970/1.0k [01:21<00:03, 12it/s]

2.191179e-04 97.2%┣████████████████████████████▏┫ 973/1.0k [01:21<00:02, 12it/s]

2.178662e-04 97.5%┣████████████████████████████▎┫ 976/1.0k [01:21<00:02, 12it/s]

2.163974e-04 97.8%┣████████████████████████████▍┫ 979/1.0k [01:21<00:02, 12it/s]

2.155143e-04 98.1%┣████████████████████████████▌┫ 982/1.0k [01:21<00:02, 12it/s]

2.147665e-04 98.4%┣████████████████████████████▌┫ 985/1.0k [01:21<00:01, 12it/s]

2.142016e-04 98.6%┣████████████████████████████▋┫ 987/1.0k [01:21<00:01, 12it/s]

2.132858e-04 98.9%┣████████████████████████████▊┫ 990/1.0k [01:21<00:01, 12it/s]

2.126221e-04 99.2%┣████████████████████████████▊┫ 993/1.0k [01:21<00:01, 12it/s]

2.121577e-04 99.4%┣████████████████████████████▉┫ 995/1.0k [01:21<00:00, 12it/s]

2.116197e-04 99.6%┣████████████████████████████▉┫ 997/1.0k [01:21<00:00, 12it/s]

2.108262e-04 99.8%┣█████████████████████████████┫ 999/1.0k [01:21<00:00, 12it/s]

2.102220e-04 100.0%┣███████████████████████████┫ 1.0k/1.0k [01:21<00:00, 12it/s]