explain.depesz.com

PostgreSQL's explain analyze made readable

Result: LB3G

Settings
# exclusive inclusive rows x rows loops node
1. 28.096 628.332 ↓ 1.1 1,029 1

Sort (cost=2,478.99..2,481.28 rows=915 width=1,756) (actual time=628.286..628.332 rows=1,029 loops=1)

  • Sort Key: obawo_task0_.priority, obawo_rece1_.obawo_receptionlist_id, obawo_pick3_.obawo_pickinglist_id, obawo_task0_.obawo_travel_sequence, locator6_.value, locator5_.value, obawo_task0_.created
  • Sort Method: quicksort Memory: 1103kB
2. 576.077 600.236 ↓ 1.1 1,029 1

Hash Left Join (cost=701.80..2,433.99 rows=915 width=1,756) (actual time=8.577..600.236 rows=1,029 loops=1)

  • Hash Cond: ((product29_.m_attributeset_id)::text = (attributes30_.m_attributeset_id)::text)
3. 1.045 24.144 ↓ 1.1 1,029 1

Hash Left Join (cost=700.21..1,263.41 rows=915 width=1,758) (actual time=6.191..24.144 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.m_product_id)::text = (product29_.m_product_id)::text)
4. 0.955 21.772 ↓ 1.1 1,029 1

Nested Loop Anti Join (cost=512.84..1,063.45 rows=915 width=1,725) (actual time=4.851..21.772 rows=1,029 loops=1)

  • Join Filter: ((obawo_erro31_.obawo_task_id)::text = (obawo_task0_.obawo_task_id)::text)
5. 0.793 20.817 ↓ 1.1 1,029 1

Hash Left Join (cost=512.69..1,030.19 rows=916 width=1,725) (actual time=4.845..20.817 rows=1,029 loops=1)

  • Hash Cond: ((product27_.c_uom_id)::text = (uom28_.c_uom_id)::text)
6. 1.000 20.003 ↓ 1.1 1,029 1

Hash Left Join (cost=510.88..1,015.78 rows=916 width=1,704) (actual time=4.813..20.003 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.m_product_id)::text = (product27_.m_product_id)::text)
7. 0.947 17.943 ↓ 1.1 1,029 1

Hash Left Join (cost=323.50..815.81 rows=916 width=1,700) (actual time=3.737..17.943 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.m_product_id)::text = (product26_.m_product_id)::text)
8. 0.770 15.180 ↓ 1.1 1,029 1

Hash Left Join (cost=136.12..615.84 rows=916 width=1,541) (actual time=1.910..15.180 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.obawo_internal_routing_id)::text = (obawo_inte22_.obawo_internal_routing_id)::text)
9. 0.681 14.328 ↓ 1.1 1,029 1

Hash Left Join (cost=129.43..596.54 rows=916 width=1,541) (actual time=1.817..14.328 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.obawo_internal_routing_id)::text = (obawo_inte24_.obawo_internal_routing_id)::text)
10. 0.656 13.557 ↓ 1.1 1,029 1

Hash Left Join (cost=122.72..577.24 rows=916 width=1,508) (actual time=1.716..13.557 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.obawo_pa_warehousealgorithm_id)::text = (obawo_ware21_.obawo_warehouse_algorithm_id)::text)
11. 0.477 12.886 ↓ 1.1 1,029 1

Hash Left Join (cost=120.14..562.94 rows=916 width=1,508) (actual time=1.690..12.886 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.obawo_pk_warehousealgorithm_id)::text = (obawo_ware20_.obawo_warehouse_algorithm_id)::text)
12. 0.505 12.392 ↓ 1.1 1,029 1

Hash Left Join (cost=117.55..556.70 rows=916 width=1,508) (actual time=1.662..12.392 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.c_aum)::text = (uom18_.c_uom_id)::text)
13. 0.424 11.867 ↓ 1.1 1,029 1

Hash Left Join (cost=115.74..551.28 rows=916 width=1,516) (actual time=1.633..11.867 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.confirmed_m_refinventory_id)::text = (materialmg17_.m_refinventory_id)::text)
14. 0.430 11.435 ↓ 1.1 1,029 1

Hash Left Join (cost=114.52..546.49 rows=916 width=1,506) (actual time=1.617..11.435 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.expected_m_refinventory_id)::text = (materialmg16_.m_refinventory_id)::text)
15. 0.759 10.997 ↓ 1.1 1,029 1

Hash Join (cost=113.29..541.67 rows=916 width=1,496) (actual time=1.598..10.997 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task14_.obawo_base_task_type_id)::text = (obawo_base15_.obawo_base_task_type_id)::text)
16. 0.732 10.227 ↓ 1.1 1,029 1

Hash Join (cost=112.20..527.98 rows=916 width=1,470) (actual time=1.575..10.227 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.obawo_task_type_id)::text = (obawo_task14_.obawo_task_type_id)::text)
17. 0.673 9.482 ↓ 1.1 1,029 1

Hash Left Join (cost=110.95..514.14 rows=916 width=1,405) (actual time=1.553..9.482 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.obawo_internal_routing_id)::text = (obawo_inte13_.obawo_internal_routing_id)::text)
18. 0.440 8.752 ↓ 1.1 1,029 1

Hash Left Join (cost=106.47..497.06 rows=916 width=1,364) (actual time=1.486..8.752 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.confirmed_attribute_id)::text = (attributes12_.m_attributesetinstance_id)::text)
19. 0.574 8.155 ↓ 1.1 1,029 1

Hash Left Join (cost=93.07..479.32 rows=916 width=1,341) (actual time=1.320..8.155 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.expected_attribute_id)::text = (attributes11_.m_attributesetinstance_id)::text)
20. 0.379 7.400 ↓ 1.1 1,029 1

Hash Left Join (cost=79.67..457.50 rows=916 width=1,329) (actual time=1.127..7.400 rows=1,029 loops=1)

  • Hash Cond: ((materialmg9_.m_refinventory_id)::text = (materialmg10_.m_refinventory_id)::text)
21. 0.426 7.012 ↓ 1.1 1,029 1

Hash Left Join (cost=78.44..452.62 rows=916 width=1,319) (actual time=1.107..7.012 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.m_storage_detail_id)::text = (materialmg9_.m_storage_detail_id)::text)
22. 0.402 5.983 ↓ 1.1 1,029 1

Hash Left Join (cost=32.89..402.83 rows=916 width=1,286) (actual time=0.495..5.983 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.confirmed_locator_from_id)::text = (locator8_.m_locator_id)::text)
23. 0.433 5.503 ↓ 1.1 1,029 1

Hash Left Join (cost=26.48..392.11 rows=916 width=1,197) (actual time=0.408..5.503 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.expected_locator_from_id)::text = (locator6_.m_locator_id)::text)
24. 0.685 4.996 ↓ 1.1 1,029 1

Hash Left Join (cost=20.08..381.23 rows=916 width=1,108) (actual time=0.325..4.996 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.expected_locator_to_id)::text = (locator5_.m_locator_id)::text)
25. 0.634 4.228 ↓ 1.1 1,029 1

Hash Left Join (cost=13.67..362.73 rows=916 width=1,019) (actual time=0.234..4.228 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.obawo_batchoftasks_id)::text = (obawo_batc2_.obawo_batchoftasks_id)::text)
26. 0.893 3.494 ↓ 1.1 1,029 1

Hash Left Join (cost=5.41..341.87 rows=916 width=1,003) (actual time=0.123..3.494 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.obawo_receptionlist_id)::text = (obawo_rece1_.obawo_receptionlist_id)::text)
27. 0.742 2.568 ↓ 1.1 1,029 1

Hash Left Join (cost=2.46..327.16 rows=916 width=946) (actual time=0.080..2.568 rows=1,029 loops=1)

  • Hash Cond: ((obawo_task0_.obawo_pickinglist_id)::text = (obawo_pick3_.obawo_pickinglist_id)::text)
28. 1.793 1.793 ↓ 1.1 1,029 1

Seq Scan on obawo_task obawo_task0_ (cost=0.00..321.16 rows=916 width=880) (actual time=0.037..1.793 rows=1,029 loops=1)

  • Filter: (((ad_user_id)::text = '100'::text) AND ((m_warehouse_id)::text = 'F66CF439D1EC4ACDBD15A78A6195BCC1'::text) AND ((status)::text = 'AV'::text))
  • Rows Removed by Filter: 123
29. 0.006 0.033 ↑ 1.0 9 1

Hash (cost=2.35..2.35 rows=9 width=99) (actual time=0.033..0.033 rows=9 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 1kB
30. 0.014 0.027 ↑ 1.0 9 1

Hash Right Join (cost=1.20..2.35 rows=9 width=99) (actual time=0.024..0.027 rows=9 loops=1)

  • Hash Cond: ((materialmg4_.m_refinventory_id)::text = (obawo_pick3_.m_refinventory_id)::text)
31. 0.003 0.003 ↑ 1.0 10 1

Seq Scan on m_refinventory materialmg4_ (cost=0.00..1.10 rows=10 width=43) (actual time=0.002..0.003 rows=10 loops=1)

32. 0.004 0.010 ↑ 1.0 9 1

Hash (cost=1.09..1.09 rows=9 width=138) (actual time=0.010..0.010 rows=9 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 1kB
33. 0.006 0.006 ↑ 1.0 9 1

Seq Scan on obawo_pickinglist obawo_pick3_ (cost=0.00..1.09 rows=9 width=138) (actual time=0.002..0.006 rows=9 loops=1)

34. 0.017 0.033 ↑ 1.0 42 1

Hash (cost=2.42..2.42 rows=42 width=57) (actual time=0.033..0.033 rows=42 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 4kB
35. 0.016 0.016 ↑ 1.0 42 1

Seq Scan on obawo_receptionlist obawo_rece1_ (cost=0.00..2.42 rows=42 width=57) (actual time=0.002..0.016 rows=42 loops=1)

36. 0.048 0.100 ↑ 1.0 145 1

Hash (cost=6.45..6.45 rows=145 width=49) (actual time=0.100..0.100 rows=145 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 13kB
37. 0.052 0.052 ↑ 1.0 145 1

Seq Scan on obawo_batchoftasks obawo_batc2_ (cost=0.00..6.45 rows=145 width=49) (actual time=0.003..0.052 rows=145 loops=1)

38. 0.041 0.083 ↑ 1.0 107 1

Hash (cost=5.07..5.07 rows=107 width=122) (actual time=0.083..0.083 rows=107 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
39. 0.042 0.042 ↑ 1.0 107 1

Seq Scan on m_locator locator5_ (cost=0.00..5.07 rows=107 width=122) (actual time=0.002..0.042 rows=107 loops=1)

40. 0.034 0.074 ↑ 1.0 107 1

Hash (cost=5.07..5.07 rows=107 width=122) (actual time=0.074..0.074 rows=107 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
41. 0.040 0.040 ↑ 1.0 107 1

Seq Scan on m_locator locator6_ (cost=0.00..5.07 rows=107 width=122) (actual time=0.001..0.040 rows=107 loops=1)

42. 0.045 0.078 ↑ 1.0 107 1

Hash (cost=5.07..5.07 rows=107 width=122) (actual time=0.078..0.078 rows=107 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 9kB
43. 0.033 0.033 ↑ 1.0 107 1

Seq Scan on m_locator locator8_ (cost=0.00..5.07 rows=107 width=122) (actual time=0.002..0.033 rows=107 loops=1)

44. 0.258 0.603 ↑ 1.0 780 1

Hash (cost=35.80..35.80 rows=780 width=66) (actual time=0.603..0.603 rows=780 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 51kB
45. 0.345 0.345 ↑ 1.0 780 1

Seq Scan on m_storage_detail materialmg9_ (cost=0.00..35.80 rows=780 width=66) (actual time=0.002..0.345 rows=780 loops=1)

46. 0.006 0.009 ↑ 1.0 10 1

Hash (cost=1.10..1.10 rows=10 width=43) (actual time=0.009..0.009 rows=10 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 1kB
47. 0.003 0.003 ↑ 1.0 10 1

Seq Scan on m_refinventory materialmg10_ (cost=0.00..1.10 rows=10 width=43) (actual time=0.001..0.003 rows=10 loops=1)

48. 0.084 0.181 ↑ 1.0 240 1

Hash (cost=10.40..10.40 rows=240 width=41) (actual time=0.181..0.181 rows=240 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 18kB
49. 0.097 0.097 ↑ 1.0 240 1

Seq Scan on m_attributesetinstance attributes11_ (cost=0.00..10.40 rows=240 width=41) (actual time=0.003..0.097 rows=240 loops=1)

50. 0.087 0.157 ↑ 1.0 240 1

Hash (cost=10.40..10.40 rows=240 width=41) (actual time=0.157..0.157 rows=240 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 18kB
51. 0.070 0.070 ↑ 1.0 240 1

Seq Scan on m_attributesetinstance attributes12_ (cost=0.00..10.40 rows=240 width=41) (actual time=0.001..0.070 rows=240 loops=1)

52. 0.027 0.057 ↑ 1.0 66 1

Hash (cost=3.66..3.66 rows=66 width=41) (actual time=0.057..0.057 rows=66 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 5kB
53. 0.030 0.030 ↑ 1.0 66 1

Seq Scan on obawo_internal_routing obawo_inte13_ (cost=0.00..3.66 rows=66 width=41) (actual time=0.002..0.030 rows=66 loops=1)

54. 0.005 0.013 ↑ 1.0 11 1

Hash (cost=1.11..1.11 rows=11 width=98) (actual time=0.013..0.013 rows=11 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 2kB
55. 0.008 0.008 ↑ 1.0 11 1

Seq Scan on obawo_task_type obawo_task14_ (cost=0.00..1.11 rows=11 width=98) (actual time=0.003..0.008 rows=11 loops=1)

56. 0.006 0.011 ↑ 1.0 4 1

Hash (cost=1.04..1.04 rows=4 width=59) (actual time=0.011..0.011 rows=4 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 1kB
57. 0.005 0.005 ↑ 1.0 4 1

Seq Scan on obawo_base_task_type obawo_base15_ (cost=0.00..1.04 rows=4 width=59) (actual time=0.004..0.005 rows=4 loops=1)

58. 0.002 0.008 ↑ 1.0 10 1

Hash (cost=1.10..1.10 rows=10 width=43) (actual time=0.008..0.008 rows=10 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 1kB
59. 0.006 0.006 ↑ 1.0 10 1

Seq Scan on m_refinventory materialmg16_ (cost=0.00..1.10 rows=10 width=43) (actual time=0.002..0.006 rows=10 loops=1)

60. 0.005 0.008 ↑ 1.0 10 1

Hash (cost=1.10..1.10 rows=10 width=43) (actual time=0.008..0.008 rows=10 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 1kB
61. 0.003 0.003 ↑ 1.0 10 1

Seq Scan on m_refinventory materialmg17_ (cost=0.00..1.10 rows=10 width=43) (actual time=0.001..0.003 rows=10 loops=1)

62. 0.012 0.020 ↑ 1.0 36 1

Hash (cost=1.36..1.36 rows=36 width=25) (actual time=0.020..0.020 rows=36 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 3kB
63. 0.008 0.008 ↑ 1.0 36 1

Seq Scan on c_uom uom18_ (cost=0.00..1.36 rows=36 width=25) (actual time=0.003..0.008 rows=36 loops=1)

64. 0.009 0.017 ↑ 1.0 26 1

Hash (cost=2.26..2.26 rows=26 width=33) (actual time=0.017..0.017 rows=26 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 2kB
65. 0.008 0.008 ↑ 1.0 26 1

Seq Scan on obawo_warehouse_algorithm obawo_ware20_ (cost=0.00..2.26 rows=26 width=33) (actual time=0.002..0.008 rows=26 loops=1)

66. 0.011 0.015 ↑ 1.0 26 1

Hash (cost=2.26..2.26 rows=26 width=33) (actual time=0.015..0.015 rows=26 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 2kB
67. 0.004 0.004 ↑ 1.0 26 1

Seq Scan on obawo_warehouse_algorithm obawo_ware21_ (cost=0.00..2.26 rows=26 width=33) (actual time=0.001..0.004 rows=26 loops=1)

68. 0.028 0.090 ↑ 1.0 66 1

Hash (cost=5.88..5.88 rows=66 width=66) (actual time=0.090..0.090 rows=66 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 7kB
69. 0.046 0.062 ↑ 1.0 66 1

Hash Left Join (cost=1.41..5.88 rows=66 width=66) (actual time=0.023..0.062 rows=66 loops=1)

  • Hash Cond: ((obawo_inte24_.internal_routing_area_to_id)::text = (obawo_inte25_.obawo_internal_routing_area_id)::text)
70. 0.007 0.007 ↑ 1.0 66 1

Seq Scan on obawo_internal_routing obawo_inte24_ (cost=0.00..3.66 rows=66 width=66) (actual time=0.001..0.007 rows=66 loops=1)

71. 0.004 0.009 ↑ 1.0 18 1

Hash (cost=1.18..1.18 rows=18 width=33) (actual time=0.009..0.009 rows=18 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 2kB
72. 0.005 0.005 ↑ 1.0 18 1

Seq Scan on obawo_internal_routing_area obawo_inte25_ (cost=0.00..1.18 rows=18 width=33) (actual time=0.002..0.005 rows=18 loops=1)

73. 0.025 0.082 ↑ 1.0 66 1

Hash (cost=5.87..5.87 rows=66 width=66) (actual time=0.082..0.082 rows=66 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 6kB
74. 0.040 0.057 ↑ 1.0 66 1

Hash Left Join (cost=1.41..5.87 rows=66 width=66) (actual time=0.018..0.057 rows=66 loops=1)

  • Hash Cond: ((obawo_inte22_.internal_routing_area_from_id)::text = (obawo_inte23_.obawo_internal_routing_area_id)::text)
75. 0.008 0.008 ↑ 1.0 66 1

Seq Scan on obawo_internal_routing obawo_inte22_ (cost=0.00..3.66 rows=66 width=66) (actual time=0.001..0.008 rows=66 loops=1)

76. 0.004 0.009 ↑ 1.0 18 1

Hash (cost=1.18..1.18 rows=18 width=33) (actual time=0.009..0.009 rows=18 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 2kB
77. 0.005 0.005 ↑ 1.0 18 1

Seq Scan on obawo_internal_routing_area obawo_inte23_ (cost=0.00..1.18 rows=18 width=33) (actual time=0.001..0.005 rows=18 loops=1)

78. 0.636 1.816 ↑ 1.0 1,439 1

Hash (cost=169.39..169.39 rows=1,439 width=159) (actual time=1.816..1.816 rows=1,439 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 125kB
79. 1.180 1.180 ↑ 1.0 1,439 1

Seq Scan on m_product product26_ (cost=0.00..169.39 rows=1,439 width=159) (actual time=0.004..1.180 rows=1,439 loops=1)

80. 0.491 1.060 ↑ 1.0 1,439 1

Hash (cost=169.39..169.39 rows=1,439 width=37) (actual time=1.060..1.060 rows=1,439 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 98kB
81. 0.569 0.569 ↑ 1.0 1,439 1

Seq Scan on m_product product27_ (cost=0.00..169.39 rows=1,439 width=37) (actual time=0.002..0.569 rows=1,439 loops=1)

82. 0.012 0.021 ↑ 1.0 36 1

Hash (cost=1.36..1.36 rows=36 width=25) (actual time=0.021..0.021 rows=36 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 3kB
83. 0.009 0.009 ↑ 1.0 36 1

Seq Scan on c_uom uom28_ (cost=0.00..1.36 rows=36 width=25) (actual time=0.002..0.009 rows=36 loops=1)

84. 0.000 0.000 ↓ 0.0 0 1,029

Materialize (cost=0.14..19.53 rows=1 width=82) (actual time=0.000..0.000 rows=0 loops=1,029)

85. 0.001 0.001 ↓ 0.0 0 1

Nested Loop (cost=0.14..19.52 rows=1 width=82) (actual time=0.001..0.001 rows=0 loops=1)

86. 0.000 0.000 ↓ 0.0 0 1

Seq Scan on obawo_errors obawo_erro32_ (cost=0.00..11.35 rows=1 width=82) (actual time=0.000..0.000 rows=0 loops=1)

  • Filter: (((taskstatus)::text = 'N'::text) AND (blocks = 'Y'::bpchar))
87. 0.000 0.000 ↓ 0.0 0

Index Scan using obawo_idx_errortask_error on obawo_error_task obawo_erro31_ (cost=0.14..8.16 rows=1 width=164) (never executed)

  • Index Cond: ((obawo_errors_id)::text = (obawo_erro32_.obawo_errors_id)::text)
88. 0.491 1.327 ↑ 1.0 1,439 1

Hash (cost=169.39..169.39 rows=1,439 width=66) (actual time=1.327..1.327 rows=1,439 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 110kB
89. 0.836 0.836 ↑ 1.0 1,439 1

Seq Scan on m_product product29_ (cost=0.00..169.39 rows=1,439 width=66) (actual time=0.001..0.836 rows=1,439 loops=1)

90. 0.007 0.015 ↑ 1.0 26 1

Hash (cost=1.26..1.26 rows=26 width=31) (actual time=0.015..0.015 rows=26 loops=1)

  • Buckets: 1024 Batches: 1 Memory Usage: 2kB
91. 0.008 0.008 ↑ 1.0 26 1

Seq Scan on m_attributeset attributes30_ (cost=0.00..1.26 rows=26 width=31) (actual time=0.002..0.008 rows=26 loops=1)