# params = (ρ = 0, verbose_iter = 100, maxiter = 10000, save_results = true, save_images = true, save_images_iters = Set([5, 10000, 3000, 30, 5000, 1000, 1, 6000, 300, 2000, 2500, 7000, 3, 8000, 9000, 500, 25, 50, 7500, 2, 10, 4000, 250, 100]), pixelwise_displacement = false, dual_flow = true, prox_predict = true, handle_interrupt = true, init = :zero, plot_movement = false, stable_interval = Set([4986, 4700, 3634, 4576, 4901, 9676, 9923, 4522, 9773, 3406, 3672, 2841, 8908, 9835, 2876, 4978, 9802, 3337, 4136, 4150, 3293, 3220, 4888, 4030, 3324, 3982, 3298, 3646, 3719, 9614, 4011, 8897, 3855, 3111, 4584, 4081, 3163, 3914, 9523, 4582, 9306, 4687, 2989, 3762, 4021, 4357, 3408, 9883, 9266, 4962, 9387, 9909, 3326, 9439, 3711, 2874, 4738, 4836, 4464, 3271, 9776, 4587, 9329, 9152, 9956, 3319, 4527, 2746, 9246, 3943, 3292, 4238, 3651, 2920, 4720, 9374, 2570, 9593, 2783, 4811, 3105, 9277, 8714, 8845, 9816, 3570, 4169, 8723, 3288, 4548, 9175, 9168, 9618, 4910, 3557, 8918, 9164, 3382, 8769, 3937, 3338, 2982, 4282, 4951, 4764, 9464, 3044, 4817, 9558, 9698, 3587, 9070, 2775, 9318, 8928, 3628, 4783, 3167, 4272, 9319, 3089, 3135, 2932, 9667, 4243, 9448, 3938, 3423, 4803, 2999, 4051, 4672, 4280, 2684, 4392, 4232, 8974, 8915, 3728, 3148, 4383, 4644, 3809, 9126, 9433, 3617, 4342, 4961, 9710, 4060, 9852, 9960, 9440, 4918, 8751, 9117, 4151, 9701, 2713, 3571, 3722, 3507, 4156, 9165, 3140, 9521, 9489, 2724, 4984, 3362, 8776, 3526, 9045, 9524, 8998, 9054, 3063, 9820, 9345, 3792, 9513, 4126, 4229, 4413, 3450, 9859, 4172, 3043, 3052, 4329, 3835, 3015, 3856, 3815, 2536, 4756, 3691, 4153, 3495, 4796, 2863, 8824, 4352, 2901, 4923, 3008, 9477, 3877, 2895, 3979, 9535, 8930, 2748, 4125, 3614, 4643, 3092, 9902, 4105, 4945, 2756, 9517, 9888, 4649, 4017, 2983, 3844, 4726, 8935, 4826, 4682, 9938, 9851, 4343, 9869, 2504, 2761, 3696, 9566, 2978, 9791, 4663, 9365, 9429, 3115, 9401, 4757, 3172, 9567, 9125, 8705, 3690, 9344, 3080, 2692, 9097, 3965, 9661, 3334, 4991, 2682, 3359, 3447, 4953, 4515, 4658, 9490, 3242, 2979, 3817, 8811, 8784, 9845, 9317, 9382, 2541, 4531, 9592, 3931, 8766, 9103, 9393, 2950, 3926, 9452, 4189, 3396, 2556, 9497, 3471, 9058, 4117, 4045, 3702, 2571, 9629, 3340, 3344, 4377, 9785, 3347, 4896, 9903, 3192, 4772, 4326, 3616, 4877, 8721, 9836, 9925, 4824, 9981, 3322, 3380, 3773, 3806, 3110, 8836, 9552, 3356, 9511, 9238, 8861, 9258, 9953, 2518, 8823, 9231, 8822, 9917, 4606, 9793, 2617, 3021, 3117, 4206, 2714, 8973, 9189, 2927, 9968, 3463, 9663, 4003, 2510, 8916, 3289, 4443, 4878, 4558, 4066, 4354, 9123, 3519, 9901, 4037, 2691, 4147, 4610, 8762, 2672, 2628, 3917, 9331, 9986, 4840, 2896, 8742, 3870, 4145, 8826, 4141, 4400, 4088, 2853, 9683, 3385, 3307, 8967, 3641, 8704, 8910, 2935, 2608, 4317, 4000, 3784, 4471, 4786, 9904, 2803, 4597, 8785, 9606, 3508, 3438, 4842, 8715, 8934, 3599, 9060, 3566, 4513, 4998, 8825, 2813, 9864, 2574, 2609, 3156, 2852, 4749, 8980, 4220, 4712, 3265, 3056, 3837, 4018, 4371, 2650, 3309, 3697, 4375, 2997, 2641, 3609, 8707, 3037, 3038, 3990, 3759, 4847, 9763, 9005, 9035, 4267, 8865, 3407, 3118, 3267, 3971, 9473, 2871, 4473, 3649, 9009, 9179, 4958, 4444, 2633, 2758, 3737, 4054, 9565, 4058, 9127, 3352, 9326, 2652, 4758, 4380, 8757, 4165, 2946, 3764, 4630, 4605, 2925, 2788, 4737, 9449, 9406, 2683, 9745, 4499, 9732, 9586, 4264, 8759, 2595, 8743, 9147, 3235, 9316, 9974, 2632, 2604, 9185, 2802, 9538, 2688, 2809, 9679, 2915, 3505, 3247, 9685, 9178, 9648, 3460, 3274, 2585, 2719, 3832, 4115, 4364, 4541, 8708, 3188, 4883, 3501, 8728, 4478, 4743, 3291, 4414, 9403, 9514, 4071, 9105, 4476, 2666, 9151, 2637, 4419, 8740, 4965, 9867, 8989, 4294, 9982, 2859, 4210, 2884, 3429, 8821, 3880, 9815, 2513, 4812, 4839, 3882, 3686, 9729, 2557, 9598, 9717, 9008, 3622, 4594, 4699, 9788, 3861, 4075, 8867, 2767, 8717, 9577, 2988, 4200, 4905, 2521, 2612, 2796, 4235, 2855, 3905, 9537, 9935, 9599, 3077, 3625, 8932, 9597, 4434, 9463, 3955, 2695, 9024, 3901, 4087, 3684, 9106, 3346, 9442, 2711, 3387, 3692, 4052, 4529, 4062, 3399, 9796, 3541, 3087, 9850, 4526, 3862, 4791, 3579, 8877, 9754, 9346, 4916, 3026, 4092, 8933, 4297, 4602, 9792, 4754, 3099, 4585, 9531, 4580, 2829, 8755, 9846, 3164, 4488, 9206, 4307, 9525, 4048, 9879, 9352, 3070, 4568, 4850, 9296, 9114, 2611, 9515, 4437, 4224, 3775, 4532, 4255, 8767, 9978, 9080, 2833, 9209, 9409, 3744, 8831, 3238, 9066, 2514, 4103, 4121, 2638, 4885, 9313, 9158, 9719, 4174, 4912, 4882, 2717, 2739, 9195, 9212, 3160, 8947, 2971, 9684, 3769, 3493, 9828, 3534, 3360, 3707, 3584, 3807, 3480, 4907, 9510, 3120, 4939, 4859, 8712, 3567, 3585, 2839, 3143, 4547, 9484, 9079, 3954, 9170, 3335, 2872, 2851, 4714, 9801, 4236, 9549, 9056, 3130, 4854, 9875, 4729, 9761, 9481, 9384, 3547, 2969, 2916, 3012, 9116, 9254, 3627, 9459, 4891, 4429, 3132, 9093, 2551, 2720, 9756, 3708, 3398, 4253, 3823, 3799, 9987, 4468, 2965, 3748, 3522, 2575, 9017, 3863, 3282, 3142, 9780, 9027, 3725, 3228, 4566, 4970, 9016, 2731, 3517, 9394, 8945, 4181, 3621, 3357, 3145, 4806, 8725, 8862, 9007, 4296, 2600, 3798, 4248, 9680, 4963, 3328, 8800, 9797, 4875, 9309, 9942, 9572, 3186, 8837, 4474, 4727, 4360, 4999, 4005, 9417, 9767, 3314, 2569, 3055, 3144, 9817, 9999, 4134, 9637, 4241, 9204, 3442, 9973, 2500, 2808, 4871, 8942, 3091, 9420, 4072, 4971, 2958, 9854, 4016, 9194, 3787, 9068, 2791, 2827, 3152, 4239, 3234, 4716, 9555, 4410, 2785, 3660, 4709, 4446, 4619, 9813, 3187, 4788, 2512, 4378, 9918, 3561, 3138, 4575, 2986, 9623, 9498, 9996, 4265, 4964, 9702, 9424, 4110, 8955, 9249, 3896, 9894, 9361, 4827, 4942, 9990, 3518, 8711, 3996, 4830, 3721, 3456, 3009, 2834, 4295, 3818, 8750, 4881, 2930, 3829, 2923, 8894, 3112, 3046, 3667, 9748, 4430, 4904, 9135, 4753, 9880, 9455, 9446, 9176, 4039, 2768, 9285, 4656, 4833, 3401, 4521, 4717, 9800, 9980, 3200, 4654, 2806, 4642, 2663, 3283, 9583, 9916, 4631, 4518, 9569, 3185, 4674, 4973, 9724, 4006, 9362, 9144, 4440, 4492, 9881, 4114, 2552, 4708, 9688, 9764, 3214, 3086, 9458, 4084, 4887, 3932, 4480, 4283, 9335, 4723, 2562, 4320, 4763, 4222, 2567, 4124, 2942, 3327, 4315, 3315, 4992, 9076, 9321, 4591, 3678, 8913, 9993, 3589, 9853, 3565, 3854, 4586, 9516, 2618, 9694, 2875, 4809, 3594, 9081, 9260, 9560, 3998, 8978, 4853, 9210, 3126, 4183, 9681, 9777, 3027, 4167, 4192, 9325, 3867, 2674, 9343, 3846, 3446, 3202, 3626, 4186, 4805, 2821, 4211, 8828, 4482, 2693, 4316, 4127, 9696, 9348, 4422, 9622, 3778, 4624, 3910, 3911, 3215, 2592, 4692, 9678, 4609, 3913, 9376, 2781, 3665, 4026, 8805, 8995, 9795, 9405, 3256, 2643, 8969, 4178, 2667, 9871, 9082, 2614, 3884, 8846, 8833, 4249, 4928, 3486, 3777, 2762, 3969, 4615, 8791, 4113, 2565, 4242, 8956, 9723, 9486, 3107, 4502, 9369, 4702, 9122, 3454, 2964, 3895, 3802, 4370, 4678, 2847, 9183, 9349, 2635, 4207, 9811, 2838, 4822, 4509, 4040, 9363, 2743, 3203, 9930, 2858, 4425, 2745, 9536, 3169, 3772, 3833, 2938, 4832, 9115, 3182, 9542, 4603, 3987, 9738, 3391, 3597, 9908, 3162, 2766, 8780, 8996, 9447, 4903, 4914, 8911, 9059, 2782, 4069, 8888, 8733, 4974, 9905, 3716, 4002, 4677, 4356, 4322, 3183, 3662, 9553, 9269, 9133, 4765, 9261, 2553, 2967, 8752, 4937, 3637, 4771, 9826, 9895, 9740, 4581, 9759, 9715, 9931, 4902, 9966, 4009, 3379, 9615, 4661, 4728, 9201, 8987, 9327, 9395, 3069, 9954, 9428, 9855, 9617, 2505, 2528, 2898, 9337, 8793, 3417, 4313, 9263, 9274, 3537, 3440, 9779, 3064, 3224, 2828, 3331, 4968, 4676, 9095, 4203, 2770, 3709, 4694, 2991, 3992, 4279, 4417, 3261, 9100, 3195, 9794, 9847, 3161, 9046, 3623, 2976, 8853, 9052, 9575, 9714, 9487, 3650, 3553, 3741, 9229, 9025, 8842, 2751, 9783, 9582, 3735, 9873, 4157, 9613, 8991, 9075, 4162, 3191, 3040, 3481, 4519, 9602, 4683, 9962, 4258, 9166, 9653, 4426, 4180, 4787, 9574, 3285, 3659, 2564, 9136, 9522, 8872, 3562, 9399, 4244, 4995, 3894, 3897, 4259, 8976, 3532, 4593, 3959, 9419, 2694, 9988, 9798, 8949, 9787, 2596, 4675, 3780, 3824, 4382, 2728, 9436, 4790, 2747, 3017, 8874, 9311, 9849, 2588, 2704, 4020, 4158, 9023, 9205, 3888, 2703, 4767, 2735, 2888, 4004, 3763, 8965, 3906, 3088, 3257, 4715, 3325, 4941, 3262, 3790, 4465, 4057, 9211, 4401, 3268, 4412, 8722, 3084, 4076, 9899, 9961, 9713, 3732, 3618, 9770, 4555, 3402, 9682, 4608, 9233, 9824, 4184, 9563, 3194, 8706, 2945, 9509, 3270, 9652, 4335, 3045, 3428, 9143, 4273, 3081, 3488, 4442, 9502, 9656, 4449, 3723, 9368, 4386, 3244, 3339, 3223, 3640, 4338, 4523, 4815, 4943, 3834, 3409, 3073, 3246, 4148, 9279, 9283, 3159, 8718, 3991, 3237, 2544, 9063, 9474, 3278, 9015, 4245, 3964, 4177, 3774, 9391, 3916, 4900, 4097, 4573, 4083, 9893, 4793, 2606, 3742, 4373, 4472, 2715, 3724, 3065, 4752, 3836, 4312, 3843, 2926, 3632, 4333, 4397, 4895, 3312, 4849, 9708, 4860, 9499, 3123, 4458, 4358, 3419, 9034, 9378, 8927, 3873, 3208, 9590, 4779, 8858, 3779, 9646, 4302, 8903, 4744, 3306, 4761, 4843, 3545, 9077, 3639, 9700, 9336, 3248, 2832, 9412, 4292, 8914, 3412, 4934, 2790, 9967, 2668, 2826, 3528, 9760, 4696, 2933, 4493, 9019, 9220, 9579, 4740, 2502, 4616, 3781, 4129, 3730, 3543, 9657, 9781, 9213, 3100, 3752, 2598, 9655, 3007, 4305, 9541, 9940, 9255, 3866, 2992, 4969, 9878, 4932, 3050, 3478, 2529, 8709, 8883, 3701, 3604, 3838, 2940, 3444, 3921, 9389, 4398, 4303, 3333, 4351, 4774, 9132, 4196, 2577, 2673, 4735, 8732, 4456, 4814, 4470, 8979, 9612, 3513, 9642, 9877, 3999, 9053, 9043, 3386, 9339, 9782, 8924, 3970, 3516, 4416, 4029, 2880, 4274, 4604, 2550, 4467, 2658, 9067, 2649, 4281, 8939, 3177, 3168, 9475, 3239, 2886, 4122, 2581, 3451, 3661, 3668, 9253, 4792, 9705, 4252, 9021, 9099, 9778, 3427, 8950, 4789, 4346, 3521, 4368, 3468, 4055, 8902, 9844, 2737, 2830, 3355, 3656, 4171, 3860, 2819, 3902, 4655, 3476, 3629, 8957, 8835, 2689, 3552, 4144, 2849, 2944, 9998, 2644, 4966, 9111, 9454, 9355, 4256, 9607, 4967, 3575, 3303, 8775, 3230, 3958, 2548, 2955, 8720, 2970, 9444, 3290, 2773, 4008, 4844, 9742, 4825, 2943, 9271, 9102, 9128, 3219, 2744, 9300, 3694, 4987, 3462, 3949, 3994, 9889, 3254, 3467, 4310, 4639, 3869, 4500, 2815, 9771, 3151, 3673, 8905, 8819, 3102, 3889, 4794, 9357, 4111, 4173, 4080, 2616, 3103, 4574, 3887, 9697, 8849, 2622, 4501, 3263, 4334, 4228, 3768, 9418, 2887, 4670, 8892, 4719, 2994, 2755, 2753, 9083, 2857, 2710, 4569, 3619, 4732, 4778, 9250, 3891, 4420, 9862, 2549, 3054, 9827, 9031, 9372, 9150, 2699, 9379, 3822, 4647, 3733, 8959, 9528, 2885, 9914, 4625, 4308, 9160, 3879, 9964, 2626, 3392, 4485, 3302, 8820, 8863, 9749, 4477, 9733, 8730, 9441, 3795, 9674, 9431, 3189, 3612, 2947, 2659, 3136, 2525, 9280, 4331, 4909, 8701, 8789, 9227, 4865, 2538, 2867, 9351, 4278, 2879, 4195, 2584, 3383, 9959, 3893, 9937, 2572, 4680, 8756, 4028, 9422, 2685, 4463, 9751, 3029, 2972, 4831, 8841, 2846, 4394, 9660, 8895, 9768, 2877, 4182, 8735, 8982, 8765, 4254, 9544, 8854, 9884, 4561, 9829, 2881, 3924, 9920, 8839, 2968, 2837, 3904, 3758, 4415, 9601, 9295, 4460, 3682, 2646, 3390, 4516, 4023, 3388, 9651, 3849, 2597, 4013, 4179, 4212, 8881, 3746, 3497, 9200, 4160, 9268, 8777, 4846, 2922, 4611, 3395, 9808, 3349, 4684, 3430, 2591, 9892, 3057, 9265, 2778, 9333, 9314, 9668, 8860, 3789, 3127, 3975, 3133, 8997, 2698, 2890, 9293, 3512, 4219, 4452, 9485, 4022, 3432, 9746, 3564, 3685, 9312, 3147, 9434, 4407, 2835, 3367, 4353, 4538, 9308, 3907, 2729, 9949, 3472, 3062, 4695, 2542, 2909, 2656, 3615, 2524, 2687, 9262, 4251, 9292, 3368, 4266, 4669, 8953, 9927, 3134, 3431, 2509, 9171, 3714, 9896, 9943, 9036, 3227, 4590, 9556, 2647, 4975, 3085, 4116, 4168, 4408, 3950, 9156, 9627, 9946, 9138, 8880, 9699, 3414, 9585, 2836, 3993, 2517, 2631, 3226, 8922, 8788, 3674, 9807, 9897, 9182, 3782, 3814, 4930, 2627, 3944, 2547, 2948, 3598, 9774, 3671, 9472, 3755, 4099, 2900, 3989, 8840, 8960, 3939, 4086, 4919, 4038, 4540, 3853, 8961, 3974, 4033, 2716, 4318, 2615, 4065, 8864, 9805, 9984, 4931, 2985, 9120, 3718, 8898, 2508, 2697, 2545, 8802, 9087, 9235, 3372, 9239, 2580, 3946, 9437, 3287, 9706, 3919, 4543, 9415, 3500, 2593, 3437, 3706, 3676, 2630, 3277, 3900, 3643, 4997, 9639, 3592, 4497, 9476, 3502, 8782, 9247, 9014, 4130, 9245, 9671, 4486, 3857, 3494, 3225, 8971, 9529, 3093, 3166, 8852, 9218, 3966, 2995, 3384, 3734, 4920, 9186, 8871, 2527, 3683, 4260, 4204, 2587, 9728, 3514, 9030, 9533, 4506, 9167, 9610, 9690, 9140, 4454, 3601, 4838, 3378, 8844, 3473, 4988, 3705, 3174, 3631, 4135, 2844, 8774, 9145, 9568, 4807, 3006, 9970, 3930, 4653, 9303, 3608, 3232, 4348, 9457, 4876, 9675, 3433, 2546, 9248, 4623, 9812, 4393, 3981, 9370, 3655, 2501, 3258, 9762, 3794, 2566, 3540, 3153, 4628, 4143, 2586, 3524, 3071, 4851, 2702, 9101, 8724, 9591, 4748, 4475, 8984, 9975, 3549, 3366, 9507, 4535, 4570, 3317, 8891, 4972, 3963, 3218, 4484, 9971, 10000, 3765, 2670, 4487, 4855, 9332, 4077, 2893, 3483, 9695, 3363, 4926, 3158, 2954, 4024, 3915, 4441, 9334, 4563, 2732, 9230, 4217, 3754, 9890, 3510, 9084, 9221, 3404, 8792, 9822, 9856, 4372, 4852, 9004, 9832, 4577, 9711, 4713, 9064, 4507, 9259, 9404, 9356, 4225, 3441, 9720, 4213, 3791, 4202, 4944, 2856, 3119, 3652, 3245, 9425, 3364, 2951, 4275, 9237, 2738, 3176, 3122, 8999, 9377, 4588, 9645, 9644, 2845, 9139, 9562, 9721, 3058, 4287, 3731, 9018, 3020, 2602, 8921, 4762, 3677, 3381, 2824, 2861, 3206, 4286, 3713, 4746, 3053, 4770, 9273, 3803, 4285, 9091, 9636, 4892, 3729, 3504, 3743, 4629, 2866, 4214, 4404, 4332, 9347, 8783, 9821, 3470, 4776, 4327, 8988, 2949, 2734, 3095, 9320, 4193, 9172, 3786, 4246, 4101, 2787, 3067, 3014, 3940, 2953, 9315, 4381, 3157, 8801, 2765, 2862, 8737, 9032, 4450, 9570, 9727, 3757, 3740, 3648, 4455, 4952, 4652, 9527, 9085, 4498, 8907, 4007, 8807, 9664, 2961, 4578, 3394, 8884, 3859, 4562, 3602, 2654, 2905, 3956, 2690, 3574, 9806, 3770, 3000, 9121, 9341, 2957, 8726, 2573, 4336, 4025, 3033, 4868, 8886, 9301, 9467, 4731, 4889, 3851, 9354, 9530, 2675, 3825, 8876, 9089, 9939, 9948, 4703, 9848, 2996, 4046, 3657, 9410, 2924, 4589, 3198, 2526, 2709, 4906, 3297, 9842, 2883, 2561, 2657, 8890, 9236, 9364, 2804, 3530, 4799, 3068, 4323, 4894, 9501, 2624, 9804, 9945, 2975, 4504, 9858, 4191, 9616, 9040, 3886, 3196, 8806, 4240, 4034, 4512, 3365, 9322, 3201, 3568, 3828, 4898, 9162, 2919, 9026, 9451, 3923, 9396, 4925, 9456, 4890, 4698, 9716, 2620, 3350, 9289, 2795, 3059, 4250, 4648, 8906, 8741, 2579, 9834, 4557, 3128, 9224, 3016, 9997, 3181, 3370, 3858, 4311, 4989, 4533, 4457, 3972, 8964, 9074, 3903, 3259, 2582, 9775, 4319, 4324, 4742, 3279, 4528, 9119, 4665, 4015, 9049, 8878, 2621, 4617, 3465, 4955, 3461, 9919, 2727, 4095, 9494, 4298, 9936, 3083, 9001, 2921, 3121, 8813, 9198, 9941, 3681, 9256, 2966, 3165, 3509, 3868, 9217, 9388, 3819, 9207, 3593, 4959, 4163, 4858, 4431, 4537, 3453, 3205, 9483, 4466, 9039, 2952, 3700, 8710, 3973, 4710, 8923, 3986, 4300, 4927, 9693, 3962, 9900, 4534, 4828, 8843, 9397, 2607, 2941, 3644, 9098, 8904, 9911, 9000, 4223, 8889, 3019, 8770, 9609, 3253, 9366, 9090, 3550, 3850, 9020, 3922, 2558, 3001, 4546, 9564, 4447, 9423, 2998, 3525, 8703, 4395, 8925, 4044, 4049, 4990, 2776, 2963, 3658, 3925, 9866, 2990, 9413, 3252, 9264, 4862, 3928, 4433, 3693, 9350, 8966, 3977, 4027, 2540, 2911, 3852, 9550, 9709, 9033, 2769, 3124, 9208, 3496, 4362, 9491, 9159, 3255, 3358, 3680, 4306, 4545, 4747, 4689, 3345, 3909, 9353, 8879, 4064, 3801, 4091, 4947, 8851, 4977, 9038, 8946, 3039, 2662, 4636, 2678, 3620, 3449, 4818, 9381, 9050, 4804, 3751, 9557, 4688, 9299, 8754, 3082, 8917, 4284, 8838, 4291, 2700, 2757, 4208, 4880, 4618, 9191, 3703, 4423, 9288, 3393, 8758, 2934, 2956, 4634, 3276, 3613, 4819, 4668, 4137, 2973, 9526, 2814, 2539, 3243, 4096, 9972, 9225, 9958, 4869, 3179, 2873, 3420, 8963, 4390, 3318, 8764, 3353, 4848, 3576, 9924, 9744, 2812, 3556, 4376, 9650, 9580, 4983, 3375, 4870, 2676, 3821, 9496, 9741, 9587, 3229, 4795, 2563, 4954, 9913, 3170, 8731, 8931, 3952, 3010, 9222, 2801, 2583, 9872, 3269, 9965, 2648, 2816, 4768, 4637, 2870, 3933, 4524, 4583, 9735, 4550, 4194, 4483, 4705, 9534, 4421, 9784, 3788, 4154, 4508, 2578, 3727, 4226, 9863, 9758, 9672, 3116, 9088, 3209, 4981, 9243, 3452, 9505, 9882, 3590, 9604, 2708, 4980, 3607, 2899, 9736, 3747, 9985, 3920, 9398, 2741, 4718, 8739, 4112, 4175, 9276, 9665, 9244, 3753, 3499, 3421, 8744, 9055, 4641, 4985, 9837, 4915, 4659, 3022, 9069, 9725, 9298, 9951, 9643, 3582, 9426, 3793, 4262, 3569, 8799, 9304, 9003, 4402, 9216, 2664, 9547, 3538, 9929, 4751, 8812, 3633, 9631, 3041, 2660, 4277, 9620, 9933, 4237, 9823, 9012, 4940, 3079, 9704, 4681, 4571, 3249, 4359, 9750, 8803, 4517, 2794, 2842, 9722, 4823, 4459, 3300, 4107, 3004, 3104, 4014, 4188, 8929, 9630, 9666, 4257, 8772, 2800, 4491, 4063, 8870, 9006, 3011, 9154, 3883, 3983, 9184, 9886, 8983, 9044, 9540, 9673, 3030, 4330, 8798, 9726, 9173, 3294, 3171, 4366, 4539, 4821, 8700, 9242, 9275, 4462, 4922, 9833, 4428, 3260, 9860, 2962, 8781, 4365, 3222, 9619, 3826, 2771, 2679, 3812, 3489, 4620, 3527, 3985, 3457, 2848, 3280, 3756, 9952, 9471, 8746, 8797, 3957, 3726, 4205, 4276, 9632, 9921, 4019, 2619, 4551, 3301, 4913, 3295, 8794, 4396, 8941, 9504, 2831, 9188, 8958, 9730, 9977, 4131, 8977, 4556, 4957, 9432, 4411, 8944, 8716, 4388, 3075, 2823, 9743, 3491, 3736, 9503, 4554, 9305, 2645, 9092, 3193, 3811, 9037, 8856, 4686, 2686, 4982, 3839, 2671, 3342, 4837, 9146, 2910, 2531, 8768, 9625, 3797, 3624, 4640, 2977, 2928, 3539, 3190, 2706, 2763, 3076, 3642, 4050, 9488, 3988, 4355, 2532, 3704, 3096, 4339, 4079, 4711, 2603, 8808, 3712, 4345, 9581, 2810, 9790, 2891, 9991, 2740, 3885, 4960, 2535, 4304, 4979, 9359, 9559, 3320, 4427, 3664, 3595, 4600, 3610, 9757, 3827, 3094, 3881, 3479, 9141, 9868, 9392, 4155, 8986, 3654, 8868, 9129, 4690, 2818, 9839, 2707, 4369, 9983, 3464, 2661, 3942, 9786, 3558, 9686, 4646, 3299, 3321, 2820, 3783, 4379, 8900, 9624, 9659, 2629, 3560, 3929, 4866, 9669, 3647, 3813, 2730, 9461, 9232, 4461, 9324, 9963, 2929, 3023, 3531, 9640, 3275, 3840, 4187, 8855, 8702, 4736, 3426, 2601, 8920, 4560, 2705, 4047, 4271, 4432, 4132, 8968, 4120, 9691, 9737, 3750, 4094, 3968, 4073, 8847, 4363, 4635, 4938, 3573, 4956, 9286, 2984, 8885, 3715, 3842, 4218, 9512, 9825, 3669, 4391, 3024, 9647, 4190, 9270, 4053, 4777, 8796, 2515, 4864, 8817, 2594, 4657, 3490, 9635, 3351, 3424, 4845, 8975, 9500, 4784, 4802, 2903, 4721, 3042, 3830, 3710, 4061, 3443, 9435, 9062, 3371, 4775, 9373, 8936, 8912, 4673, 4031, 8940, 4666, 9022, 4289, 9628, 4685, 2749, 4140, 9163, 9658, 9712, 3484, 2722, 3761, 2523, 3875, 5000, 4873, 4123, 4542, 4109, 4911, 9772, 9284, 2610, 3207, 4780, 8857, 4924, 8952, 8859, 2506, 9470, 3572, 9011, 9789, 2677, 3180, 3336, 3341, 3425, 4781, 4667, 4707, 9252, 4579, 4098, 9922, 9202, 8832, 2981, 4059, 8810, 3032, 3675, 2726, 4494, 3002, 2840, 3251, 3308, 9072, 9584, 3373, 3745, 3831, 9573, 8736, 2560, 3536, 9241, 4451, 3139, 8818, 9199, 9302, 9482, 3264, 4769, 4221, 9578, 8875, 9548, 2792, 3150, 2825, 4438, 4216, 4834, 9870, 9753, 4996, 3025, 4445, 3376, 3405, 9407, 4626, 4808, 4627, 9226, 4409, 9310, 4231, 9375, 9465, 3487, 2701, 2516, 4387, 2534, 3154, 9915, 3114, 9561, 9219, 4697, 4215, 9492, 9932, 9240, 2543, 2725, 3149, 3485, 4230, 2760, 9554, 4453, 9934, 4917, 3129, 2640, 3078, 3231, 9641, 9402, 9532, 9689, 2904, 3876, 9976, 3580, 3653, 9421, 2936, 3101, 4309, 4439, 9495, 8993, 4599, 2897, 3332, 2653, 4722, 9358, 9589, 9177, 3927, 3533, 4549, 3286, 4950, 2918, 3109, 3984, 3113, 4553, 2519, 9876, 9649, 9042, 4510, 4782, 3600, 9113, 3455, 8909, 3611, 8896, 2764, 9234, 2774, 9197, 4632, 8962, 4933, 3892, 9278, 4520, 3377, 9110, 9169, 3699, 4261, 9367, 9380, 9843, 9291, 9944, 4857, 2902, 3250, 3908, 4595, 8848, 4525, 8747, 4139, 4872, 4874, 4633, 2793, 9002, 9926, 3544, 3874, 9061, 9891, 9469, 9654, 9109, 3635, 3845, 8727, 3036, 3666, 9148, 2639, 9330, 3305, 3720, 4119, 4899, 9576, 4436, 4936, 8761, 8763, 4879, 3090, 3173, 3934, 2892, 9187, 4544, 9438, 3003, 8887, 2634, 9340, 9588, 9605, 2914, 3695, 3995, 8994, 9865, 3416, 8985, 4638, 9928, 4622, 2843, 3155, 3596, 8866, 8938, 9287, 9414, 2613, 3563, 4435, 9400, 9181, 4090, 3918, 3630, 3766, 4089, 4337, 3389, 3948, 4406, 4142, 4867, 2777, 3211, 3415, 9910, 4592, 9149, 4010, 9294, 9752, 4861, 2754, 9107, 4481, 3474, 4730, 2712, 4503, 4530, 2623, 3137, 4166, 9803, 3348, 3397, 8937, 9731, 2908, 3890, 4706, 8970, 4106, 9480, 4399, 4621, 3434, 4863, 9621, 4263, 8899, 2865, 2869, 3108, 3871, 3477, 8954, 9137, 2723, 4350, 3506, 8719, 9460, 4835, 3354, 9155, 9131, 4946, 4290, 2894, 4651, 4810, 2752, 4976, 9157, 9048, 4816, 9818, 2889, 3343, 9281, 4479, 3670, 2987, 3072, 3980, 9545, 9251, 2807, 3400, 9906, 3767, 4384, 9112, 3588, 9371, 3978, 4234, 9600, 9638, 3760, 3717, 9297, 4601, 3535, 8981, 9670, 9360, 2718, 4893, 9051, 2817, 4043, 8745, 3061, 9078, 9071, 3872, 8926, 9161, 3212, 4650, 9453, 2882, 9769, 3361, 3498, 3146, 3418, 3796, 8760, 3899, 3178, 4349, 2520, 3936, 2917, 2868, 2589, 4662, 3197, 3175, 9912, 9190, 3369, 3131, 9662, 3583, 3210, 3125, 4227, 4138, 9466, 4750, 4068, 4511, 4829, 3458, 2780, 4036, 3638, 3217, 4321, 8734, 3941, 4001, 2665, 4856, 4067, 8773, 4514, 4886, 9898, 9118, 9603, 3820, 3272, 4921, 4755, 9633, 4660, 2993, 3048, 2811, 9887, 3912, 4405, 8779, 8943, 9520, 4152, 9692, 4198, 4536, 3864, 8830, 9857, 2651, 4403, 9626, 3961, 4741, 9385, 4185, 9992, 9174, 9519, 2864, 3689, 3413, 9608, 9290, 4613, 4935, 3304, 3241, 2937, 9546, 3013, 3313, 3945, 4908, 4701, 4766, 9214, 4341, 3141, 3810, 4199, 9257, 3603, 3233, 4424, 2906, 4679, 9830, 4164, 3060, 3785, 9594, 3310, 4247, 9831, 3967, 9124, 2786, 3448, 3184, 9634, 9104, 9543, 9383, 2822, 3051, 4448, 4490, 9707, 4268, 4596, 2599, 8814, 3466, 9096, 4948, 8869, 3410, 4100, 9739, 9765, 3329, 9342, 2797, 3739, 4161, 8893, 3221, 4102, 8919, 9390, 3035, 3213, 3577, 3236, 4361, 9506, 9809, 3808, 4505, 9841, 4469, 2559, 9338, 9969, 8809, 3546, 9718, 4133, 9228, 4042, 2507, 3411, 9947, 8901, 4209, 8790, 3047, 3947, 3482, 9450, 9130, 4041, 4118, 2530, 3679, 4314, 4801, 3459, 8748, 9180, 9995, 8816, 3520, 2939, 3953, 9950, 9955, 4299, 3848, 9416, 3475, 8850, 2511, 3034, 3800, 2568, 2721, 9386, 9687, 3771, 3898, 9108, 4800, 2931, 8827, 8948, 8729, 3492, 9073, 3311, 4104, 4785, 8951, 2680, 2912, 3018, 4820, 2554, 8873, 4085, 3636, 4489, 9571, 9747, 4035, 3439, 4559, 2681, 3296, 4176, 3976, 4993, 4949, 4760, 9907, 3688, 3316, 4093, 4367, 3445, 4813, 8778, 3605, 8990, 9134, 9799, 3551, 9028, 3559, 9677, 3663, 4645, 3031, 8786, 9328, 4607, 4344, 4385, 9445, 4773, 2537, 3542, 9065, 3841, 2742, 9307, 4797, 2503, 2733, 3878, 4552, 4170, 3284, 3435, 9734, 4733, 3997, 3529, 2878, 2576, 4671, 4745, 4288, 9323, 9838, 3199, 8804, 2772, 4614, 3503, 9595, 3049, 9010, 3586, 4128, 9057, 9013, 8882, 9267, 9468, 3865, 4078, 4565, 9223, 4841, 2779, 4725, 3266, 3554, 4374, 8815, 2907, 2590, 2913, 9203, 9029, 4693, 4347, 9193, 4056, 9427, 8829, 3951, 2605, 2850, 4340, 4572, 9703, 4994, 3005, 9282, 9041, 2959, 9979, 9508, 8738, 2789, 2696, 8771, 9766, 3804, 2860, 4664, 2555, 4032, 9611, 4012, 4108, 4325, 4389, 2533, 3074, 3581, 3749, 3776, 4495, 4567, 4691, 4884, 4897, 9192, 2974, 3935, 2798, 3330, 4082, 2522, 9814, 9874, 4739, 2805, 4328, 4293, 9596, 9086, 9994, 8787, 8753, 9411, 9493, 4201, 9478, 3240, 4734, 9819, 4197, 3066, 3204, 3738, 9957, 9153, 9408, 2759, 2736, 3469, 4564, 3645, 3436, 3523, 4070, 4269, 8795, 2636, 3511, 9810, 3097, 8713, 9430, 9989, 4149, 3606, 4146, 9196, 9142, 3281, 9443, 9861, 2642, 3578, 9551, 3098, 2854, 2655, 4798, 3323, 3687, 4612, 3403, 9272, 8972, 3816, 2980, 4074, 4929, 8749, 3548, 8834, 3106, 2750, 4704, 9518, 9462, 2669, 9047, 4270, 2960, 4598, 3374, 3805, 4418, 9094, 9479, 3273, 3216, 9840, 9539, 3960, 2799, 2625, 2784, 3698, 4759, 9885, 3515, 3422, 9215, 3028, 3555, 4233, 3591, 9755, 3847, 4724, 4496, 4159, 8992, 4301]), noise_level = 0.5, shake_noise_level = 0.025, shake = 2.0, α = 0.2, ρ̃₀ = 1.0, σ̃₀ = 1.0, δ = 0.9, σ₀ = 1.0, τ₀ = 0.01, save_prefix = "img/lighthouse200x300_pdps_known_rotation_20_10000_100", dynrange = 1.0, Λ = 1.0)
iter	time	function_value	psnr	ssim
1	1.1665979400277138e-5	17010.60981203518	4.935377882355947	0.010713389784152977
2	0.0058933739783242345	16957.269247330314	4.998273477793603	0.019963184242795716
3	0.0100874149648007	16796.535152519362	5.0552094878979705	0.030672355578776345
4	0.016010539955459535	16717.933597236613	5.134344443753277	0.04340605095617018
5	0.0211171229602769	16563.83212576386	5.21302843336576	0.05239181755896977
6	0.028122955962317064	16324.733216814668	5.299314128453847	0.06336357637398685
7	0.03564366398495622	15997.176440642923	5.400693664354997	0.07293268835172154
8	0.04187357999035157	16024.045478132375	5.499434393277422	0.08089210352419995
9	0.04749924599309452	15903.82903410132	5.573581535910027	0.09681226768866369
10	0.052918246015906334	15548.742602702048	5.653822194105835	0.1010791744110165
11	0.05757070402614772	15501.349395938454	5.749252139999921	0.11670492489870118
12	0.0636387460399419	15287.098177994754	5.860517068048933	0.12240983623260109
13	0.06955307902535424	15111.882069737021	5.923063322731754	0.13069417633154018
14	0.07807420400786214	14943.6531649254	6.031794184746282	0.14358281024479844
15	0.08300182901439257	14711.757239142917	6.152599353732066	0.15028235827057676
16	0.09035578698967583	14689.589551297027	6.216136622436047	0.16683640080912465
17	0.09523420399636962	14577.734809198468	6.312455465540533	0.1686636302932001
18	0.10155928699532524	14429.615456010697	6.4169062987444985	0.17587494799195103
19	0.10665678698569536	14228.036627320056	6.479138950267357	0.1878490944770629
20	0.11233395399176516	14067.880770760916	6.54410628694958	0.2038202661711822
30	0.18094478698913008	12923.999048167463	7.460223858256905	0.278627471640622
40	0.2577787449990865	12115.738896476709	8.25824342900581	0.3714681815396256
50	0.33160570400650613	11175.631444915423	9.097669034161825	0.42240031185246774
60	0.40310232900083065	10610.529112073764	9.846188771963917	0.4313892421144876
70	0.47352257900638506	10133.407897325416	10.670037260073599	0.5102673763684822
80	0.5496873289812356	9683.298347781094	11.444907532242365	0.5045269267242886
90	0.6263507039984688	9233.589947353623	12.249769743482641	0.5615313693910293
100	0.6955080379848368	8951.596077584763	12.982365527434203	0.607391409943411
110	0.7641968709940556	8864.662819296693	13.663698770979256	0.5998753322467112
120	0.8355818709824234	8711.711796815518	14.422845598341162	0.610137831047127
130	0.9117597459699027	8483.199800781305	15.117434791060482	0.61209271216068
140	0.9838960789784323	8393.136155992956	15.757450863421834	0.6023734389860889
150	1.0561057879822329	8212.025040643062	16.354327360345913	0.616233840128616
160	1.1290902879845817	8168.664615947546	16.983494978658292	0.6191563155641852
170	1.2027262879710179	8185.7185353769655	17.33747717456536	0.6023937851333159
180	1.2774720379675273	8089.782181376659	17.76127685071774	0.5908049225634185
190	1.3533883299678564	8053.6156689576965	18.032058692877563	0.5671187133881344
200	1.4416179549589287	7953.107471369151	18.514748280382157	0.581834146296827
300	2.2197995799651835	7801.315744747867	22.458530235275443	0.6715260024660531
400	2.9571137889579404	7748.900277444891	22.630988854819986	0.6791723134319078
500	3.6943163719552103	7683.631729351341	23.018225758307143	0.6945201705307553
600	4.458152913954109	7808.932548599239	22.34739301720446	0.6373787950303524
700	5.189189746975899	7663.4297430239085	23.7404417856948	0.7065087515212756
800	5.905821746971924	7704.309487534995	22.81764180564844	0.7459022315487441
900	6.618991163995815	7705.1826266361895	22.31701529892911	0.711816839292805
1000	7.335477788990829	7722.960632439753	22.456271733343954	0.7809980493830307
1100	8.04031203899649	7731.452789034261	23.9596825646927	0.7776689876639352
1200	8.805719580996083	7711.142267214088	23.4949360829356	0.7347162724099969
1300	9.534770039987052	7836.087205950493	19.447483180502005	0.6990487707262889
1400	10.2761368729698	7810.653924673163	20.676841645227874	0.6997692090409146
1500	10.99573670697282	7559.875059755109	25.837313176417727	0.757122244011189
1600	12.023438206961146	7660.758630792936	23.59480724516658	0.6767111517941836
1700	12.744133039959706	7742.926548764857	24.30209796592355	0.7291272068004956
1800	13.461614998959703	7596.197872881636	25.31045891980009	0.7835396745461712
1900	14.414920832961798	7719.347719231954	21.72854510941361	0.6848244415839478
2000	15.324720582953887	7649.038413128641	24.290034286267556	0.7502605317608417
2100	16.062473373953253	7696.103315922631	23.395183713987375	0.7551394181519381
2200	16.77471116493689	7581.341941350032	25.261117731651265	0.7793275678844858
2300	17.48640687292209	7708.932910093499	23.717980534987145	0.7213569926736827
2400	18.20277420594357	7588.826814683032	26.524413449792856	0.7745881821501721
2500	18.934685997955967	7657.82672059648	24.211669252180602	0.7648286554053747
2600	19.663096372940345	7541.946127876794	27.550011067140012	0.8093816221699623
2700	20.391214289935306	7530.158554532128	28.453864332998457	0.8159651226946395
2800	21.124507372936932	7585.390856651825	28.714525360951843	0.8174285797232371
2900	21.854524039954413	7532.74405245778	28.77044730111434	0.8178094993613546
3000	22.573631914972793	7569.383178191517	28.76810514523738	0.8174374759747
3100	23.306720372958807	7548.2050509918845	28.842550727657304	0.8191547865369685
3200	24.035150289942976	7604.613504375768	28.820569929972365	0.8188096587535443
3300	24.756679789948976	7571.64820549595	28.82549130619305	0.8177288833561563
3400	25.459999830956804	7585.788224762272	28.82924133021532	0.8182279439661873
3500	26.158951080957195	7540.577115085012	28.79817491969949	0.8182990408162895
3600	26.906582997966325	7608.055418757323	28.823995460281733	0.8182173835826795
3700	27.62535295597627	7617.627924286273	28.860938373060673	0.8191844982709519
3800	28.317276080982992	7473.168485030741	28.816520576118116	0.8188428768889716
3900	29.017794622981455	7563.534344013866	28.78226078043189	0.8173453677773136
4000	29.717730247968575	7544.259633028575	28.810128177467604	0.8178257961881144
4100	30.427200413978426	7492.549195360461	28.860983026962206	0.8189892658388662
4200	31.133990371978143	7619.169666246597	28.79989911721712	0.8169194567716495
4300	31.863084913988132	7616.292583780234	28.781518459530474	0.8170421840038031
4400	32.56971741397865	7502.675056747199	28.770002575491237	0.8178931065767766
4500	33.27111291399342	7622.268747666862	28.816331623587935	0.8181343223642997
4600	33.96955637197243	7573.472396540831	28.800146731710633	0.8185262565611942
4700	34.66592978895642	7536.614520378443	28.788833985591435	0.8182154527373355
4800	35.37036374796298	7631.987927449299	28.811922733814384	0.8182831725576806
4900	36.06545462296344	7526.787211508373	28.8264223191039	0.8186092519452005
5000	36.79860383097548	7547.188523387972	28.797920305027596	0.8182676513301459
5100	37.48748633096693	7654.01653495857	24.572538063259394	0.7138994333727131
5200	38.18339753994951	7602.311512734022	26.545220472068813	0.7645280666860378
5300	38.86604570693453	7683.727314624943	23.2916452239901	0.6866580932070944
5400	39.574293414945714	7671.610119051637	22.428178861892544	0.6358018102892721
5500	40.308246080967365	7856.506266465794	20.75006836926233	0.5718300768742566
5600	41.05241474695504	7653.864662165214	23.196121011677747	0.6947908825457144
5700	41.77886445497279	7742.533857593714	21.23722622808366	0.7207244834958237
5800	42.51052057996276	7770.806458700582	21.73526789840865	0.758156397784974
5900	43.22720091298106	7725.7469389724065	21.767430285204842	0.7398172744461721
6000	43.92527966297348	7624.1670779031465	24.594851163633486	0.7861388224800221
6100	44.63341270497767	7729.056379125245	23.44168946866068	0.7583193139473511
6200	45.31608574598795	7627.352160550042	27.226704597259133	0.843851709130146
6300	46.001087120966986	7662.342623091206	26.073686368348817	0.8352198981047227
6400	46.66054220395745	7567.590440882612	27.999464810654622	0.8533494891060912
6500	47.32128570394707	7576.118723169373	26.517202658180818	0.8410331596319468
6600	47.987258994951844	7673.238226121003	24.36584616853857	0.8049799485725734
6700	48.67217507795431	7649.967496049263	24.64412239111406	0.8020775091551908
6800	49.33528320296318	7584.487041019172	27.99882504719998	0.8341753033059258
6900	49.992169118952006	7622.916736968258	27.09318027415322	0.8496300969256345
7000	50.61616482795216	7541.643777883052	30.840652139540516	0.8804387837987037
7100	51.277323535934556	7597.581506536078	24.215552825582378	0.8218293274289334
7200	51.94049407693092	7583.167652038383	25.694264195016014	0.8296431031396012
7300	52.59263124392601	7535.703103408998	29.95350182149656	0.8465123180074132
7400	53.209247076913016	7555.8033113847705	29.316579023717185	0.8607498018540898
7500	53.845370909926714	7637.225862728643	28.244532596892423	0.8490303806129657
7600	54.46572811892838	7559.054108751128	33.85369374324914	0.8643624657616351
7700	55.11721036894596	7566.6147412312175	31.13479638326416	0.8414883467916557
7800	55.76616082692635	7570.414850973838	28.399160727970543	0.8182153416427013
7900	56.43604174393113	7774.880278363092	21.28103581977851	0.7811241858774575
8000	57.10025140995276	7747.956406993671	26.42049174837676	0.8276431015877971
8100	57.79082582597039	7699.945596535899	24.315326882593567	0.8286362950242937
8200	58.46239661797881	7582.228764137335	26.847167045531787	0.8387851348641134
8300	59.12321757597965	7570.686813781728	27.80169345550387	0.8482620020153423
8400	59.785842450975906	7626.062680797199	25.914410704496255	0.8086653681901236
8500	60.44735703498009	7606.9645477687145	28.064111979753665	0.855601805448571
8600	61.10593178498675	7574.5937281821325	28.061979572975897	0.8350438877395805
8700	61.77238315998693	7535.764876715816	27.814267299929437	0.8428251323354327
8800	62.468700701982016	7455.350363140227	30.955328394735236	0.8824756338656339
8900	63.16207378497347	7474.134176423515	31.896367224371897	0.8863496159489302
9000	63.85157270196942	7554.530605797089	32.165741382920366	0.8865861689118746
9100	64.54516828496708	7561.6212765276105	32.27218217644722	0.8876819558529099
9200	65.2334821599652	7605.327000992894	32.28848892804878	0.8876772364479601
9300	65.921741284983	7550.695485481561	32.31739720996713	0.8880154613459257
9400	66.61825757697807	7527.5930066048195	32.33839485786752	0.887743631345935
9500	67.31268399397959	7551.620093702454	32.27865934872317	0.887139965142206
9600	67.99940370197874	7521.285213273268	32.32179507588438	0.8884049135660748
9700	68.68766265996965	7475.330256136151	32.342651307083	0.8883553006420057
9800	69.37623361797887	7492.115213222219	32.36561847809429	0.8887938566813857
9900	70.06969086796744	7581.5255067968055	32.35555806798834	0.88798063920061
10000	70.75867486794596	7608.058361505871	32.353215921468355	0.8880482068911356
