+ | awk -v group_by="$group_by" '
+ function date2dow(y, m, d, _t, _i) {
+ # Contract:
+ # y > 1752, 1 <= m <= 12.
+ # Source:
+ # Sakamoto`s methods
+ # https://en.wikipedia.org/wiki/Determination_of_the_day_of_the_week#Sakamoto%27s_methods
+ _t[ 0] = 0
+ _t[ 1] = 3
+ _t[ 2] = 2
+ _t[ 3] = 5
+ _t[ 4] = 0
+ _t[ 5] = 3
+ _t[ 6] = 5
+ _t[ 7] = 1
+ _t[ 8] = 4
+ _t[ 9] = 6
+ _t[10] = 2
+ _t[11] = 4
+ y -= m < 3
+ _i = int(y + y/4 - y/100 + y/400 + _t[m - 1] + d) % 7
+ _i = _i == 0 ? 7 : _i # Make Sunday last
+ return _i
+
+ }
+