From 1322fce4dec328bb11715db27cd03c3de71f7bab Mon Sep 17 00:00:00 2001 From: Horhik Date: Fri, 20 Nov 2020 14:47:04 +0200 Subject: [PATCH] patch dwm gaps --- dwm-6.2/config.def.h | 25 +- dwm-6.2/config.def.h.orig | 7 +- dwm-6.2/config.h | 27 +- dwm-6.2/dwm | Bin 72440 -> 77400 bytes dwm-6.2/dwm.c | 185 ++++++++++--- dwm-6.2/dwm.c.orig | 7 + dwm-6.2/dwm.c.rej | 94 ++++++- dwm-6.2/dwm.o | Bin 64944 -> 67272 bytes .../patches/dwm-vanitygaps-20190508-6.2.diff | 259 ++++++++++++++++++ 9 files changed, 550 insertions(+), 54 deletions(-) create mode 100644 dwm-6.2/patches/dwm-vanitygaps-20190508-6.2.diff diff --git a/dwm-6.2/config.def.h b/dwm-6.2/config.def.h index eca04d5..567ab7b 100644 --- a/dwm-6.2/config.def.h +++ b/dwm-6.2/config.def.h @@ -4,6 +4,11 @@ static const unsigned int borderpx = 3; /* border pixel of windows */ static const unsigned int gappx = 10; /* gap pixel between windows */ static const unsigned int snap = 32; /* snap pixel */ +static const unsigned int gappih = 10; /* horiz inner gap between windows */ +static const unsigned int gappiv = 10; /* vert inner gap between windows */ +static const unsigned int gappoh = 20; /* horiz outer gap between windows and screen edge */ +static const unsigned int gappov = 20; /* vert outer gap between windows and screen edge */ +static const int smartgaps = 0; /* 1 means no outer gap when there is only one window */ static const int showbar = 1; /* 0 means no bar */ static const int topbar = 1; /* 0 means bottom bar */ static const char *fonts[] = { "Mononoki Nerd Font:size=10"}; @@ -73,7 +78,7 @@ static const Rule rules[] = { { "Evolution", NULL, "Tasks - Evolution", 0, 1, -1, 't' }, { NULL, NULL, "Task - No Summary", 0, 1, -1, 0 } }; - +// default gaps /* layout(s) */ static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */ static const int nmaster = 1; /* number of clients in master area */ @@ -108,8 +113,6 @@ static const char *scratchpadcmd[] = {"s", "alacritty", "-t", "scratchpad", NULL static const char *sp_emacs[] = {"e", "emacs", "-T", "ScratchEmacs", NULL}; static const char *sp_volume_control[] = {"v","alacritty", "-t", "sp_volume","-e", "pulsemixer", NULL}; static const char *tasks[] = {"t","evolution", NULL}; - - static Key keys[] = { /* modifier key function argument */ { MODKEY, XK_p, spawn, {.v = dmenucmd } }, @@ -122,6 +125,22 @@ static Key keys[] = { { MODKEY, XK_d, incnmaster, {.i = -1 } }, { MODKEY, XK_h, setmfact, {.f = -0.05} }, { MODKEY, XK_l, setmfact, {.f = +0.05} }, + { MODKEY|Mod1Mask, XK_h, incrgaps, {.i = +1 } }, + { MODKEY|Mod1Mask, XK_l, incrgaps, {.i = -10 } }, + { MODKEY|Mod1Mask|ShiftMask, XK_h, incrogaps, {.i = +10 } }, + { MODKEY|Mod1Mask|ShiftMask, XK_l, incrogaps, {.i = -10 } }, + { MODKEY|Mod1Mask|ControlMask, XK_h, incrigaps, {.i = +10 } }, + { MODKEY|Mod1Mask|ControlMask, XK_l, incrigaps, {.i = -10 } }, + { MODKEY|Mod1Mask, XK_0, togglegaps, {0} }, + { MODKEY|Mod1Mask|ShiftMask, XK_0, defaultgaps, {0} }, + { MODKEY, XK_y, incrihgaps, {.i = +10 } }, + { MODKEY, XK_o, incrihgaps, {.i = -10 } }, + { MODKEY|ControlMask, XK_y, incrivgaps, {.i = +10 } }, + { MODKEY|ControlMask, XK_o, incrivgaps, {.i = -10 } }, + { MODKEY|Mod1Mask, XK_y, incrohgaps, {.i = +10 } }, + { MODKEY|Mod1Mask, XK_o, incrohgaps, {.i = -10 } }, + { MODKEY|ShiftMask, XK_y, incrovgaps, {.i = +10 } }, + { MODKEY|ShiftMask, XK_o, incrovgaps, {.i = -10 } }, { MODKEY, XK_Return, zoom, {0} }, { MODKEY, XK_Tab, view, {0} }, { MODKEY|ShiftMask, XK_c, killclient, {0} }, diff --git a/dwm-6.2/config.def.h.orig b/dwm-6.2/config.def.h.orig index 3e6f4fe..eca04d5 100644 --- a/dwm-6.2/config.def.h.orig +++ b/dwm-6.2/config.def.h.orig @@ -70,7 +70,8 @@ static const Rule rules[] = { { NULL, NULL, "scratchpad", 0, 1, -1, 's' }, { NULL, NULL, "sp_volume", 0, 1, -1, 'v' }, { NULL, NULL, "ScratchEmacs", 0, 1, -1, 'e' }, - +{ "Evolution", NULL, "Tasks - Evolution", 0, 1, -1, 't' }, +{ NULL, NULL, "Task - No Summary", 0, 1, -1, 0 } }; /* layout(s) */ @@ -100,13 +101,13 @@ static const Layout layouts[] = { static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */ static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", col_gray1, "-nf", col_gray3, "-sb", col_cyan, "-sf", col_gray4, "-c", "-l", "20", NULL}; static const char *termcmd[] = { "alacritty", NULL }; - static const char *flameshot[] = { "flameshot","gui", NULL }; /*First arg only serves to match against key in rules*/ static const char *scratchpadcmd[] = {"s", "alacritty", "-t", "scratchpad", NULL}; static const char *sp_emacs[] = {"e", "emacs", "-T", "ScratchEmacs", NULL}; static const char *sp_volume_control[] = {"v","alacritty", "-t", "sp_volume","-e", "pulsemixer", NULL}; +static const char *tasks[] = {"t","evolution", NULL}; static Key keys[] = { @@ -129,6 +130,7 @@ static Key keys[] = { { MODKEY, XK_m, setlayout, {.v = &layouts[2]} }, { MODKEY, XK_space, setlayout, {0} }, { MODKEY|ShiftMask, XK_space, togglefloating, {0} }, + { MODKEY|ShiftMask, XK_f, togglefullscr, {0} }, { MODKEY, XK_0, view, {.ui = ~0 } }, { MODKEY|ShiftMask, XK_0, tag, {.ui = ~0 } }, { MODKEY, XK_comma, focusmon, {.i = -1 } }, @@ -142,6 +144,7 @@ static Key keys[] = { { MODKEY, XK_u, togglescratch, {.v = scratchpadcmd } }, { MODKEY|ShiftMask, XK_m, togglescratch, {.v = sp_volume_control } }, { MODKEY, XK_e, togglescratch, {.v = sp_emacs } }, + { MODKEY, XK_t, togglescratch, {.v = tasks } }, { MODKEY, XK_n, togglealttag, {0} }, TAGKEYS( XK_1, 0) TAGKEYS( XK_2, 1) diff --git a/dwm-6.2/config.h b/dwm-6.2/config.h index aa151a7..567ab7b 100644 --- a/dwm-6.2/config.h +++ b/dwm-6.2/config.h @@ -4,6 +4,11 @@ static const unsigned int borderpx = 3; /* border pixel of windows */ static const unsigned int gappx = 10; /* gap pixel between windows */ static const unsigned int snap = 32; /* snap pixel */ +static const unsigned int gappih = 10; /* horiz inner gap between windows */ +static const unsigned int gappiv = 10; /* vert inner gap between windows */ +static const unsigned int gappoh = 20; /* horiz outer gap between windows and screen edge */ +static const unsigned int gappov = 20; /* vert outer gap between windows and screen edge */ +static const int smartgaps = 0; /* 1 means no outer gap when there is only one window */ static const int showbar = 1; /* 0 means no bar */ static const int topbar = 1; /* 0 means bottom bar */ static const char *fonts[] = { "Mononoki Nerd Font:size=10"}; @@ -73,7 +78,7 @@ static const Rule rules[] = { { "Evolution", NULL, "Tasks - Evolution", 0, 1, -1, 't' }, { NULL, NULL, "Task - No Summary", 0, 1, -1, 0 } }; - +// default gaps /* layout(s) */ static const float mfact = 0.55; /* factor of master area size [0.05..0.95] */ static const int nmaster = 1; /* number of clients in master area */ @@ -108,8 +113,6 @@ static const char *scratchpadcmd[] = {"s", "alacritty", "-t", "scratchpad", NULL static const char *sp_emacs[] = {"e", "emacs", "-T", "ScratchEmacs", NULL}; static const char *sp_volume_control[] = {"v","alacritty", "-t", "sp_volume","-e", "pulsemixer", NULL}; static const char *tasks[] = {"t","evolution", NULL}; - - static Key keys[] = { /* modifier key function argument */ { MODKEY, XK_p, spawn, {.v = dmenucmd } }, @@ -122,6 +125,22 @@ static Key keys[] = { { MODKEY, XK_d, incnmaster, {.i = -1 } }, { MODKEY, XK_h, setmfact, {.f = -0.05} }, { MODKEY, XK_l, setmfact, {.f = +0.05} }, + { MODKEY|Mod1Mask, XK_h, incrgaps, {.i = +1 } }, + { MODKEY|Mod1Mask, XK_l, incrgaps, {.i = -10 } }, + { MODKEY|Mod1Mask|ShiftMask, XK_h, incrogaps, {.i = +10 } }, + { MODKEY|Mod1Mask|ShiftMask, XK_l, incrogaps, {.i = -10 } }, + { MODKEY|Mod1Mask|ControlMask, XK_h, incrigaps, {.i = +10 } }, + { MODKEY|Mod1Mask|ControlMask, XK_l, incrigaps, {.i = -10 } }, + { MODKEY|Mod1Mask, XK_0, togglegaps, {0} }, + { MODKEY|Mod1Mask|ShiftMask, XK_0, defaultgaps, {0} }, + { MODKEY, XK_y, incrihgaps, {.i = +10 } }, + { MODKEY, XK_o, incrihgaps, {.i = -10 } }, + { MODKEY|ControlMask, XK_y, incrivgaps, {.i = +10 } }, + { MODKEY|ControlMask, XK_o, incrivgaps, {.i = -10 } }, + { MODKEY|Mod1Mask, XK_y, incrohgaps, {.i = +10 } }, + { MODKEY|Mod1Mask, XK_o, incrohgaps, {.i = -10 } }, + { MODKEY|ShiftMask, XK_y, incrovgaps, {.i = +10 } }, + { MODKEY|ShiftMask, XK_o, incrovgaps, {.i = -10 } }, { MODKEY, XK_Return, zoom, {0} }, { MODKEY, XK_Tab, view, {0} }, { MODKEY|ShiftMask, XK_c, killclient, {0} }, @@ -144,7 +163,7 @@ static Key keys[] = { { MODKEY, XK_u, togglescratch, {.v = scratchpadcmd } }, { MODKEY|ShiftMask, XK_m, togglescratch, {.v = sp_volume_control } }, { MODKEY, XK_e, togglescratch, {.v = sp_emacs } }, - { MODKEY, XK_e, togglescratch, {.v = tasks } }, + { MODKEY, XK_t, togglescratch, {.v = tasks } }, { MODKEY, XK_n, togglealttag, {0} }, TAGKEYS( XK_1, 0) TAGKEYS( XK_2, 1) diff --git a/dwm-6.2/dwm b/dwm-6.2/dwm index c91a4dd591392193e2a23d637238351681485d82..d3ebb686b30a9ed6ce589e2aa89b63852c5f7893 100755 GIT binary patch literal 77400 zcmeEvd0-RO_Wy)75SEgNMXQ1YE!xV~AjJlVHZ+9^1PHW9*({|EP$+F|6DWvKNGptE zwC|};+@9#uueiJ??tlV?vbz=B5Pe$r2?4DjP*BP5bMDNv!)U(0-ygp}i8go6=bn4+ zx##ZZ-U%ynJ)=7q44nE&;BMv^HCaZom59UFwew_iSzK2xo4cCp&2>b4BK}l9eK@}Z zBJoi}lT3062r1nLC0-x)Qux$R&7DF@7w@w^OO8=P&LY#4&Pb2h^o370`)&(&%$8|2 z)TU$kZB+R6VQ&RjLrs2Un~WoJe8$lW!}60UtF~ z?MXV)-!3IyAG#!gr~n@KHlG-6W(VJ^x=nidneHN`CR| z(!?r>J+L}!*uY^!2US%J8p6t*3`I!QF%zb6M`PAs zZs{u4C4HE2*@l!;JHL7?wwv@O9Y`MW(1-XHbFt@Dpedfpwbp5+$1a40@JF95-~N4h zPVUFY4&PqT%YH&so2DG8`#y;bd+0DC6H&gu!l%UHe+p^-ia!^M{}rAUN6!0k_+LR` z|4Pp4IQW7%`mc|Z@1i(zs^aK#EDnAWweeSa9*M(G-O-9a{pYqg`g{D0` z!{Xq3;>dY44n87|o)5*rN5;{AY8-xZ96dM1!KcN+uZdIdug1Y!P$7R+kI$kr{uN#u zhaYC+toYM^o{Ll7&*Ip5W*oZ>jw9!-IJgi;&TVnZ6^o-!-#GFIprBTLVL?0M$ge`& zU)l4;IQfo?Q@;&y^r-@V&0pxVE{;Bz$H5oyIU`PcyETp-?uw&NNgV#` z;_$x}N1wDfc1w&SXH*>i%sBY6IQ2Loj{LXc@ZS)}&d1}FYe^j37e~)XoP6DJ_?O1f z|K>Py?u%3JRdM7r#wl+~9QlSgdVU+HoxBjoKJ{_rd=p3ieR1S`5vN?E

9gfGz_v1MFKOaY*332kBA4k3| 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 literal 72440 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 Mf4w6rJ}du!0Sv}&YXATM diff --git a/dwm-6.2/dwm.c b/dwm-6.2/dwm.c index dade245..ca01e56 100644 --- a/dwm-6.2/dwm.c +++ b/dwm-6.2/dwm.c @@ -122,6 +122,10 @@ struct Monitor { int mx, my, mw, mh; /* screen size */ int wx, wy, ww, wh; /* window area */ int gappx; /* gaps between windows */ + int gappih; /* horizontal gap between windows */ + int gappiv; /* vertical gap between windows */ + int gappoh; /* horizontal outer gaps */ + int gappov; /* vertical outer gaps */ unsigned int seltags; unsigned int sellt; unsigned int tagset[2]; @@ -212,7 +216,16 @@ static void sendmon(Client *c, Monitor *m); static void setclientstate(Client *c, long state); static void setfocus(Client *c); static void setfullscreen(Client *c, int fullscreen); -static void setgaps(const Arg *arg); +static void setgaps(int oh, int ov, int ih, int iv); +static void incrgaps(const Arg *arg); +static void incrigaps(const Arg *arg); +static void incrogaps(const Arg *arg); +static void incrohgaps(const Arg *arg); +static void incrovgaps(const Arg *arg); +static void incrihgaps(const Arg *arg); +static void incrivgaps(const Arg *arg); +static void togglegaps(const Arg *arg); +static void defaultgaps(const Arg *arg); static void setlayout(const Arg *arg); static void setmfact(const Arg *arg); static void setup(void); @@ -263,6 +276,7 @@ static char stext[256]; static int screen; static int sw, sh; /* X display screen geometry width, height */ static int bh, blw = 0; /* bar geometry */ +static int enablegaps = 1; /* enables gaps, used by togglegaps */ static int lrpad; /* sum of left and right padding for text */ static int (*xerrorxlib)(Display *, XErrorEvent *); static unsigned int numlockmask = 0; @@ -708,6 +722,10 @@ createmon(void) m->showbar = showbar; m->topbar = topbar; m->gappx = gappx; + m->gappih = gappih; + m->gappiv = gappiv; + m->gappoh = gappoh; + m->gappov = gappov; m->lt[0] = &layouts[0]; m->lt[1] = &layouts[1 % LENGTH(layouts)]; strncpy(m->ltsymbol, layouts[0].symbol, sizeof m->ltsymbol); @@ -1663,17 +1681,111 @@ setfullscreen(Client *c, int fullscreen) c->isfullscreen = 0; } } +void +setgaps(int oh, int ov, int ih, int iv) +{ + if (oh < 0) oh = 0; + if (ov < 0) ov = 0; + if (ih < 0) ih = 0; + if (iv < 0) iv = 0; + + selmon->gappoh = oh; + selmon->gappov = ov; + selmon->gappih = ih; + selmon->gappiv = iv; + arrange(selmon); +} void -setgaps(const Arg *arg) +togglegaps(const Arg *arg) { - if ((arg->i == 0) || (selmon->gappx + arg->i < 0)) - selmon->gappx = 0; - else - selmon->gappx += arg->i; + enablegaps = !enablegaps; arrange(selmon); } +void +defaultgaps(const Arg *arg) +{ + setgaps(gappoh, gappov, gappih, gappiv); +} + +void +incrgaps(const Arg *arg) +{ + setgaps( + selmon->gappoh + arg->i, + selmon->gappov + arg->i, + selmon->gappih + arg->i, + selmon->gappiv + arg->i + ); +} + +void +incrigaps(const Arg *arg) +{ + setgaps( + selmon->gappoh, + selmon->gappov, + selmon->gappih + arg->i, + selmon->gappiv + arg->i + ); +} + +void +incrogaps(const Arg *arg) +{ + setgaps( + selmon->gappoh + arg->i, + selmon->gappov + arg->i, + selmon->gappih, + selmon->gappiv + ); +} + +void +incrohgaps(const Arg *arg) +{ + setgaps( + selmon->gappoh + arg->i, + selmon->gappov, + selmon->gappih, + selmon->gappiv + ); +} + +void +incrovgaps(const Arg *arg) +{ + setgaps( + selmon->gappoh, + selmon->gappov + arg->i, + selmon->gappih, + selmon->gappiv + ); +} + +void +incrihgaps(const Arg *arg) +{ + setgaps( + selmon->gappoh, + selmon->gappov, + selmon->gappih + arg->i, + selmon->gappiv + ); +} + +void +incrivgaps(const Arg *arg) +{ + setgaps( + selmon->gappoh, + selmon->gappov, + selmon->gappih, + selmon->gappiv + arg->i + ); +} + void setlayout(const Arg *arg) { @@ -1887,40 +1999,39 @@ tagmon(const Arg *arg) void tile(Monitor *m) -{ - unsigned int i, n, h, mw, my, ty, ns; - Client *c; - for (n = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), n++); - if (n == 0) - return; - if(n == 1){ - c = nexttiled(m->clients); - resize(c, m->wx, m->wy, m->ww - 2 * c->bw, m->wh - 2 * c->bw, 0); - return; + { + unsigned int i, n, h, r, oe = enablegaps, ie = enablegaps, mw, my, ty; + Client *c; + + for (n = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), n++); + if (n == 0) + return; + + if (smartgaps == n) { + oe = 0; // outer gaps disabled } - if (n > m->nmaster){ - mw = m->nmaster ? m->ww * m->mfact : 0; - ns = m->nmaster > 0 ? 2 : 1; - } - else{ - mw = m->ww - m->gappx; - ns = 1; - } - for (i = 0, my = ty = m->gappx, c = nexttiled(m->clients); c; c = nexttiled(c->next), i++) - if (i < m->nmaster) { - h = (m->wh - my) / (MIN(n, m->nmaster) - i) - m->gappx; - resize(c, m->wx + m->gappx, m->wy + my, mw - 2*c->bw - m->gappx*(5-ns)/2, h - 2*c->bw, 0); - if(my + HEIGHT(c) + m->gappx < m->wh) - my += HEIGHT(c) + m->gappx; - } else { - h = (m->wh - ty) / (n - i) - m->gappx; - resize(c, m->wx + mw + m->gappx/ns, m->wy + ty, m->ww - mw - (2*c->bw) - m->gappx*(5-ns)/2, h - 2*c->bw, 0); - if(ty + HEIGHT(c) + m->gappx < m->wh) - ty += HEIGHT(c) + m->gappx; - } -} +if (n > m->nmaster) + mw = m->nmaster ? (m->ww + m->gappiv*ie) * m->mfact : 0; + else + mw = m->ww - 2*m->gappov*oe + m->gappiv*ie; + for (i = 0, my = ty = m->gappoh*oe, c = nexttiled(m->clients); c; c = nexttiled(c->next), i++) + if (i < m->nmaster) { + r = MIN(n, m->nmaster) - i; + h = (m->wh - my - m->gappoh*oe - m->gappih*ie * (r - 1)) / r; + resize(c, m->wx + m->gappov*oe, m->wy + my, mw - (2*c->bw) - m->gappiv*ie, h - (2*c->bw), 0); + if (my + HEIGHT(c) + m->gappih*ie < m->wh) + my += HEIGHT(c) + m->gappih*ie; + } else { + r = n - i; + h = (m->wh - ty - m->gappoh*oe - m->gappih*ie * (r - 1)) / r; + resize(c, m->wx + mw + m->gappov*oe, m->wy + ty, m->ww - mw - (2*c->bw) - 2*m->gappov*oe, h - (2*c->bw), 0); + if (ty + HEIGHT(c) + m->gappih*ie < m->wh) + ty += HEIGHT(c) + m->gappih*ie; + } + } + void togglebar(const Arg *arg) diff --git a/dwm-6.2/dwm.c.orig b/dwm-6.2/dwm.c.orig index cf0175e..dade245 100644 --- a/dwm-6.2/dwm.c.orig +++ b/dwm-6.2/dwm.c.orig @@ -1381,6 +1381,13 @@ resizeclient(Client *c, int x, int y, int w, int h) c->oldw = c->w; c->w = wc.width = w; c->oldh = c->h; c->h = wc.height = h; wc.border_width = c->bw; + if (((nexttiled(c->mon->clients) == c && !nexttiled(c->next)) + || &monocle == c->mon->lt[c->mon->sellt]->arrange) + && !c->isfullscreen && !c->isfloating) { + c->w = wc.width += c->bw * 2; + c->h = wc.height += c->bw * 2; + wc.border_width = 0; + } XConfigureWindow(dpy, c->win, CWX|CWY|CWWidth|CWHeight|CWBorderWidth, &wc); configure(c); XSync(dpy, False); diff --git a/dwm-6.2/dwm.c.rej b/dwm-6.2/dwm.c.rej index 46ebb95..f605fee 100644 --- a/dwm-6.2/dwm.c.rej +++ b/dwm-6.2/dwm.c.rej @@ -1,10 +1,88 @@ --- dwm.c +++ dwm.c -@@ -211,6 +211,7 @@ static void tagmon(const Arg *arg); - static void tile(Monitor *); - static void togglebar(const Arg *arg); - static void togglefloating(const Arg *arg); -+static void togglefullscr(const Arg *arg); - static void toggletag(const Arg *arg); - static void toggleview(const Arg *arg); - static void unfocus(Client *c, int setfocus); +@@ -119,6 +119,10 @@ struct Monitor { + int by; /* bar geometry */ + int mx, my, mw, mh; /* screen size */ + int wx, wy, ww, wh; /* window area */ ++ int gappih; /* horizontal gap between windows */ ++ int gappiv; /* vertical gap between windows */ ++ int gappoh; /* horizontal outer gaps */ ++ int gappov; /* vertical outer gaps */ + unsigned int seltags; + unsigned int sellt; + unsigned int tagset[2]; +@@ -200,6 +204,16 @@ static void sendmon(Client *c, Monitor *m); + static void setclientstate(Client *c, long state); + static void setfocus(Client *c); + static void setfullscreen(Client *c, int fullscreen); ++static void setgaps(int oh, int ov, int ih, int iv); ++static void incrgaps(const Arg *arg); ++static void incrigaps(const Arg *arg); ++static void incrogaps(const Arg *arg); ++static void incrohgaps(const Arg *arg); ++static void incrovgaps(const Arg *arg); ++static void incrihgaps(const Arg *arg); ++static void incrivgaps(const Arg *arg); ++static void togglegaps(const Arg *arg); ++static void defaultgaps(const Arg *arg); + static void setlayout(const Arg *arg); + static void setmfact(const Arg *arg); + static void setup(void); +@@ -640,6 +655,10 @@ createmon(void) + m->nmaster = nmaster; + m->showbar = showbar; + m->topbar = topbar; ++ m->gappih = gappih; ++ m->gappiv = gappiv; ++ m->gappoh = gappoh; ++ m->gappov = gappov; + m->lt[0] = &layouts[0]; + m->lt[1] = &layouts[1 % LENGTH(layouts)]; + strncpy(m->ltsymbol, layouts[0].symbol, sizeof m->ltsymbol); +@@ -1780,28 +1904,34 @@ tagmon(const Arg *arg) + void + tile(Monitor *m) + { +- unsigned int i, n, h, mw, my, ty; ++ unsigned int i, n, h, r, oe = enablegaps, ie = enablegaps, mw, my, ty; + Client *c; + + for (n = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), n++); + if (n == 0) + return; + ++ if (smartgaps == n) { ++ oe = 0; // outer gaps disabled ++ } ++ + if (n > m->nmaster) +- mw = m->nmaster ? m->ww * m->mfact : 0; ++ mw = m->nmaster ? (m->ww + m->gappiv*ie) * m->mfact : 0; + else +- mw = m->ww; +- for (i = my = ty = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), i++) ++ mw = m->ww - 2*m->gappov*oe + m->gappiv*ie; ++ for (i = 0, my = ty = m->gappoh*oe, c = nexttiled(m->clients); c; c = nexttiled(c->next), i++) + if (i < m->nmaster) { +- h = (m->wh - my) / (MIN(n, m->nmaster) - i); +- resize(c, m->wx, m->wy + my, mw - (2*c->bw), h - (2*c->bw), 0); +- if (my + HEIGHT(c) < m->wh) +- my += HEIGHT(c); ++ r = MIN(n, m->nmaster) - i; ++ h = (m->wh - my - m->gappoh*oe - m->gappih*ie * (r - 1)) / r; ++ resize(c, m->wx + m->gappov*oe, m->wy + my, mw - (2*c->bw) - m->gappiv*ie, h - (2*c->bw), 0); ++ if (my + HEIGHT(c) + m->gappih*ie < m->wh) ++ my += HEIGHT(c) + m->gappih*ie; + } else { +- h = (m->wh - ty) / (n - i); +- resize(c, m->wx + mw, m->wy + ty, m->ww - mw - (2*c->bw), h - (2*c->bw), 0); +- if (ty + HEIGHT(c) < m->wh) +- ty += HEIGHT(c); ++ r = n - i; ++ h = (m->wh - ty - m->gappoh*oe - m->gappih*ie * (r - 1)) / r; ++ resize(c, m->wx + mw + m->gappov*oe, m->wy + ty, m->ww - mw - (2*c->bw) - 2*m->gappov*oe, h - (2*c->bw), 0); ++ if (ty + HEIGHT(c) + m->gappih*ie < m->wh) ++ ty += HEIGHT(c) + m->gappih*ie; + } + } + diff --git a/dwm-6.2/dwm.o b/dwm-6.2/dwm.o index 2ae5af1575cb95f4da20f675b2b13d8f4eb42075..e031bd12bd8fd38cbeb46077e369b57bd570def4 100644 GIT binary patch literal 67272 zcmeFadtg-6x&OT<2^tV*qM}Ai>!7hF3YZ9Lf><+T0y{EbAVDHvAtXT}fy876f})^9 zl-+HVRy}Hup4!ve(sS%j+Ij(R1cO|x+K8?7E?TP-;{~-MST*nWS^Ie=D+_i#zxU7g zJsW2B-kE0qY0Wz@1RbvNf4fg-fmDtYa;8q+U}8bSrzTfI=<-DNZ=E@ zV^_Swol)pUirvQXfu3kdS0r>%SIL*5*k22J+!+%?c6Z?YXvx!{&zF22ihWe@e#m|y zbpMl)lJ2Vyi#XjC&eOK*tb^9R-^ZMuxtDgkQ}W!4MkiO-TVBADZUZf(_YGXUfQqeesMy4}`kEc*U7L5-F<8wL5ml^K5rg3&rbbglld2FWsnR3Q>yqs&p%Q9cv7wxd$3@4F~H9_)<|vz?ttwZsQ~=h)7AMcoJ2 zlMl~WrPV$Jaz4Jamjbb!5vP*3&=HkSY{Yp>+7^5Bv(F5_fNpJNpt^cu81Cs~Z=vrI zbmiEnHL9@LPUSp&>g~=MIkwYMYCG-rj?zj`YTX@5c>O(e+F{MT^n9F3vvFt5>8^68 z)I5?yF791Bl%PA#v)$QYyJgu_GBW4(@0r_eCqGym^U8M7?#-5!Vb$Ai)~WgA*NNuU z6m_A>X2V$9eVEEog|lZzR^D;!TnNV;(3lg;LxM*0irpJ*b^j;ZiRXpsD<8Pj-Vx2S z;mN|elFptrE<&ic&+x*F5Ak4f+v4uX?1=MO#MvFWI5JC>zptxcX>rtjSgCh^O*M9q zrTIl&o4~A&T~YUbvMDruXL(0gS?9=eqM_+s<-~6u0Up1=D-R`muO2$7bHo`1J*bNw zik9?TJv7oe;sjz(!tsQnuD~m0og;FhA^WAkEBNl|n;LPe^9my{y*SWQvUfFaqs);8Qd=qg#g~$nkH%dN@hNdZXfmcd;aNXktYrD7Q!!Y-8 z_5I*zTt`Z}qM=w<$<|P8r|ou>0@)=`#)lLfh!pJoER@q>frMu74xRbr@{4ibnMLwpk7P{o=&q8x{eHyA!CF|4B=v{r^gYyfa zGkcaF3+HY)cfnaz71%kt3*jZa@S^VHg-~DK(I3xtcHSBJqQBsIu<^`>MV&5!k%FGU zpWKdO;F8D5;?Oj8iUjsXOFE(eh_X6IoPHF*!%B8ULl^CLJ0`*j_lK)UU)1H^mJQ%` z3@0BYuOyB^wj_e(B_Ah-mLoyd?nN#;x8=gM!d;cu5_Rq-d8cC}$vd|xZ_aPS>h5tW z2~nprPn|j_|D(>xyr@&1mlbtZ<)Iyo<_(XcnC7HjIndv4mpqj?%61=bfnaJE0T^~7 zWo%7_d+Rn;l{$y~1QysOld==%CLdo6Nh>in`MBy<5~m{1Pl^OyLOG}UXHggqTcJWy zHlPVv2Y=kE*v?yzoCH~~_&Xn`F8c}rbMv?_T~qQ8QB#WNqIry58u?*lem6C6MZ2nI z+U^w9^q(RfTPr%Y-*d;7{4&5DLGtDPzL(I6jj%gaL->ShFAzGJZM#>uq;{dbwViHC zg0XJWhQaQ%V%vGMya;uve4;yRe4xus6c%ia6m+F7R5m|K3D@^j4LUPaVXyKQeOP5X z|3vl8wcXV%sWxb>Kr;lbIkvlrJoG=6x)ijpuj9ke+Pf&6vJp{N^$I1awv)??-huEq zx6F=&?%$qSR{WVAI=u^pwk+qfSZMT~zFfDgGV0bT=kn0~??yB0iUVDdf^BYDEaH4f zzL3q?l-1KZ`a^3=5Jc3S8gr*sx>rqftD^AqT*PZzqHa|oJUpjNC>xK<7X$mE1%HY- zz2ybHk-*c@lAX&}l%zsao+?O9>KvZ$>^}p#Q4+JGofZ9%e;(;m&{MSgi%;AtGU>&r z^A@`A&Jo2ir@!Eng1u4aMRew=+<*4>N4)kj;@(b0)14ZH*$BLId`4z0FFWwud2JKh zRs^0#FOM+#mX>!;>sR3oM|i_kSb?`WxX2fuca9k9PAyJ{6)kv63+^{xeoJt}z2LGr zxZxG<7RsDR|Ffwr`&6FwKJg7oL~>iMR_c(i`4!Io3g;6pv4dLWT=XBE)p^Khm7BKn zJcb+5ybd#Nih zJU~IoMGKtePR!d3<1KG6Pzd|`Ch|alN*;zq8`i@)ei~}SI$ZSi+9>*uK+blaObhOg zA5P;;C?fl^4`E*p3Oe;r)IFhmE0au1RU|vQLTdvV19hH^F8WY8RX9(jL+pwl!4~yD z)wkEKTa}mf#BkVG^r{k#Iqw&t_G~Kwzh%y#VT{vCGm$>DwX$DEJL*&JtH zURFt8=*AZiEE>Kn+x;%Ctb$auBz4XA?2cDMYk#RyBuNQ})C{fNK=)2}-`mqVV|iKS zMZ2LZT7otneFI6UU4-Y(|s=tXc1}Y&dL_sxuG5ARydo9^gV!~ ztjf0Xjt>)4i@JJm0=1K>kXVV~sh41q?I>fp=y)S|9-z#oq?j@~zTKH!?99%0rc89E zj86R(Mo4k-${VXl?WQK!Q@4o{t?%U2@_`T{{ZI9dLH$iFR7_=F-}`>$nyYyCtj#Av zQkbk6IKpvdpI8 zVvZ_J8wn*JrTS=vI{uCBIAV3mf7C52cBhWCx9&OI&b)yV6m9gZ#Q_YNqu$W9AA@7B zg}K~vON%Qnm+_@aYP48|wzJ)Kk`zQb?Q&Gs*zO-Zsze7NG+fzi33FA>dZ(bBv0X3b z2ldI6iIxjc5X&z-;JPS8y%Ds8>tLTzX%D>*+qekOdO8{ZKq}>2$$$7n<|ln zkv? zeu8h?ZEKg1JNAXv{#s(^Rc?0b91(~*dkcE*{Nn3q0Wy3mrXsj3*@;;N=13~WMY}l* zLbst4kM|%!(QT_pAo?QHpAHU2MxA$~>DoY97O9C`B8x;9N8NSR$T!Nf*`#40ufoWy zK2&B-=@u`kBWlor;^DkIBb{Eomt)MWGF(|wGl$z8YS*Z?aw8^5kldC(Fuw9u6+GWX zUCAvQRI=UL<=jA5y|-fwS;ZYR+S2$@=rL2*0dk+%_x{}O9m+)V*R9$h>cF?)&UTa3 zi@BB6Zgl;;Q<79b<5#%1WD|608U;JGX^JvF?WqPWV2|n(lI_`8PD?&o10PmA&vkQ1 z!7ZeK>V)&A`v+1Pb(1v4O^w>CtZT=0Z;NV4AEoQm0$jVd*tm3)N`r1fCq|53BFtT~ z`x})gbGtFc2KP#cikekp-|pQeIhrwlufz4^mj1SJb>sNnqhBMg0=p9HL*MWTJkl zI^z68C7tsyHS4^v!wS8i&}yA;yI6F3%659zyz@?Ubj>g@fV4K)Ifa z5j19_UgprMoeE@zkN(S~38%p?X47-p6Q_nA*^}LN62dc+;e85Knbvoty>)+fa!2M)!9}E^&+`|;^cfhXRfy*M^jPmdKU~fMJqDiLYMOv%~ibS0%@>Z>O{UIMNeMi_kl5|1GhEmTF z1CT!yiX&Yp$FS#^565D0qzgJoFTy~hN@46G$?81Yc5W#ZNxGn8!@lJwgp$_*(SdI*V2 zjUlDRp;qk{%thIBH1CdQMMDpr=DEVQL#>k(#+*G=B5mh@T1d3r6%f-F zI>`*@i`3>6H5n^w)U4(Y6j|q~(tSH};z2i3>U7v3y??=%yS@hB9lH})Jyy-D+d_@O z-gILS>R1ASnA^Dqr-*w=7+M1Hk99k!Wpp~i%6qY+ZsC+oPSmb~`C(j6k|O zM|>}^wdDD0MwhRBHGZ0V8^tQ}2<2F3RwY*QzC_=;SDm*PJQsMwd5}DM`Xg?|X!k*C z+Oaws2y8ET@tQHDC7-pZ;ghH3fU{jK79Mc67JL#7Y;`)x8;s422TRwyH#~tF^>J!d zFC};frIK_+9hJC=x4KH+TMXp&vZ#wdsV7nK*4v)GGE#OXl=YP$r))f!K|6^NUj#K~ zL>}(3aD|4`jZ|W_&BjPB+xe0efQPy8sK%`5TbJBW&S|j?&B|x!e)b^Yd|Q^ac`w14 z%6JUJK3WP~MUD8aa3?FDfHCzYAT~%+NzCs*85V zI)BlHxuIS@u*4E8S(2SNm22xU<7QPRcV>LiGpc99*NG5D37CpvN!sqbD!0GKPIiZ5 zC4WmigU*ANSG~2&Cn)aTVo%YlSY`FnIX$@YijeaZM!L?+$lJ&Ze|O8VfW2pVVd#E5 zgqoH8#OnUERnfqn=#M65C{K~%9f`xEjv5h1`nUD%?C(zgGduB64a&4J5|rm5ol3YW z)_JdrY4U^cpwgPB-1w5&*?2& zfp1SKu4Ntl*Bl#juUiLOv96UkJLctS-)LzU@DSxFEO7DaB1(JWlfIA!;QmR>=~5~0 z-mn<)z>4A|h+UbU;;Scsmj_UhQKwY}-JFH+yqc_+lpRU(kN;NR1XQbHZY(aR34!uL ziL4a(`Gr@jW)7ZDdeN}mcCQt{6W%SP+bYF#<=#pZitdZispH8)IQ7*Y^d$(c-p1nv zHGm*UxY zM?YtF$lj0nv%R-tHy%`W?20(;F|2)t?41#(r844FMk9`G_cl;Gz392;y0-1&*-3jW zv!${RrOg}6T)?=cGP6C_cemgWiMCXdv~BlYFZg(p_Hbpiw+ZSu)6?un=<5l3TD^t7 zdaJZ>2fPHH&xEIQHMa{$moh8x4TA6e&LB6>-j>S1fxwrZ`#)8G;bj*WlOHCx)KHFL zTDpaXtXBM-9XAl6Ybw6(?KBv1Z>Hgt`*1eCqwWnfwn$y~7Nw4AE#~wc<@tgq=}mf1 zLuj;_1o^In+}Si(j2GB0o~rMPk8)nL&%5yp8V4qjowPiTK^EW+YmU{2+>+i=P!V8iYkZHD~V%>WSWT>k|aht1| z<=(1-w39T$orI^vm{vl}tYRH;t-zEKnnZO%|Gw9-z)k{^2r`!B;^_tLmbUYH!l7h4&%fHxGDpp+(V|cex6E=r zFWN^_+DK*U1A0U&O{Bh9Lq*T6^v1PlS@!2*|PvuB#eCqJ+U4KRvP z7%_y*QBlP-=x{vTxED9uGf-|n@ty-Xn8thYbzZQY_f=GpJ%6E@TcH(ymd@dm5}0Ym z^Ku`-&+q15A}M`Y@k0+E^-(ah*IAKMmef)WRUMkC8ItZJ6>x@}gMNdn9I#D21wY zcuoE~G$$1A$35SO=i`i?P+IQ=Uvo9u39Pex%&NULi%V%+PCoaLXs*0Ya!>})gH;Ue zF^5X0aymbp=P%EoIdx8@GLc5thaPU_s|ow3GH1_5T#I&L;Nnf$Ro)E>l;`T+BOXdv zd5lY;VN!wb(#p%TyoB-Q=@_;n?Wx>m$K3zX935*2UMhOad+ruWw3OF*JgO4VbH-E9 z)cNQdVkM`NDVV4yj#T|Km7;UMK)vwRm=nWxB&F&1rZK!6luJGLp!m^Kx+YTguJa15!I#8#-r@iC{hm1x2a{A z4vJ6wI2tWb+T4oB_Nm$QF&|QMpu#;3I~;lZb0P)00M@bxyQH~2F(ftj??k+YsiZ95 zn~z_ELOD3j1JB|SX=;J6-mE%{_z8GIN(P`Qa&0VQuA6tt4K#O8oMF2^T|-HL73q^? zp_3)lGBa(?REwc~Sn>4cccHDi%-u6<}scE0vd#PGd@_=h&6uT>4=pOH0ODT2j+x_@1>4|@@sORFMen-L79V!o0 zIgHfwK7^hI!(bI`bE!c6n>;ZDjLi zq=%I_oK|aM>*qP0#L!>twiAV~zatV=?(E`6VZC*pD$nkeiHReM zUiCH)V42L@AL>j{b9cWa70nSO)VFP;C_T#Jq_w^P+uf(#tNY??NqHNSorg=JDXB^ZaLC zNGtbB04zZj@;YHeZo7ISrBZotPNjEFAD+c{)2H9i9*kBspYmB6R-FP*BJ)!ZBQ{8L4UHQFRzp>+Yb6)|Z_+@>QY(h4rO49wfK7E6u5|sA4(arPRd&K5Fq%_IXR% z<44RvTB9n>M+-?MeZV(Dzqra>5gXVG<*v3gt!AX|{TpoM62AM1^rQB^hD??4r28$>;)!tcqYAPo5Oo_$ z1Kp95*Fx9*T*+}Xl%*{0))XrrXDF2g-O-Z2m7nlVB)Ki~5bH_Nl2Z~BZFee`D0g8S zWO;Q-S$5(Ko~l=64O+?^fwkep(BxIQ*pvN5JWH)-J};|D5A~gcJph}KFqj0t^THll z`s=$%W?9(5gOMmT8A()^z9YP4=iVi1`hDmDZRh}nSq|^ zI_e`*TWL(@CE5>r_h5+x#Z=8P(HmY-?RACcRsU{Y{QI`EcXo1bz=>2t6_&lPorgB$ zx&iMsy+8N7bIPhPLu+>-UdaorYw+8UN2nFRSS7UfMwJEXrzX;k-A?8t>aZ$9QhhJc zPgYRMvA-J2J_rAj#1573mrXCPKqqz_9^w}xniL9G;x!ubo>!TAhISNsk)G2#Rjn;} z+sjVk!IM1o@J3G0iBYem>u_?@Iz+*WkE?PoNQE$T)T>Z;{6wlkXqVsmgj`f{qHd%b z;Zh})O}LnnY(ZqPlgs(+iS?8?$q(=lPkRDpduzsFsnb~oU(Cp%d&7a(gSKir7RmD?13C5F&u!NN#R86D_Cg974=c6=TOShl?c0x2Bvsu zj?|3pjAtQ%Rs+LA?Ta4o=6pGOt$YQ++vNUEC8jZMy=^*TEZDIkFYW?P7MUWN)Zr5$Z3D$NY;oBU0MJ{C*zT zV+%6HUscycu)-VCbE!nSQnwUwe`eFk@yzjl^HJ{JtjfSOVRw3d=ZNp%S4la61Lc9O zk&<2442xn{xZ?>-&x^W~M?;)SNF-D3bdCgeMgq@cJO4Gq@Uww(=LY3gvV}B8Lespn zqfX~dADIYy50vpta=&|VVPJnr&#EIcFD}N;7xrhkMt!PDlu0)gUKw;|HKS}&XeEt z&JSYf$r-VQdZU3o<77wYaLb*XA9y;Fseau;`=k0ZCx>B^%ALuh3$RT}>KP1LXk|{$ zgG~^iG*M-*Xdi`l&%5X#W#RN#u2Ni)lo*~RVCf~-QXNR*$f7PttJPIZOQEhF>TsgM ziw1BDmn0srdBe9sBeu<>D0SS*7F6gKc%n)U5_8&#v@4>9j4@{uIaGAsunzF@fVZrH zWKc0wA`!22vC$}Nlp*C_K^@pTq+)?QCpF%H>Q?k4SRPSz_>zhe)mkL516wtzH=(hG zG}VBZv${PsTFvBCH_ichsn?%+S55lxfHl2RFfePzfGqtJ4Yl%stp~iiq$e&)U!Lp? z{*LWlm7f~3Qx(d@kvwLY+dCEmu=JXwTS-Ngw_wof4cJ)`X{slW~@ z#@(1*!!2sN>PH%>zU`piuRE|g<;_$v-ShMtnSu$h$`q%jC3U!p-lLQdb9=x4p6Xfb z64f-s8!<`wTqPz&t}=BAR;o!|?^Bo(B^Rpj9tJ`5CC9tNao-W4R+o&wgpxY1K+o;g8_Lw(^4LsTZ z^vui-s^~FicmK}x&SrY@$n8vLeO~Spu{Al6@K%jzFF|f{|M2*UtA{1`9~M8Uw-El5 z`$wQ)>_0x#akA3(UZj7-j^5)`khCMfc_~(q!Xi~p=z98SN6b^JW;$!KR|z^yEd20o7Tca{7#bR&)1Gb@X6d2aSSvqNrf|t*Y>5aPc3DCF?4j z*Qu!+;_bZk(xPaemu;MBGmCZ&$}!)p;szf%mfl&S+7M*d;Jtg^?iTkp%5ATxxsOv5 zm%5^xDliW;x-lHWdNCeotW-+|Jm^a;q@khfyOD!RzSa_@2ZsL_wPG#RiW^=;tx&(X zqjGUC^&yy)E8FxMK@WJnnL5>-ek_EjI2$$MENG;k@8CCRn0%x*{*l(%Lu1Lb@r?$EJC`m3L^dYkA5BcIBcvp-g_*DL6=0i`gY zq~k%vJUrkm47`lOo)Zncdj?F4I-eFi?fi9X|4Bt(7JQlf@}z6d^Rg(4UmCcNtLhxs z8*!fNoOor_K?N8diWWQ_ah{KCJ#bRA=xN-*)9S+_1^dgL?I`@t^97$cemU0@8 zA^z%vlkZW#V(El%?Xu?h;)d4nipFL2%`3u7YnRnthTF!raBWj-Lv8)aaBE`Ovc_eX zSxS6SZM?QA+|b(E+&UrL+Hggpp)DS+Yp!oN|J3@?9+%r;R$c9~)8gUAWo_`&6t1e6 zQf9}Z;l;Jf>YEx`Cs=b&t-qACS|9)V`mm?Ip}nDQc}w`zHY>cSwy~+9p75A+#-3%3 zS#BlTVA_N*NON@V^VGorL@(Uj(y%OC z-`LjDRJ+oG?4ssn@iv&5XsQn{Y=GC=`iAx_tiZis{jdW)rBYj#QV^MRjCq`TWTjmCdTM=1(uLo*yZzuDCcYsZiCd z%F2soR+mRT33!?wnO2^@@l@%OuwXu<%Ixy8se{GlPo5QvRh7*wFQ1-v@Qj*YeM#kj zPL0ivRzzYKP4UFbVio1ntLMims;VvfA{bEuXliR%+SuOEYBg95OKa=e ztTEMARb6Xsyl!#1x^J`EyxW%AdTUWr?b3#}#m#Z+vP7d*zqDalVm=C-HD;+bW)V)y z7UHwW8qfb){8gon?))##?7w=UC@j#a4;+@gHsqTOT{W!PnZK zg1GCKiYF9ohdUOs73ZUh+o+q5TXB zQ#smvq52$+{}YSE>YW_up+BQo75$7}bXgf<{OlSR6qPgO~YO{re43^L(=-TvRE z%M(#b+k-RZiFO}8-r!GU18g}QUwEU9uE)EM@lG=@hpy(^zmw;SLbLuG6sdJ3=AF=4%#}2;j~%e+j;pB%cfheapGuVvkq2|7RRkQ$X@STz}V0Yf9i@!A^>lGGF*D?w1?x5+Cuu z#BisIOi0`t4R_Ojz2R>9Uu?KP`%LU{LZ!@`_$(*5d*c)arhf_F_VJI0w95VpAOEz2 zo(^$0!x#Uw#zu!3zW5h+KmTGMt(P3?knsK7OWD&(!?T1h?#+g~*iYkHI{f^LyPtot z-_O6e`}vph>*rtG{rs0I>n+Q#eu(?fZ>c|Ztj9cw|G4SE_u{_jTilm^i+k9|UE=?3 z?%x)^S$?GciGDx#QnqWfVW0RH_pye1fbT`WpMP=p^Dp|x82YiTZBYB88Usy6^}o0m z{ieH!mhweHfN>W8-XGKCd6yd?Vrexl8zd?h?MA zdnt#bMva;QIY#(??h?MAyM*uOF5#b}g-w@XzL)s>xl8zd?h?MAdnt!=E}!KjT*CKr zm+<}EC44`338z>B=JOgpOZa~76270igzx8G%HfpoIeiLvR}#LTyM*uOF5&yRi~lRq z0srsC|E9qIKT?3In2dA$Vl4gOx5?4UFCE_|M=}y_8{PbiL*$nK3mI|}xrYCtT>O71 z_bp=o>-_(L6gZ{++>(;BimX!>7M*ie@j2Eh_2-;jU)W%sGOli1@i^Q!EUaI+@GS7N z>&DkY?yO?^myWsb^GNRS$Es)MXSOY_ZEc|E<<`R1<|PfwtlC7p8ISB+<73+vr_s6*zV#H8<)v2z%#MoC$gs=HHzIoD@Q4dx~@ zGv)?!B0&rq$=@oLfpO{}ww|wL97^n$%w+9|Y~I97*&hk!%!E=(?H=a0(D|ZZ&W#z7 zVD9yq<-u@9!?0lPli*L1)c5CNohcv$LUb* zi%oIKm_IC-U48@@`HQmq)g%Oe8CM0f$)EbQAI_&UPm&4QlMr;a^0$ip-A?Y&U`xhN zg4wiAa4Yli6yZt1oSQT3VD3$slY-&StVzNA8;3-Kh1VYz4HhR4hp)_|GlRt-kzhU~ zCIxfh1JQ!lJbd=BuA6a9wq2hwnerim^jI6r1%NRWW;QqA?~%L;6PgYRvy8%=60FSJ z75EonRDwg{>$tl~Wz^vPqO_Y~+vHR`cd-%HvDycLK#{Al_4g8v_|P1~&!DgI$3O zgF6Ei!Ja@g_)=g}a8IC;9GfLoEbAV44RfKJnuQycE)|DJmxz}x3y`LZBf*vn>3c!u zv4P;?xxto7b+;eBm+-u`c%0$aW<&rl3m94{$T1+N*b1<{rp< z_FNn+T^h6}2P-EBYbFO5Ojfy85iD&B=9GK!%^gC*c#=WoNZEooBr~HZ`x7(77C4dJ zQI_3@YfnGyz8)4u%&hxvA;Ax`*YyPr7kX z`aZy{k$_PzqEs*JU}46L!PO!P(GS?4N?%o$RUJpDdb^^^a#^r6qdr)S%4;+$)K-kA zcLd|;r7!5YiRxu1wNE!vy}X{nPaZZkSedarSQ8B{s0-Gh<}X&dPzWFlPe=+XcWYSJ z@uUmskj%J9HLb{AYaY-&?0yX8@1eqiiOIu|lNr^)n(4s>)vD@L1S?yDHC4d{ljQc` z(7is$;sI$Tg^z>Q=SDEQiGZ@HRu$UtK*AEl`s!vgtKZWFRgz>3i)=mIA zu0pITkD&IS3b5C&tYVo_Br^qlSlZRAlXtQEBGz$z#sVd=8vZHV$JkxgEQs|mQ|XC& zV(%P+?LPz?j&_+2dfzr3m|!yXtL4-_&^TibwN>3{fVK~6ts>pq;V%!L zIQ#to*JRK2G)AGeWkJT@q-0TA-NkZh%@%SiIISLFF7d&5WRh4HhQB|v`(j*E|9ds} zzr`3OQ0H3+yq{&%I0^OY#*CU^=_1u8Mx;$de}y)&Io&3X9!3f=_M|W62jdcH*Jmor z(`|VT%brj5b|8*Zf`zNJraa>#i7(~HjqFGDF(?DcjLb0s*h^`#f!!jwwi<#t7c-}q z&(U!nebokYs==v^e2Mwcbogan8izA((+%+2TdI*>z0KiH@wcRJCfSg2%dl>)wUKT$ z#vIQw^z_(E2i3o+_8uKX##gE(njfsOgOyEcXo3Vl%7h`_!hXp{N|$<-ab=Qys_fm$ zGAFUj?6fP&9oPfxeigaTq4J~pCN!-X)2N~HD|?j2d)cq5Gt*W4kYthWQn(EtjxQWR z9&a7guB*0|y1;#bgBo-AqkO7l9jZ-&ZL>I^7Bg34{dvKhOPQ}>{ssk{@rz*2G%ua* zU|vpK<--y^8`S*bF_yWR`Zbito2efjvfn&tn-i2fC2*31dg9=iv<0 zmNL#JFWuI$teOrk4Cc@XU@dgq!~8fJv-!r6$Dj9LViMedP&OhZHsRBS>w7Tr+knr; zjF`qU*91VTHChSDj5UW!59){WgZRSnE|-l%r*+znRZu<)%BLg93N|D2l8i%X#~1*5 z*RlQ+soo-<2bDdvUCG0y1n_!f#`iuM+enU;ycwH#{Yb#xi9IN!cmjC z`4pDl#9U%>AikMz8RGaaIb=Hw)Q3>&WI_FzB9C!qdd z9xiZDUrNVs@FDs2EPuM9Xsem4eXO`vbA6mQq5mcM8Jv)6t`GhMJ}SRBUXsp#!Ub_j zAK_aePkK6dJg3GhV7r));0URCJ=k;j1dtmNPto%-%l{L0(NXK2taosxa5wS2`0K?z zg*%V?SxOf=KE;Rl*UZ)29qeo7uW);&=H+1DM}Cn0ZAN^vaZh|NWayy2i;fUD=^qjD z?$x{;m&dbwkB8Iot4F$!o;?Qt4$JSsSsi>HrTDP)x{1xs-)H%aEGOwUn&sCp7y0ol z|9~N1jC-;PV|m&SO8VdZjt7=7-w96o!#L9+=}+wi$m}wZm^U*2Lg~r27O)-}S5mzp{r51Jbbbr>q<;_Vk@WeDdE<9I#Z*t|_=@>V&TyHZ z4MX`SJ&nxOJQwmb219Bpzx1_$!#|GYSE<1v##=0L67y%6-^6?j^EqJ;oWlG(=2tUs zXI{blbLOL%S2912!6N20%vUj2<36}8VE#Mi65l1vcN%;-^EVBCE%SZMxmZ{?GS4~L zGeqX6cQ7wt&e>!AC-ZWH-^aX`d6?t%AoFXPOaHr#`CjJK57F@)^9D{}sn;(vPcpCf z#I3iPzsLMk<{vU2p67uJnSa6jV&+NaUxQOQ33I!;j`?Ak#PP)k#MBW2qVo1K>yiHA zMCOax5a}OJX8s2A4_MCx=1+6QQgc+eO<{icX`Z0iUj-hphFkLdoVzP)4$IGA`Ngci zh52UYw=hpKkL7!ymievBf6H9WJK;8x`TGT)ptO6xU>-ih;}O>LTjsUQ)w~jJo0#9l zT+J)Nw==(Yw5Q;=tmj4MGsk$KCE%UkWd7t>?|wYX_c7ncoU5^Qfcdd!dV*@shsz;Z zUOuj8Ue9`t2B-E)j%>cjW%+-wyqe>|EltD|N4G#BQ=GEgoP|lpzr>Pv?$z09h;8v>a8D^ETTq&p9WY&|<8#F`@jh|He&+_Z| zd@;)}W%=uw&t?7@^ET#n%op*1@f_xtGrxv)xc?;(t~jX6*=XpwU-9AAQs%f-$3x5)@I9-u zwlZJOoV$5zH*@JHM4rS3Mw9Fbr#F;5)+t#qhn?PKzL)3jQr`A5?_!?M^4~BoWnRoY zX9%T#wk7KaB7Xw&u%Z7X#fPWM6%Qk<0_KIRSJHVLbI~jOeCA@e@X5@>h90`j)aDE9 zY*n(nq>Jdegt^?yxsJK`7w+lj$ciJMGc7%r1{^ch>~i2_IDZ5N~D9%}m;T1@qc8@h(;=ez2X_viurD{(9ye2KRnwGQ^T`m^iOj@3OsdKiP*D`S6GjpXtLF`S2A! zoSw%X%Klq?_+38y0U!RP4}Z>wzu?1P_ThVc_B;X$lNAIi?}`0#um zKF)_v0zX=t->K(V=ufBk$WQm-^xXVVcK*e9`Nb+vwe8Thad05NBZzQAAW`pKg)-g`0%I?pW(yj_;A`gJhslNZ;02{E#?#U z57#ZRmNm4;OFS=J})iZELAr zfs#hAEUR0J7uC@P6^e6U)4mMQ%_*XlZS38H=1~^R5ax4=JON{9cB}8{;U1 zyb~V=c$!pRj%{pft;Gg{fFC`i0j?3nrIfz|Z>k%3 zeI4=i>+j|xXOTEfM7%fO#p%s+Ucn$^$d>u2A}fp1SL4)G-OAc!X*6D4Eo*M2O4~G_ zF3w6{jkCta$_nYLh`!FEukrMCHhrB#U+2irh z7Ac=a%4?DGi}&ooFMfeS-^%Y<%I{gq?^(+4S<3HO$}fI>0mij~htYl4oN|uW=5i+b!BBUY(R5R)3~gmwRUN3MO&mU-nhIW z4U|-sYV+Exn#pMUpjq`uqBh#F2%gKlPNQa8ZOhEs#x}h162`^LnrhqHYy?5Q$b2*d zZ79BY!y?_Oa@`Q0k7i&+V|^SwE}-gX=z=<0MUWU)%`{XF2~Vk)n=+~m(@;LWRH&KK z5T8Ab0)(*$KYgwEbdSkQDtz2r6In$c!8y7V;v?5`shp}orHzh;DUZRSWitVgr)B!;b z3glvD!y@!yivbrl*S6NDwRy6WRA=Rh^YxX|0FE-^2go0@Eie)emrcOnlQ09$mP)^B8&9j$ilQ7sJZPA9NhPakC zNQ!Fo9RrEAbfJD<-As3}#x@v5rK~EB+Hsk>M`>4uoit$J(?(tGWSA+%3h9E@)T)V~ zZmdw{067KWfx-t3_)igPLa|agh}<5iWf1m^kHiry+IzI)DrwTyV>ZTi=^L%Qd5It{ zOKZ_Cleu`2ClXyX%?+sNG-#`-@?PoM7E^C{wQ4TH+gzjkGFKE!s@GKTz2V-V8p5ci zLiJM-8rvwzM5`{{R<~4cxrSEZg`!RAdgB$=gX5`ccr{h*%aCEqmQw_pFv4k*_6fZ- z#%-R3wRLqgl4@ItK?J%rL=}!T(~)&v1r)nbSh<#aEe4fCiR>%1Sc-#|Tk(j>dW>#x z{M|dH`8K|%{W^4ryzC2d3@-Ar4o&j^i4R`1t&SZmPhtL1ja=^cQ?Y-q!ew8sErV?3aCj-3FKanG@7=l!5q4dGnr2dHh~Y{~tAZoln5} zCLI#4q}vqc6#QTD5&JLpk*D=yI!OK{d_=xg<9d9%G(Er4EnM$!L=V{C4L3S|!15BV=qdN%Qw=WlYlgw4ezh4~^j~RkDOcATT++dN z7v+Hc!e!sTY5yNt52b@%4*LxKV$X^E=$rKX8Xw88Dvgsasn>H1F8$CdgG+mIy~&}A zj$4?MZrTeZ;r`T+mvHYl_y?o}$HSVQH*qg|o-*V`&(oUx9!>srANjX6`L{Ir!}yV@ zna*c2mwb5!e(0EMaLLET27k>Hx319izYQkwYB%IX|7wH3#{KeIP0!ynJ^yCNOMcyL zaMAx?1{eJgY5L#M^nattQ$Hy3LwNDpOrPVJQ+n!ljx^-&<9MBBa7oW|4KDUy;G=)C zkNia%C;L}%xHUd{;+j0gLGtk`gNr?PYkKtj{f!|n@p??-x;@)9PT@-W{MF!+zi${^ z?D>K@>39bpDR0AgYmelY*fY-Hq9?|j^!#1Zv)D&Ip~>s{ew86F@w(3760U3TjhtUU zF}UQ*PnnaQdivjE$V<4tHMpebCWDJT+cf=pdj8Qzez(RqXzBKfrbkbow|wMN8mG94 zo&PYn#Ot317yC~<8lG{G4&DCo%%wbt{&Itho+?d`ZvQ2Qyx6nA;G$=(!6hF%4KC&L zXUxfdJ%2YC@?!r32A6QRX?pZ@_{xwMdxjiCsph4d9&RpkGu`qGF5wnvdh~h}G33R5 z+u)*Sp}{46t~K~J&ur^w8qWlicHk|IQ<_SD`Yv-~?`iUvjlc~KiLc0i;KM&*PI^-K zNVvm}B`pW*IgUBW>+^*wANd8EygnaE_{d+U$@d}*vFATDu8*&_`{?W?epmd7ke&aPI^An^mJ%kpI`h`<9fK?82Tk0+E0X19Ab}zdo^vn$aqi5(yc*a3??!`ya^91G+uPB#?Q3ij2JmV-dxY&7~rvDSjiT2Y_ zkp9o`5&dJCOS*}k37Y&rH2KMfyx7yGaXr2pHBMnafDauH8(hMD(%_iipU$4LC81ka0%;1s^wvV1m4S9+0ody^E|7mcE*E0r} z_UbPN7yTEEveY5*mGoTT!;=OVJrDTsKl<>uefR+%KKkUrc1pOm53l#(Ykl}`AO5Zn z|H6k)J;k$=$_eGU)QiiRXMmBL*x#b@OmOu|4ZX9 zYW%-7{-MTo{W*CM!eQE9VsIJfml|Bke>w9k=+eh6F+*O`XO70Hossp^Mvap$kxytm z6I{~aO6DZ{PmOnI^5iCV{zQ}iN|V1`<6mq1UX6dF@%x!my3t%m?0HDz_i4OK)AOvx zcWCmz)%Y`-e80wD(6|*C2=_HjPZs1Q-99wG?N6#9Azvd;2b(6ux z&Yx=f57X?t*N}gJ_1tH0(X&a@qmNg&81mBoZ#TH;f7all|HSWm2AKJEDs#$rdbfq- z`&5mS4&l{4dKPK&^c!T6zft45o?A6OOq0J?&{3FUhRke(0mk#s1~xSsw$(73LD26Kt8jAvR59^-UaZEzXq z++px)mVegZlE1M6&wdG4(x;j^#cQ~hUw0bvk}r=LT=&7#H-!l60fz)DPDT};2QGMKK#VsqW?~Vi~j%6^dGLJTgs4^_V8nai=NCgymTNt z_4e>+=8|8MKBxHbSw6hphp+eHzxLt7MjtxA#{2LHbBdQf-iR6Uk`9+>@?XJ^)UO|E zTpw>N)3`p~XxH>Vqv=_#@%uFXBj#kMKHm7TCa;e-{!NqD#~XKRTpw?2(DYCkQm(cd z{4uV-&ly~vQ~%ZABLBL(^zRx$fguB$>67Fh)OSo&9Q~K!r^@AGM``ra!2a+msd!<}vLZJwCbW^l3dM?U;T<`mx-@R4+zIDT-rQr;?>pA9Z?}8Y;t3&h@ z`0xvS_$|z-oRj^lxcvM^lh@}Xn|%1y=Xmx=eUbh;=iI?u(jm;8?AQCv(+v67Jnz<6 zgNvT?H9h*c_m@8Mk81KqY3cU5kNn%3dd{7ni~L@Li~Wb6 zH(38a*v^o_A7FkWbIRWlT70J)@}hs1#_xomiIlK7mTG#A)%3J$@)U;X`H?1noF<tqo&UWL$6s?-hvcv5&t*h_%EBY(OkPw!@xd@u5m|A8joi!elfks&Ynwc3Z@ zrRmYj?RFpej2{e+?^oWfb-ckPe@`{Iq|a#PX1-sd$?N&MK;wEowrYCxeB5HlOFDdV z!C?D^k18F^#m;=@6sDdpF+*PTH2CoAn3EnoorloF102M6<0JVv_ZXrce-~%rEh7|G z^6zQ<$m0h1>l(k^hc|q8K>l-0zE)fB)#pKf(YQWOnX0Yt>Fba@jZpRIeoa3QH|dhE(>!HukhJ1`?iwdQGM~Cq(?f9)J=bgUWTS9b zlh@1DPc(U5|D75qdtT#t)2}p6@-i>G-{3Otm9wP(fno53<55Fi(tn%AsSJz#yO>j$ zqi`*}N0TQv(etv#AJX)^<)bI1$?JMP(fGrfp8Xmp`Bi-XHJ?p8v$)(zIT1UL)c7V% z{|JqfuC=UJ-g{^24;%8LU*3C1&YLy;g@*i%tp9B0rhXZJku$l8e)+v5@kccMF+=~Y ztbc}&etKUv9dy$5*J}JxxJkY*);P&WS^rYzru}h4UhLO@r%8Rg=$GGVk~h*tZ9N^1 zkN)*O`tQ{E{_`O&O@D|2Fc zJ=$r=i~i>|zD3h7e@BpkX*>srtPu2L7a2NffHBS1gS$~m_{$fL3 z+WDx#=dqp&P0z_-5^kj-FM8$~`~!*%j#?i*iw$|v6F2xjJT=xzA3Zl3@?Ww1k2U!h zz{LJL40#!s{LF{{%HU$>!n9U6`Cr3L!Y$W0T}t~i z&ETScj={yA2Ih3q!)-I7jPWn9SOGEwxiVTjSL%g%ZOZ4X$T=diXyXhcx zr)uTxY(rl3Of3>(#Pw~2qC$jqto|Own9Nv4757vLmVV*nLuiG<@ zx#XkRbAcwW+cQ^_*X>ziaIt5#rss8pE%lw=BTNVB=*CC5tI40HrNe({^4m1|U--yx z(s;h6XS>GrcK%sSKh1?3@uB0d8h;A+V&^-W9(u>N@Xs}_hnso0Qm4wl9_}#aln#2h z^0!Te&-1)nqcr*LnmzO$VLB*(b$cdi{B+IExf<8)yiDU~X!0wWi#?J)^7pKW@4!dW zp;ObN+w*gc>*3z7aXoz=VlLs{h%o5T-#ek_i~imTJ=~Wy{rY;>TR!|Fjni0F;`OD* z$7nn=+p|mTjC;3Mj>dI6k7aJ=*C>tab{6>Xb2P5o8D&oP?8Haxuh8VjYWC02xE`-d zG_KoI>%$i_r*J85(w7S6QXW(-4MVtJ6>KFQ$X^{|+CC*RM2AZg_o~ zI)1BhvWMnWbZjyBHV>!&F0E<*ODs=1&eYQFn4z9WlBdt~G2Z=1jgy}TJZzm}a7mvt znUgH7O-a1YG33S0QjJr%GOwGeandFI^=yMb12;P6GbdSEYm#v3eZ+J~I>@;9DotK5 z5A>d5UH(4r*1Fl?65m@jJ!rfw?;=$i^78kjS`40!m&Pex@^`z|Yndq!b4^)1`1(PZR#$DI|rzLubefZ!x(19klg6 ze51i@Pxkcp`0%|3FK2mK_YgaU7xKJSxcr?sSx+!|iy<$6-)+6Yb2!|M2A98E*W<(Y z8eIPVT@F=59Ab}fnHLM+Im(l(G~|W182ooEzut#$G`Q5$9)nAL*=un5yK*vL6Fa5d z$mRJ3acUprDAYJ*smK>=oaA%ZL#4)b`5KMu?N5uwb@}xMmv&>L!RLg%fO`y{P6vZa z`;f!qc1Z{MJ80hDgBi$Q;gyEG{5`T3AHLq;@^=_F`tTkfzSrRLckcFUoZ6GF;a)oA z@OV|?CGxo%C;3vAFVr}tzsMJBoaEQAe5J;9`5KLre3<21G*0sJ_f^*$T=Hw9!KIz= zF}UR8UV}?JFXM1Y2hm^1<2vD@ztZ5Mzs2C9f4#v)|3-t0{vLyi{=Ehl{q*-L=ny+a zf1$xef2F}ie~ZCI|9XRq{*49~{XGU3{d)~A`g3^Pa*+K77yXq67yT^;7yauEp0?lM zqQA%BqJOW!MSso_KIw08(O+qB(cfZl(ZAl{Y5NT>`g;s6`u7@K^yhH>lk}IrQ!Mq8 zcnF`-R4H-fYx2a$GM9EjRl7m?co*|Rjq}h(2^MRdpNTFQp7F@!IRd_ZwW|C4V}S$^+@=ZpF&xeH_B!q>dbei+rxZ#h$Rn zDcx)?MEM%0a3$Xh4eo_%S;ZRH^^|H{x8F9n*i)%-T~Ce1Nl%yqUSM$1vsmN0o)(Sk z_Ou&Z^sLdiu4kRWEA`3;+bCa1UY?grJ`krOHG+YZ7m@Gc@)m{+9m2OU&-bw6gk;^e zRO1w`Ja=Dg@Ml@idV@w{Q;_w!5=x3J+eO_o6}YJ*{mnW;3dp+4gLe>VS|@3uhckQ zt{90g919FCe;2#O;PUsi+YK&%k9(cLXR!Wz4E}jo1)Hu16kigNzxUl^$jjdc-(zt3 z``3F7E`NV~zriRw+!&3;RND(!r@PVtu7wDkaM6g&vF+~VIA%)_u z8rfhZ5?4*35Fv#{1RG%m!9{`uOrc%GCPfMn%M?L^1QZEY0Tl%!c+Q^xABW%VyfAyu z{pLJoCOdcToSWqOdgfj}i9Y+)R>Y@1`|UpAzwo{^D*P-E;_21+CyfHZE>*usQsX z3Fmz}A$$P$?<(Xm=;!v9@WZ?f`8)7#(Ptj)tZ?=lzRs%``uSdHG?TjUj;+D-^Q~^f z{MDT3zl8phaOOEzgfm~-))H}eJj};-3TOVdOE~kxJ;IM}3%@1dW$>!-yWr!(ndh7m z&OGysaOThFgfrj1B%FEv1pNW81Lqg=^NGHX`CDIq)C=`1+oL@q`~x`W(Ww7+N9a$B z{_35<=Y^jDUlINad>{HJ`tR8le%POp^SQ>n4f&Vdq3`QfdLd^XV^%oxAq&Epw`@l~ zgnsz^?Gk=+Z^Ww#=kvWLoa2FM;T&VCBT8{X@AJRHxQ7S4Rmpm64e#)Na;=dp0+ ztC`1O+(!rEeEI*z$T@B~gy#u4=NI^%PX6^^_!$>{=EEn1b6#%`-h=3e^Mm6#J{GRy zGqp9Ys^tqwYU=<+U7F|&@Tz$W-jF)CgM#{t08`ppu zO13j?ETE)tcqroycbVIZ*Q>Vp8e&+(R%p98bk&wKtR|@~=+~bf>pinK*6fSW{gv~V zZPBy-{5k!HTrgW7df@Sqc`8DxQ9v8R6twJbh)nWFYB3`ryr@OJjPHj(-rW}6RhDP* zZo@f-2_{9EFGh{8A!x+P8Yb+q&3&qUayYaW{fm(+g`Di-e%m}ge$B&C6xd%8$FA#z z^-;)r{jMBos3lw%I9h-0*e;sT?E2N;g~m^eTm1TY484AR#{5|1Fq3+(K`Re%A4Drj z3KUSEvbtIP+Q(3s!MM-kdu)w=)mXFm#dBd_k^?IQ&OR$9HH+W(HB^rKPAeYYyJn3) zYRu!yk2$HA3|e^>Rrbkz2f;lP+h5v~7#?PO8K3n-+tbXx1bZBQX3sY3r?6*! zi;9bGi4`>}>QQ1%1ThiRM9}7t6WEahMiL}~mV_i2B#@Y#1Ht-0 z4?%XfQChWXYg^mu)wcF(uP=NDgMiit(w7fZv{sWw1s_Fx=KEPQYbBGBeZAk`@4w&g z4xH@0KeJ}dnl)=?);!KWmzTw-r-ed}gphNFGx#K^;}q;2yf0C=CC2>|}D)pH$zv_qaaqB5{;?3@;_jKGph{`s%tngLW-=A(PW1Sg?6uue_edu;P zotW;QUEoKH{3Vk^+hWCC(X6w&ia*ba|2==3fA-WYw>$K&Sn)GJUo8H2R{Vqfe`UFU z&bs@_XmR(Y!=qkzx%Z6gm$&!bANRH`IKSJUk?Wr|A$56`qjU9UO!m&2nmF2DS)Ko4 z)a$}S$DU*c1jvkeGsbr8Nu-6gfvEe_SG;*+p+zOD+p#@yG!#=qh5e3OykQ-c<^ZFx zbK3h}DeUUT{|dMBbShL~R}WoMTl?pCXFV`Gvih_1tTibh(W<$w_wQ(hKRvSe^vvV4 zu77gz=_Af8$+~{?h>rk_mb;N-2kwrRyAfy5T}kFg$&**V{RPrZOH3&DzRY@HF2v(( z-OiIKW0m{4uJ=LQd-we4dHu%{IKQw9_ax>VknQd7?|_MalHsAk7w$>D(El*i ztm4+ub@}_%(8(}jg+hGg`t#ahS;>Q3PwA=e5Z8Bs^d?5S-c~3pxvOuI>s7S7{{5?w zhGkUD_62#n&hI7Ot~ch`c3iVYRXlzxu1^ezz=d;_P=vY`%ccnkWeK?z9{9CptLVuE$&)eeqrI}RY z=?nUIF6ees?={A?!4__R$Z^t~de_f5HjmPJvE1syE;PSPNaFerl6{nWJGW%y9?a1N zh|C5W_u{!ZL|^1z<*MfwTrZIup+9+mOWZB7To;KPTr23RrSXwNy*pm#ml&qO)TYMn z=)9=+an#!$JtsO>nbud8khCb~Kd9LIcTh7NB57V>*9Krt$I~(YZjvc$_SUkFuF}r2 zr^K>mca;%-?HJ&R@9C;8-hJtaX`N%n=Wjy;(@?B<+odC-onsCq>`6o(TG$nOrL=QQ zb}Y+%Df9~dZtI&F^{a9Vq7c0(w5@peVXPUu2@ zNu6KJf2;uP%R2fKncmi$qo4NYzX)tHVMiYPqqrwV;mmw!Vh0Ka22r6_(Sc_6AK87?c{l^jt9 zg{;|)TJ~7e?Ld1G^9UR7>J z%)2BP{bMY5bPQ&i-81a-{(iUksU&*9$67$x^T}rbAlPA4v2MA4{ib!u+U*?nW4aVi z%S@h{daMzYPI6-EF*Q~sk42py6%D-vJE!*NP#zvjp>k3(pqp5Sblh{e-kT2}1zK(X z-mabtzC^~{^X(aEDS7*7DMbs=^F_~(em}afoBFQ8rz_{U{tVTnkCV}=6{FRE@o1I$ zJj5M*>gE2vmoPGoaXVEv_qggWkUNR(`j^)9e1fjj^}0y~6aAD6f&E!UuJ=Y+A=*;e zRDbT|P?w)9$ln;v@9H^I$@~Z@uJ5U83{q&qs_~W;zCE|n^}ay+&2jz9YkGbTw&mVa z#1^XFKq;dAn|js)?)z6+$J<$Jeoav7%TN-nsYB&EvncNEQu&rn^(!a)Z3Uq&H?=8e zLH@?`k-O-icheXB{eI~fe`!gqcxPKKvM4}w!Jd{>>k|WZ_;$ zZr>4pX;JiXWa#Ag(DVN2-be!)Lp6?8Pu{Ls9q(tY$poR_RuX-P+DX)ZjD#!8|InW~ z#xI>3%ewpdn7?3h%&#m6^+#Xqof6L-y<%Q|PptUOXx5Bp3%8F4@ac#C=-gQT)97c$ zqeS_igeITm^z8TZ@-d*4?^ z==X|sPQyZ5qoFP3+#LS72O}%=fx7G6^)*a`^gn2RsNcMDZ*RHxA)D@y?l}hoNoQ4V zw(F~L-1T0BOA*T*qyFYpRA{S9ZHl-)h7wr%Xf*~6jtP0nzL81x5Wbn$58l+(4N*-HGRl<(0tTnq7BSoVmE_`1_QIp{D z0CHuLIQ>uceeBj+BMqsNA`EeLpxnB(?2uQb2Iz5xTz;c_uZ{p zn3lymFE^vOFYD^(kS+SY4A(ybcW5E8;-1S6cROCqT62RcMQJ;fn6>5>dhojY{yD2N zo|{nyGc0^RR*XJ2>zenGP9=C7H_@yo3h^mV!=JM=@FzMvTKum|$4qI9B(sWV<|aoL zSLP*$6_-v(93S&4;ZnR2eGI%EudTpqi+D39doy#r$|A2a&nunkl}_mS@Du7P7qmzF zpDa&p9Np)|i`5X8+%N8_p)T%i>F@420##c4TB43!omt-2Sx|Dg97-lD7*_6e^}S#2 zx1;0iPdv&q4xM$mS5niH`WStdAFYXd*D5>k)RY8BOS!kI#`Ughhm^Q&>3bNSsj8>4 zj`x!@3%h!KQb0;ox04**<0#`&GP0p)Z=9Wyc~txv6B3)fc}3p5Ja5KSZ^ne4QL2uiGGhfb14W9Q@FV{F6~j%X~mCS$eo_NaS@ZNzdj=})#Y zg+CCKdISV;5;}fDPrA*xbt-)feX>7uth;gNes20zq)qgwa~nhOd}G>I?QbdJp5#Ku zFDa_HP#j9#tWui_TyL}MrB*B6thj7dFRp*DMiuE02ptsKory1K?>!TpiRJgT!q1|HB~>#6Un7{<}4rGnWxdB4niceX!yXWY|nO1jcCvLD0Z zr#6s&oW#kj2O;D~ba~oh&IA)BVg6HI&&It+6+V^!)Qexmyw8+T%Y;?u`sbZdZ;M}w z34AIZJNmQKXCe2{uGCJ{Tp~>u6aEfKu7oK&`g0Lt6lX>f>&S=FAY61#%==)d0&o8G zGjb7gqvt?%7*%7Pqw|z_)$?N=m*nOo&Vu5(x+t@;Nz4&T8%dF2#KgvJsDKKiSvPD% z?};8))k?GyIpKK>CBTdzFXnAjOyRzj_iu`&H|35gPklK8ErLc@oyhfGe~g4wgj&7A z&fBEh{eYzuC?Z|53*qO!S;?hB`EKS^pMC`s<$NUzZBkKhlS=P)s(y1I={r&HsUg;N zb2RkSr(dBEkw(26N-7e^S9mn=~uCQRQN_rJaAjQ6?2HKT;js*Tm@M-V6aYX zgF-Ppt3sgoTIRy-{R7!S$e8yI?1ozdRavw;dakVVoD=icRiWOf&gKz^!Mci|uKLiJ zxhHASs*Wnp0_NepbM}C~dM|{BttwneQaztL9O~4lwQ>(8DoAb08+4-dI)P4I*p+%h zHJ+^NyS%IDuJ=Z`hLzkUqa#g(F+TQO36Ms>zV{b&Z&C7r)ah0o5DnB%;K}t2Gp zh_UIPP+tp;PC0#Ny8b=39{f^LK=*(Gl8>`|g?rr2^Kx~^(07h#CCnv81tt6X{xYCN zQ}sKBs@wH?AFhEYR2Zr&C4rLXUNIBz6*WIo6j*`kp%IB5_Aw%nj%Y-xih7?Yy?GB( zht3N)%ur{A{_1qs$KujcuD5OV+h1e$l^9O9&xTyDY``eIf0?Nkz(9XRm^?P?;hmXnM-|7wFYBnsV}>TQgJ?!(Q})miH!2MRZ32U5+4kB{Ng0Ub!hx!lO>T zm3_sV4zeKMACrT=k+fWjx>c)M_vRs{ZcmNy&Bk*vojpF5I~D6U8`X2{vk#>wS$D zAKgG>Q{mI)sb?`Ae6K+2TDRXJipTn#iwR$*QZ@;rW_}Ul?^tzTQZYx{CVV(l&cSZ# z5_l{wR(diM8L_Mfj?=M_ZC~pl1#xdDS)}WIrWOoceiShu*&e_SaYAZ^!l|dJWaL`YqHM>|TcgsNOKEV<`yYe&=dj zqW-xNa0w+2@jEi{>~-YeuOBT4z2qsN%#Y@RAPrMfwY;Slt^DZZSg6ZW2x2o52l*Y; zEqWahmAuGPkBG{oDC%0h4qDOjqf zF3NGzTt4$Qt3|=jyp8!E#zGstPD%!0(-Yy6)$fi@!tvkLbA2x<(^pE&W`J2=F>1=it_u1|_Oaz9#uRW%nr zT&DLqGXNf8<57cL;kPcW!Om$>4c*Gem=EowI@hb<%+au{HMuV#nrs|PJZhywWd#e) zgy-CQrAiA+cI)6=bXN4k+d?}$$nD?i7LVPMd>@jIjy{S)JAD~+uToQYypeShN8`yM z|6#xhQH3BM{%B&3B}`TH5+H6wA?M{*P;0BkgA6TN%zX?RJ3$lkc9JX7Jva444M~Ec zCua{WapBX08z*jO$2yRayQ3BmF>I@~9rOziDUoz95Zw>~FI67$g?RY~dm_J7Uam?? zJ8u5P@Spp!5#?V?Y~5lvk{G7k2EDeTDx&iU@N(v4J+QK>aC^M-H(i-jCxbo<7E$8G zOEZ(la%(+s(%g#F*0fKz9lh<&uaa4C5ikSA(zDz7gPi_tZmK&HFaAgJSqvVugs9gn z)ncGt&MABqtEpPg1D=&C3AzjTxZcaC+vuPF>6c-ldgqFQth=#~G&l3{%likUiiLK@ zemFHvC5jepN$wZ(lrM}G&%Ukw-Kj4!lMhtGrY#>(_B}ckab>*oc2&~UdlAFt$RN7n zn1W~al)|IhKy~)8vl?c&2UF*xc^{GsK+PgkYlT`2l!D6`T^Jv2)KKCYcm-vJd$JyQ z$)D?#j;gxfsqkK>YTloeU*5l2`@Nhbs`6Eg=AT=h`Z^=|w3~Vgdi`heKWGS{#k>q_ zF)t#;RYSH)oBBasC^>vVZyHL10cLRD2W@X3#qK#9)}wNE{Z6tMDYL3ArG@{d#Bj|{ zyby+?QkE5V74Esvi9SS&Y&xY@#)Xb7E6}>6HoZ937&GIYzo!P0nv#(`0~X*{X83KH zIz5<`jvDhH7eY;&m_O@@xLp|13I{*T^fHo9X$$O2-uLaA;#Sttf7y59{k94ru5=2tQ-ZZDT0DfECqL=KYOQ`k%qMZLODWvHsuAL2wQw3}E*_ZEs|~&jLukKf z%Bo#HlmV6K25cJ0mK3GOf2Z#>w5B5NBQB&#fJ#ETRSbgCBB@h7AKQ<*0IuJz8$b4D zpCH~&33h~gD_{%V=U^`e?I$gbX{P0VPXJ4Ln0?o9_XNrJYa(z?a%jfpX-C&pz5F~*xQruR@#p)Dv9Og(Vmf~Fobs(LPd9W&T@1^!uM zVf(9*Du#u-}#ibOp;5vu$p=2 z=^>PpGtx>BpGh|#T{`qOjXZDO7j5V1+g}^XWxkp_q6twAx6JkaUATv)ZqbUK3^k8u z=H`k78JAz7{Wr9xQ^k?sx-s1n-SZ43IMlGx}_g&Pf-sx_3OfJXoQ!4%Np!u?`&umHRQB8s&V9 zp~n^1+kvmX6g>gf6Lv9cJvTp}j+x}~kbn+Jj|xL7fc6LB!eXv4pyh%3@Ls$yjpmNo z6-q?%BKPf903fL|F@;#sICSrmF6SWXf|=y@NrDmEB0n4bC(EmQ-Arp%tU& zqi|25d$QZixc@(zi(;;pN*ay)N0b6}G`945P6rwu5tyIJ~8lh~`q@Vn?=T6)^|r8`N?`2bCvrFbrxn4NAYElK^VgI36P{ z=X)HE;qicf7-d=mX*q#g+}xNP*0bszLUi9zT$%@;7G#&fD2JALa7!75rXC0@s%o%E z9EyEE5&&J1?_#-bU3}bCG)GOsbm!yv;Hz|eP%or%v|31|=ZGJotVk{bbZq>^Gu^vTezV(EvTE=|F9!dYV2!BJ)&He#7MZkFpq3CV7}3_<8M@2 zm8&)#zoG>zN$sjo)h#`@e{&yE)_qGb1>pXbIPU#$P?=tJ-&S-9<-!hTPIJ-)uxqu(j{;Yo$tON#Dq0!y4d zq$8VuXu*Bot5{vb;B*7ktIx+aZy=d*)(thgA1y}2*T=n1!Z1v}r_4$T-E%l?)$VJ} zqMa=3$w5k5gPafju#G3HMaX@R-tC!gXNz8bbbXBGDmUqi{R*^N-QyVDG7sRi$SJ&w zXXIsd+=N0@`tyn&f%MK4Wyb!DsmW1=uj*}ZtODsnjJ#cZ&Kv#xBVI}@(iT6&^i-Zb zUy+loH+{+AkH42odkbW^`fyg5I}aW(&I23iNKhfP%Hb z_`VPA^?dSYC~n+e`ulNOFRO!g%l)h3C=Tm|Caa>3w!aSe5xRH55|7rNI_#*)^rVjQ z!aZt2$1!TWLgQOb2fMhzu|v~&`U!)~b@f9MbOn0gMd7xqeHNwSp>39#4|w`#x&HaE z%~um8Zl_wxA6OxYs%0}cl&TdxbTl&f<^&1G^D{Et`F)S5`M_OtpkTe4Oa!cXs!@Qa zNqId-LY3r)M^dY>ZVI;=GY@sN7xSUs1iIG3J@b2O(ZH&^X>ya-^FAto5?~s#g=aw1 zRCMa{3ao6-h$M%@^G!>Rh;#p2I~Rv4D$nk@j}od8g4)|n)WrHSd*<#SbkIy+N?>oa zy-{)Q8AVOXJAzb;m1(r!1KcS~8xy1EL(ynN%i;c!jSr?q?&nncE8~M_c>K%V9)J7L zJh~HkRDyBbHn{I=Z|wOQ&OH=Ljy+lAUFzJ)JO|epXocY$qbIo}@If+3*q+N@MN(uj zerVC){!7schGcb{GBNI|E{(WTHmnAlP%aD#oOP~m1enUy9J6gOW>&jm#IxdE47Tizy)kP}Bc$Ff*J68OUvP0jF zrZ%PTW1%EgJT5ua^=D%3?dilMzpSdbG&4C~cjQ<+8L~z<28*7_5vd>K;85|Wi42z( z>Ryy(k_Y-u!M64WCv0{^G}&X7`QK>#4m}~FMER9cz!_UT;bR~@rJ=-uxVx@h*_v>A1JX4cOjDr`&^dLB;>W}fn zcU^DyywvWH7ma}x)^o3jqXYTTVDjqTCvU+**C%XQ_)CIsf$y#%@ zssi=B2N}R_Byo~;uKxs4^}U1%SPiTk2ZXV(@y+iyxLIX;*QHu_W)~$Jdi)Qtx4F%GlR&^-5@jT5Jv| zdBNMelRWHloEJ%tdsuY8DhH3aWa8qNX5enD2GjycX(oV(2C@~!XaKa+f(xyeVEGt# zG&=R{R4X~$ByehGa6*T^NX^e~cpha!mjORee`{nlRa?2IsV-Kj$g=nL-(wXx68B2@b#9lxvqa6 z4sLb4>So1YINAWI9hLhl&_4Gh_J^WW(u;w zTu6?o7N4mj#X|Oe_Ti(x%0V?$tb1zjo$V1yr2#4G|I($4r)AM!S19wZRR(Zb#Gjql zIp%PDQ6@X|Sy^afwD{@EM#gZU+0z8Gb7TJW2_Pr)h^F62HV~ylu`l8z`eh?=;=Rnf zO2rjFK^&u5v-H(dmnpNyCL?-}6x(cj{c{RJdyBVSvVZzHMfj${aJ`-$E!Nz#X6fq| z^$m)2Qni0s4J0A{sQChddTRcJgNVgjk_VLQ#@}-m08(j=Ki$Paht2CKVdt=2F9N0` z>JweBgxS@+VQ97g`SC~t1o8IVW0l==@H1JYG?X{ ze4P1_9v1>Fa?+>gLM9N9PL$yl?xFmidly5atb!iI?TK5FBI}z#t1~%{8ak5u7j}WV z3OpRlK*6pax44kyqU(EtEs6a!?X?YY)E+vTwBuLQpf$H35pG-JUOPRut4HM~0%Tb-6u?C`=?z!c~s*^~L z;-2)km@FnzyNbiZjxB>+cDvDIRtU2bKc{r^ax?^QY+*b#V717bh z_L`oRTgiaCF^fiA3`-@X=blHI`#q&C?Du0GaZkTFQx6(QOW&q?haojC0Bk*U4I6G!zH zAbo1@7}&$!L$W%KQQY2*_K(@pd$7uqcD22i;`u#TfXdEVOW#1%g5q3XH5ELTd)|1Q z1H>0Z@clf*=5Ne$pDD}V?O#@auZnQd@l~!TW1UMvenmknv@6=*Rs8p?tJgzy=@mt| zy|x3l{_M$q1&(Im48S3^mTVl0OCIH`uO9j86a|hNVn(CY-g6?_ zMBlkFuV=hc&dr6}^0%e-MlL@PUz{4R&Tj~G*`&h$7%FIV&!I34Dhdvds&;N?m-vxL zvaZ~Fjrz7>`rN42Md2P@ZCq({3ZEWQV}Vu0Jv?e`;Bpr?-h7;ObPwy}j}L-P+LS0Tg3^ zrDK!fyqMoo5PBKLo*fIlGajPFypQsq@&3NC|ER*x^FL30e$-`CbQQ&LNS?o~6v8)y zp6{G`am+&l7@ZZ%ep9rlHeMZ>GSSNlX$2AO z=Vi=PaE@-E`B<4Ie39qMS>D&&d}vRQE0C=}(8@ z{((@xa@lE-+U3oO#)j6&$|cL|n^#7b)h@5S0FO)BBDGDe4Yl>FBCW~g%a<&_z)|Fj zYZJ9ik%rdR=GN09tqm6?8`=_)y5{D1LOKQ0kjvb+sxnj)3uGfLff zEYeuJyuPWS^)zR}vGwN@S7+B9Ya^O{LwiHrik8T+ZBAry?UJU3dV)_lW#UQB2`ijr z8$>%T0wl8FgcavI&dSR)($d_T7^&Go02D9M+|sZ-Qop3F zrKxt61KP#S%M)!7Guc!hS=4}}we=146P>wL(~A~XR?R7&J;RwdYhlHlv#QQ2Ju6;G z53#a%SykD>dF8WXXU!v^vMO3tMmJT_nPm&7pH(`y(pfmWtZHGjw5t4^0ZIi`&aJ38 zYfe>JOj97y?C7krfd|dXq=We!5hF`VRGsGg2(I}y59fB9x2)x~$6gwwF1 zxha`g(!AVR;nX(O*0nB4Bvv^mB%HREg%q`{!8xJ9X-PJ)MzossoRbRBd7ti_G4%{*!L0M08B3P6IE$CGHY{##hcwNJC5u-%Wdq_? z)wV5di<}S{iU6419H~q$TUOh;$|-bCawa*Gos*qYoKu}5r`Xwb?==x;m-k!zS@SFW z`SGn0=YyMm>Fl~4gOjuLRQY(t;*9#M^2FfUW=jG&%x`S+B7u&-a)y4DZ{&{{>8vbtJFfqa!fBtb;ik z9g$GujLD>Lgc={32>574MlngG4J&dg?%|%`OzBHn~ zSx`MhyE3F==qkz73Gh`XGo=;{XCh5STOjSLLN6FQl`02_hludMasN;C@_3AN`^`#u zygdM)Y~hb*0(fFS{K2bJOg{QP&gZ0b4Po~Guv!{PJ*5vol!so!;&5iUR|aq5i=yN< zZYoEBAFl!GHb+Ni;ruBZ80!2DIpznqSxxQ-_H5w1>Zv~_sw(ji8TA6&h3UM7EL%I^ z5+B%`if*71YPsN8BaW#l5AAmz4T7P$a4}RhkFXre2qof}8CSC94haHz5b?3yz#DN$qzl72 zm+V>IZY*gIrHs?}gNLrsk`w(kq`{X9G2h9V(v+Lg)*AJ2K#tY@%D|Tc(MeXN9?hjq zPbY~Z1|VlDWMoj`bqtr}UXn&9tcb*W{Y-!AP9AwADopzP96SQ9`M8 zaqK7a%Tx51_ek%$OQiidZwrq|c-2j;_cka`)>9?%cND9*wr0%r_&b0)F>@N=(ca*8 z-j{nP*uYU|#Uu~JY_1E?vCeMCIo&D2&dGGig{FX=EyEQleajtsJchQgMAo;k(Wa%1 zd;0t55R^`D^mZGWh^&VwJ_8a;K}l(5L9>nARSLD-BOu1sfkkD?U2Wswa1-Lqu>^8_ zE1yHGG?IlVXW&`eGffqbMX_{;Ad6?yHemS&YeAn5tnt%ER?ffzer({Y3#vz;)d24n zy^N+e>-$c1JMYq!BJD;Fm?eMX)~!)d<$eZPR>Fg9{oDGkq^}Lq@)`~`{Q&1%`V$|p zBhZHxUab<%j8Bzo%`<G^(5E_rm{Sn|AL6M24xU9#-ZJunvo zyw4yw4M+P5f@6JPpFwcB+C;RKTY`_|6BPe#=|v7Zy*vl;m-zoKeF=#EyYv(vl%C=! zwCKw>{ze(uUmbb;MzkaGZQqPiND1SMz9s%bD_+VY>6cpZ)KCeM_$5}noxa|Rx6?OT z@y|UQe~h3K#+&#m7sRW9QR0L2Bk?1?MSpd|*t$ykgoVqa#4i@Wx=Q>q3ztWUj|gC0 zrGCFH{@e1Wbrmy+{)K-~dZ@{|Od<977snf65pP z8r93I{z37Qe^9*SKS?s?D~$^jB>$jz$v-Gw@(+qHQMou+b{QHn z`BCx@ikJL@;wAr}_!7=X`38mv*;f8R@sfW~yyPDgFZrKhOa4Lel24Ij%-7X?mHdO^CI6s!$v-H*g!3up>%b+X?AMi2i@5V{rr z4Gl#JUBmy7F7ZF4`xdhQjsE|D2FBH&T3mcmp)+n#;VCB-o#KqEKjq~5f(B>Yq`FB( zlknWIsD9C+lYpOGH@OycCl%4ZfszOAH}QZ!QSFJI*w$Fv+CclE&Z5@lr47rS+GL^` zTe7W*iETrsh6DJ*MM$|6JF6za&hP#7W(vRk-eMI#_@3je{+=_VwDhz{-i+CE^CN`? z6Hl6m$<7#-Fm&-8C)A!DI(+ngnd{L|$gdj9apIE^h9oM;Jc}?Hd&Reo0IOD1JfEK# z&R&}~Gn|u3Ppb}RN5gO$DcvPZ1L0I4Y(3u>@RhLJ_+HiyNahWUDfy$}>^Wdc+TOqRiH7q)F)f^f6et#w=Hj!Hd0mTpl5K6;bgG9a^sy$K0|3I*AS#nP@ZChO@&qR{ z&lu$yr95YZE7Hy$sq!oh=Rvard6tbzZwl>O7?P!l^Qgr=%3H83Tr@pgGCk}@!xiP> zf^$h|(%bb+_Y0y^GS7gx*DG16j_HgWg{^djtet6);A$$<+6-tRH7ph`Nq;acoCgHe zJfIJ<)7_l*R4V77K4ygP38h^f-ViDacZJRjZw-})w}oQimqOFRJ3|!|*(BO>oLiB! zh>dY(1|F2Y%7^Mp)e-Bf2D)yHhFi|0zcuLxg~E*s!Yvi*>5_2cv~bHg^tUFha%8xX z3}JD&y)?W!v;fe`aAQ2&a=wb6t7zwpI!|Gzmrm4wmsq+*8QGXE$R<5Pgk_xvG zkiEodmatr@v>9kB3q#!fsDA8ArnwdLREJlmof9ru7IvqHE2f95r-y5%t6D1$m$Zem z%XE1Qh7mE=vB{2*^I9rHDm@miNS~S}vLK4&K96bl;9m2G+-pIL@}3!9otE}mID*tt zRMlSBa~ieIsQ5RBbKG!bk)oS9P*)q6?z_Yrf%N+c&N&VK<)GpUj z{;AV8X{6@tKMgU@Dj#?+XyNP)nLcE}dRN7gp%SH7%=K88!aCK$4W|};HGj}~U<*=hVgYrk9b-M|ST|fecuWH`g=G(L^%? zW7|NiZj<+M{CwuIHtl>xu>$ES-@kBtgyIosjOt;mnShpX_F~S6@z(G zKYt6yE5Cj^wY4&8Yc!V6r*_|s#=Ln*%a3+%M!H;lUgEUxalUKG51@8hllBj(CDMyC zg8tAZB?9DL$$H6QT*`wnf0{@a0cjD(H&Qy-+NC^}6`|j!fvf=Vc}$~x5!mR}@P0}b ztNtY_{R{ej^e@c={mXhzQ%ihR8jStYN6t}_5A=(VGVSTq1|U0^aYne{5~Ev8`#{R8 z`hQMy0;NHHr&Kqs{gKflDO0ebKMmpRb5IV_Q7+?C2(JxiR{^K~W-8+&2J$b}I*z2> zU<#o7F0yXj25{m}h2PQNIV3~c`jOq-0;1i@kGqL!mJx5I2Q^lxz7w5o+Lx+TFAP_^ z;ff_{n1=$OnFz@L!f8oH(o4OnxKgP;WqW&><|w9_HxP@u1(w5u;14K%{y;yEZYpgS zHTodiBOO<9TGeJ|tMWl*(e4t&wQyXReV2XrTQr>P34NnuM0%=^`HsT}Bz8o>FO-4%9*f&@GZT z#iN|ClX_FYJiuK{qkQu-sh;46Q9F;M#o^&|HEF%Q$FypVdto@6M$JZQ>1FZmM+UkAjgT}P0S&nzu zHukOS0XZ%K^SNL?8(EgK80qJx?TfpfYrV(($B^x#oZqlL)MaY;jPR}L>93@R?@R}C z4Bi{?=}Jc#;ndxkem1c4fVsfxfW?7T0-MWN8>K#BShxUF19MDAj{6MMyfd5+`}Y-@ z?ojMELwdk2aymHKfrh;_gOBPHfQ1>C=f#}xFvfq%&oZZ_F@^a2iSZV`PQ*2Ye7pFW zhaDVF)%aEmr@1BZnZiYrx$g|7-@v$(c&m~k3cD4c^2@%bI&?AEKebcY>5^`!qS zV){QYJ@q3Lmg7TwHZrcpDq!RfP`U18T*|eY>8r>_5vV*A*5N~Zu3=oYM_|N{_`HNG z1>r+;UZVek>1$Q2WlL-uEc)>KZ_oy zPbN7FxyZlZ_;(q9fpIn01@;l+H*#B6^H^Z?#S`Mc$&&vo#1Xz5R|+&fQOE!t<@-D} z1OzpY#g*1Th<=+w2kYxI_}hfF;4W(f`p*znXEO z&u9AkEPC=^Nd7|))Qpd0{--g1D&uONi?~w8s~G2@&!O+GgwUUe9CEE-`h`qS^-AGf z#!uh|q~^WAYZ~jyll$fJx40821>bZ}<>id9Vi5JQcSdn3&j66>d+9>928g5BjGX?hgz@(jpG>EQ`E;?N?@)M#b1UPb=fB~Zth<zf8oboMD4j`sk%zq5yD;d9r@naYt7SX^s z#tRtFW4xX5GZ?>>@uL|pV|*jy^BJGT_~A^*(av1Pr!cPOZ%9+m`0p5}{+hya#*aEi zKiBJvvy$-?<1%-(9L9SXuVp-+@$%y|pypt>{Uh^Vo2PN=rzp^RA@RRAUq46n z#hJ$VCyc8(7UE_xe&X?(P|dM$yMXbc@f!b~zBo%6e~a;DoNt2hvrf>2;_s|xJjFPh zyK@cWzh+#`e~|R2j2|&k^AWqc132{?5~QX5f$6VcdNtnx(L;(p)47N3N5-QwnEqNG z@K0ujF5{aR7k_CZdI_&7dbqvkV+`zvr7r%ITvg!T3+)BpBV z9Z|;d?m96h2z-l^_m}Dv*Cc?XiZR_vh<5jIZZs9uA!g7?=K3=!qDNWxU?yHtbehb z*&Ou)#&?g@fY@6H<6VsBG5vLnmoU!NJ5dCjwT;vw~RmLMMx8U@c?yxW%N0)yxz34^gKVV#*<+_(~VIep@r=uSC71ABE zmIf)()og3;Wo#|AG1zf)g2+dJ+6&<}dz-;QFO&!8G!HPtrHqrm zZ-x}(D2bGC(F%k=dYegore7XCBFS6le67{A8C?_m563;zS-T^4>X2y~4-CK$55V&R@Hf$=?knF@1L(gOfX@iP=LFz&0eB(+zc>I- z1>iplz<(WpKNx^N7J&aL0Dn0Ee>(vGC;)fh*zc=e4hq1J48V^Iz)uXorv%_`0A3w{ z*9YLVPq?pgT^WGi5P;tifIk?3Zw|o!7J$DSfPWEykA@?$uW}s`fae9^g#mbZ06s4O zuM5B%1MuYmcrpN|J0mtF5kUWs z0Q~&`{Nn&TJzyNn4!{oyz>f*QPY%GN0eD3KzAyl93&8yV{3ikU&jaw=0`R*6@IMCN z4+Y>|0r-{x{P_U<kt+8UbZf=`>1Y^kqJG%TuZZE0?E7BxC}sZpZ2u4zfb@`Qs|(%_{<^?2dSD!x}| zVELXe?M+J-Ic-ZWsB3Jhcj}rNYL_Qlh7_YzTicXy7B#JO63rJ}06Ciy03}tMb5U|h!jTs@ z;q^Kz8<*5KIIVbD6REMSA(3pofRv(TSh=hbiW2qFJ8SeaL`Q-|gR^p3EtKsH6p~;3 z1V+p28&(h_uw2|+muy27Aq8mF(~{-R(uP$n$XA#zPcEag#mn$c9_NDA+C_+NbC%V% zwBWQcUe!cz?jd+l619s8tzXhAwVYU-Y-+-rgBoyxSr?iC)Du-OUL!>BhjJR)QTYv0 zHze2vwJmLu1n+uE(95g<>sq9{Ws7U;63&w4b;}`F0sveb*Z602J9vL$5I(3)7qiqle)9q79iOB%#J_>D`0HONVlC^5b8 z%b}YV2J2xatcHm}RJ;W_qO-)f3bJIdx6xDwcOIDSc>DQ@5nB)?`zIs%f#E zm9-NKor{}cDr7}O0?8F+16km*<|Jy7-xY?uRxmPnNWEoAeH+Y-47aYiskyZcW?I+S zP`4DVp1Kg&jssh(ZPEwe2NJ5o?Kt^90N@@)Tt@Xf_&Tb=cT^ER@Q$m6s97kdi4gsI zs|3AXN*e|VL$WM{39l*~xSOQz>Q>b*AAlySyXDQT)To*k(#=T&caxln@zMhNQ%HYK zqCb=A&&l-X6#8>2{VAe9#qDkg<0S)oc-s1g>cl!Yp3p-PLFX(27X zhCqK++LKh;lT_N1RN9kN+LKgTd;x(dRoY1^?Ie|Ul1e*CrJbbGPEu*{MF!AMQfVit zw3CXRg)`!3O^e1Co;7`XCEl4<6`d9@TZq<~x-L0(fYWxYRMxn#u5sx?das;QT`K*x z@Ty$397&gRw$*1R8(LRYG(!e-2h~fKH?-C+t1WMf)+Ls#Xczz#Ri)~a+MMd?=$pV< z4HLpP*030fOLeDSJ*&25PVJI5yw(oFB}$uW+uB@YLB0G!bOUWLU%W<*o|IiTBo?9@ zSh=J=fngA!8VBfxMn8o>8BX;qG!Ds6v6qKZY7MhspIQsmGa3@}W>JO^7Wog{D||L= zu(pX~2~kR};4VhzGDkH{VXu;b07GnZlV(}Iyd{~Kt_FhYQZ(KR8U`86Y*zYgfij9N>+#(NH)YVv1QoFX&C3>L}XAN@WMADG(1DA2{GY6{rbj zrD_nhJ=n@Xtc8yzkS+Rq^y5l31I=R|9Ik-}!``$KBxYGH`ehOqZ|j57RoC2rhEAST zb)|l9V_RIk#?h%h3$JX9@f#aqmej7v@U;&%q=hh4U9QHdDES_WGTCZUx796^M{c2& zcxzzOK)cb#`pt5x7G6aS`vO$h@)cBoCU_ui(m!F8hF_&6tgWjfPp54aoCpkSC@LbW zXQS$L0~EPntlY|Vk3n`Qg~fd9MOwr}pk+{OnK+Nq1Huk{8NfI3^9)|U6?!?>a;b$2 z{T~hdCh)+Eb5$_UiET9SJYJ8b%aaCPXy7*+_$iE&?A-=F-Jqwq+gOf820h6r^3b^h z3Uv7?K7uC=dQ(n%BQFKw{S-bz|09DB#ZevZ|7Kvq|BV3pw+;F& z2K|26kEKAeJdKa=2{TT~=uCs)7a8==71o(EX->uko?>55&82B+>|HIxbPP~ zms$8GVv0cP0ThH@`iG|i`0udjMb94^^wj5woDT1I3xA;>%{Y~7yFq`jMK5wrHt0<| zzsbP=Z1A}|fX{s18Wwq^ymbM1yM>E9I~XVVw;K8Gvgo@JN8xJ=7e2#yt5@U^e3XSt zJ37F^r5#POaN%>Bg^N8zEnM_4D*&&taN)m>@eGvlS$w44?+l>-yMfalvCwDpmbB3&a>zx-zE!xkC-4N3_gFwv+%jnq8C0_8T5ZM z=zkhO|4W1Z?*@IBftz~nwfImRg@bsDQ}ikIdyIwe(B#f|#z{Xf;Uncb$)Xqj#THKI zCn=m^@S!us!l%Nbm-?D#;ljV(!i9f}!T%M5{|1BpTHr$egn^5VBHGzz@G<55n?-*Y zm+MUn7kz$c;UfQM0sLjNMe0T9NAM;L;n(7G3FrGA#z}Tl&WQ#+#YsJ$Y~jLxp25eg z-#Uw4%C*A4O?g%uIOQw)`H_W7{oZ8ZBF`TgCmv=!ZnEe_p7$+W_zdTxIK<~we8k?4 zVcgd9i3Yu?&yy{BDc4jBmwd}CT+WNfEnMoQigA+D)c<^oUh=)b!bP907B2E!X7D%l z*%3g0wSoV_(A)I}A5%X+3!wkCfm7K;&i}MFe*H0WOmpnt=lH~IHj^iuC(J}_(R z=P<@eKW4rS0rXcI^luq*{uh72g7}#F`8(s1@6|k>zHZ@vK{^VD=jbc(`3F9t=VAl@ zvw_bxa5LZkVqEeSJxn-E^A}w5Eo7YXecRx_EP#H6L2ugCr2+J740_XUZ#HmK{wD(X zylK$?(~$EhJ~&MBoBEl;xRh7?nQ0a-dT2KI{K?>dm4Tab{xN{hV+Q>@2A}6F`WV~8 zUoHGTq@nP(g^QfK4F2zePV8i_MSnf>S1*eIo#;XA;ncB|i^fy9p2zfY11FtIzGpK| zSPwpuZ;eHN3-kG%g$tj1Ec_;>f5_n9Yw&-|q8C0N81(-#=s&mUMV{l101*P|!7OjR zfm7M;BO-*Q7B2a&uyEnOmT}_o9zLR?|+e;9~ku2jEkKJ|3(X!^0pg%b{TwrVbKepI}G~W2K|2-^i(gRxAzR3WEDQ2 z2JktGzo0|3W_c$uF6DX@@f2oQ_$CcI6#@9w7Cx2j_Erm@!1#YzxXAw?<0Plqe&4j{ zh0g~TE_^-?;FB5A1+mK;vvA=*%fh8xD=l35tJM}R`h3^IMW1O$J1U4gf=4V|_?!`d zUmbwo8i4;X03UXYmWTBJ3_fCS$1^T+iaf4?|I(nZG4NXryw$*eW#FEHQ{KY=t^oY6 z7A}784ht81c$0DB{kD;Bk3}!}?lEv`cVl_Ia@aULAf(}A%6Wi+rz1}Eb}-{a`=Nm! zZO~Jk$T`uV|Hz=9WZ)kgc+|i@G4PoN|0fN6j)DK$z|S-IbQ^e`LH`>AZ#3xtZQ#uY zzQ@4Z4L+vcJPThFLL!8lEnM{T3xofspc6g+&cOE?_#XrKY%u6QGw7eN=*1p3Te!&c zH-pdT2A|gg=-)QzO@D8Qnfi7J&ae0N)aT|AleVzv*whVbO~o-ZSV;f8#>~H~o#!cr8Ei{{$bY-%*TH|MsMT zf5*UoZQw^3e7X%h*P#E6f#)0aroT~O;HJMZ#o$A--iHr`Dhq#<+i$If%f9V}7B2KH z7B2LcTe$e89TqNpuC{P$!xVnRILV%F^bbF`=r<{9$9dSoCEtw}F7>|I;QuywNIj05 zpc%?ICG-;*CwWZ2tH{7jzok5YPo+U`u8-9Q&@VIS&3W{d0rZ|hZ~9j^7`Q3tEdhLf zWzc_N=;yZvzSY1VwD_FIcJ;W0iyb~?;iBhf4E|>S_M$~E^}fr(CEu?sT=LC2Vc+#T zhH3m5tCwQ$MzVG9?1KFPSPx2+bvv*@M0EVpox^J0TfrlFso7`WMQ+-LC_%X)ak!i9gA!H3@ACH3`; zMSmUhdCS6u|A!VX<$AkFClosr{1Xe`#QgJ$_f6ku;UfR#7XAtIxyr)tWBkXAQ@xBd z%DdU37yi!~xav=+APE07_>406>^A5r58;z`no6eDbVnQX7c*|_=lCg_-p1Q4T==hN zoboi~xiNtL*9QImhCIIwpnt%ie*<}loxE<*OZ|QtfRC9vs0Y(-&tTjx@5L7WrB3c# zYvEGAKeuqv&uxs`_5PwkZ`SWi25#2lzYIQRJ)U~H7R;7^$r<~`Z?!_K+cDf-(C`k72m zYWfcYpTjuiyV1ZGFi!M$7HWkMg#Xpd|76B({!=Y_;ZN@^7C!gjM)=1K zoOoT&{Lc>HUv1F~|5^k8qrtz?z=?m1`7aCLpRnkK|D^{0Uj~2q9wJ2(|FO*93*f)r z;6wDn|7HWf*WiDvffIc$^Ox^45@y=@T^7CYzu&;`Gx$Gh;KXYJ^WVt0&3~&!FZ|{E zk`zs2iq!8*7X4)A|5^Zl`5q-jQ{KW~{3601F!+CB@t?~4KMUZGmkX+3^B-a04;uWl z4V>hOGyj7axAimDq8Is(HSi4v{|N?8ysDUgVE})64>SdlU;5#gg`dZK$_+j_z@%O( zEPCN1zmFjN-_zMSwE=t@1NhK;qbUfVPxPa+DuB<`7X6n@|09FmT#vfRq8Gp9mjU>H zSh$q;L4!Z}0HUAg40?~FJeDEg-?Nni<~DjP8W0iWU4_=KBwrR%)seZ`kz@AF8t?PxX9DMI9<$q z>AlMo>~h)PQx?71-%}R;*9Y+bnZ;lF=i37CyDVJteZ;~g-_4BE#Vprz7QM8`zgW2N zf5XCs|Hq8e#hhn-ZqdI-N<g?~Qd#EyPjL+V|>KX|ZSgwNCfKKlK^ z+HTEx!E}S3WRiKNet)p$PxzI5{y@JE_?!7IHu#XNBL6BweyUrM|E2)?+YEYhJ?-%T z`ezJ!bA9_AgP!C+ir2ySSonrR5Q%W)aDA0}5&6e4PGvIXnG`@z?}ep6^rk!u40=0;jH1i!};pge(&d~<`C@_&H z&){#$Gu6Opjw$pD4BV9S0s}wVpkKwfEoX;;KW50&Y49=S`IUj2`QB~drhXnU_>+FF zW<7KnxLGgH8GOuqUp8=az3a^Y`~w3&#?Zs(20qTf(=)YTqMroInQh>voCh&(+t1Mk zz7;&AzVZX`Qw-dcGsZZ{^SHr>-aAWy@})6W_@8ayX1UHa@U2KA^tAyvy^odx{b zm-5p4Xem&>TksJ+H(2x{=T8m#;|w`}Wzh@&I}Li%uI>(??=tA$G3412K>xgj%Y6T@ z7B2PvioxIXuimuiMgDgT`aGk&UmG~-M)a1AdkP>`w)MNC)#JeL(%Cp~yD55Vj}cAo zRPa^k<#%FQEL?tXN!F!_K826`uE~0fUViuG9t)pxv<9|WxcsinZVQ*+*P*p^3L>Zc zE|IL43NF9XQ(@7|?;EvP_&~V~oXQp9^~UuEPEAheZ!&OG5BC_jNiXZK6ixKLO>p@=tqO}?@D>Y~-{o2#fZt=`Vkg@yTueaz2Uii0IxbR$a?01&Yix_te{>0}r#_7HL z6ofv;c(sMkV7$h{Wq+vA!mF5mwS_Nae4T~MzR`LMzkuoGcjQIR3mNaS=;`+{DQvZH zDepE5m-4=3;j5U>ZVQ)vCi&fYk>?tw7ynLh$yfX%!RhxmDde%=B={|i7Z^AXiHg3+ zz^NX8$@C=#PU`?AiWX)?aH20@`f39w`a77u#=wa_kLeo?oaleg^eqNX z^f^r5Zs0^uzaL6rwSg0Tgg}IK22S+%GW~iBe}Hj$&!On^A;#~q=>N+2h5&r0fs;Jq zFZEcslxueYzSqJd;HAQ7eIYrCKX+?RriE)NIPr;a#x)i$d>RehizuQY8V&SEXR~R_m%I}5OSh)O7 zaEpb@?+v$G_^(e;**fbieArlx-)iBvMl>$%fXYiG^83fzEPDC9XjWaq3<3dfnO{^~LjF3+xo|CFE4v+zIh z^J)v9LINOMuP+1nUd;HN7EZrAPeIm$Nf!G2fpJ-f6MQ4%*?bjT{J=a57k|mM@GmGK zLXCyXd5F~(zLx7l`T@z8ejk~_+ZMg_tD`v|p_hJJ>{f8`<8QL)3)wH+VBs$?Zk~rB zk{kKl!c>-5_&*<3Vmjve1d5Y+_a_$psRwHMY%ZVhk@-Tdg)d}!`aNd~LVv;-{oG>V zHGE$AP78mA@f{Xk$>*5mCw+zgqrBfbndke0OFOEu@Y@d4@?3A>KRsOIk6O6&53bTVc|y{q50op;nGeYweTa3)bwL{9xeO}j?#F6g|B41#=?h1G=0Lt zrQf*8!f$2z4HmwU@s})I*00{Pa9Nkj$kh3Z{IX7%YvHoaS!Cg|E*iIRS&yx^a9Ial zZQ-)cd8>tIjUe@Ow_QM62_1;_yAIIlC#Ge;> z8Q*WU=w%&#lZ7XWwBB}G_?wJpa{n#-W&dTph08w9ZUetqv(|qn;%9ggwTqmI_^A?o zZIrv#hNjwy>i32w;wSZLor#O^!zL43o9Thb3-RM!69%e%H^8>84JDU6@PHqYs%u_`UtCK#6Y-m44HIX~o_m7+Suve;L*v55_+6$3vrPXl z?juM`Lo|1@1Ds0uF8lwqb?qt<1VM0qK_kQc0RO>7Ff%wX(LmU6LH&ozyif#l5i#)t zG`!@J^9KwJHWUmD-9)f!x@s8O8QATfny#yv*+}-C@wH&+vzvf&5&t5* zu*NTYWYO^B{JkCe>*)VPz2>p&a^=b#iD=%(nF3KRlr4`Uv{aj`~-Iwe*)~&L2X@I)}@CG_R$<_vIlA9&qU6)*1De zhCx3Z<}`6({$y=+(Q^S|D|5i#6+pW>cSrNAX6eh`Swo9|Pd>XZdLAn(!XL=jb07si zl8#3}L+rY_&L;gb-+Jx;_|c~pfB136Rz%u3e}6@% B`IrCz diff --git a/dwm-6.2/patches/dwm-vanitygaps-20190508-6.2.diff b/dwm-6.2/patches/dwm-vanitygaps-20190508-6.2.diff new file mode 100644 index 0000000..ea22e23 --- /dev/null +++ b/dwm-6.2/patches/dwm-vanitygaps-20190508-6.2.diff @@ -0,0 +1,259 @@ +From 20967685d6879bd611a856ade154df19da9ddc7b Mon Sep 17 00:00:00 2001 +From: Stein Gunnar Bakkeby +Date: Wed, 8 May 2019 08:07:14 +0200 +Subject: [PATCH] Vanity gaps - allows control of both inner and outer gaps + between windows and screen edge + +--- + config.def.h | 21 +++++++++ + dwm.c | 150 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---- + 2 files changed, 161 insertions(+), 10 deletions(-) + +diff --git a/config.def.h b/config.def.h +index 1c0b587..0927c2d 100644 +--- a/config.def.h ++++ b/config.def.h +@@ -3,6 +3,11 @@ + /* appearance */ + static const unsigned int borderpx = 1; /* border pixel of windows */ + static const unsigned int snap = 32; /* snap pixel */ ++static const unsigned int gappih = 10; /* horiz inner gap between windows */ ++static const unsigned int gappiv = 10; /* vert inner gap between windows */ ++static const unsigned int gappoh = 10; /* horiz outer gap between windows and screen edge */ ++static const unsigned int gappov = 10; /* vert outer gap between windows and screen edge */ ++static const int smartgaps = 0; /* 1 means no outer gap when there is only one window */ + static const int showbar = 1; /* 0 means no bar */ + static const int topbar = 1; /* 0 means bottom bar */ + static const char *fonts[] = { "monospace:size=10" }; +@@ -70,6 +75,22 @@ static Key keys[] = { + { MODKEY, XK_d, incnmaster, {.i = -1 } }, + { MODKEY, XK_h, setmfact, {.f = -0.05} }, + { MODKEY, XK_l, setmfact, {.f = +0.05} }, ++ { MODKEY|Mod4Mask, XK_h, incrgaps, {.i = +1 } }, ++ { MODKEY|Mod4Mask, XK_l, incrgaps, {.i = -1 } }, ++ { MODKEY|Mod4Mask|ShiftMask, XK_h, incrogaps, {.i = +1 } }, ++ { MODKEY|Mod4Mask|ShiftMask, XK_l, incrogaps, {.i = -1 } }, ++ { MODKEY|Mod4Mask|ControlMask, XK_h, incrigaps, {.i = +1 } }, ++ { MODKEY|Mod4Mask|ControlMask, XK_l, incrigaps, {.i = -1 } }, ++ { MODKEY|Mod4Mask, XK_0, togglegaps, {0} }, ++ { MODKEY|Mod4Mask|ShiftMask, XK_0, defaultgaps, {0} }, ++ { MODKEY, XK_y, incrihgaps, {.i = +1 } }, ++ { MODKEY, XK_o, incrihgaps, {.i = -1 } }, ++ { MODKEY|ControlMask, XK_y, incrivgaps, {.i = +1 } }, ++ { MODKEY|ControlMask, XK_o, incrivgaps, {.i = -1 } }, ++ { MODKEY|Mod4Mask, XK_y, incrohgaps, {.i = +1 } }, ++ { MODKEY|Mod4Mask, XK_o, incrohgaps, {.i = -1 } }, ++ { MODKEY|ShiftMask, XK_y, incrovgaps, {.i = +1 } }, ++ { MODKEY|ShiftMask, XK_o, incrovgaps, {.i = -1 } }, + { MODKEY, XK_Return, zoom, {0} }, + { MODKEY, XK_Tab, view, {0} }, + { MODKEY|ShiftMask, XK_c, killclient, {0} }, +diff --git a/dwm.c b/dwm.c +index 4465af1..88f3e04 100644 +--- a/dwm.c ++++ b/dwm.c +@@ -119,6 +119,10 @@ struct Monitor { + int by; /* bar geometry */ + int mx, my, mw, mh; /* screen size */ + int wx, wy, ww, wh; /* window area */ ++ int gappih; /* horizontal gap between windows */ ++ int gappiv; /* vertical gap between windows */ ++ int gappoh; /* horizontal outer gaps */ ++ int gappov; /* vertical outer gaps */ + unsigned int seltags; + unsigned int sellt; + unsigned int tagset[2]; +@@ -199,6 +203,16 @@ static void sendmon(Client *c, Monitor *m); + static void setclientstate(Client *c, long state); + static void setfocus(Client *c); + static void setfullscreen(Client *c, int fullscreen); ++static void setgaps(int oh, int ov, int ih, int iv); ++static void incrgaps(const Arg *arg); ++static void incrigaps(const Arg *arg); ++static void incrogaps(const Arg *arg); ++static void incrohgaps(const Arg *arg); ++static void incrovgaps(const Arg *arg); ++static void incrihgaps(const Arg *arg); ++static void incrivgaps(const Arg *arg); ++static void togglegaps(const Arg *arg); ++static void defaultgaps(const Arg *arg); + static void setlayout(const Arg *arg); + static void setmfact(const Arg *arg); + static void setup(void); +@@ -240,6 +254,7 @@ static char stext[256]; + static int screen; + static int sw, sh; /* X display screen geometry width, height */ + static int bh, blw = 0; /* bar geometry */ ++static int enablegaps = 1; /* enables gaps, used by togglegaps */ + static int lrpad; /* sum of left and right padding for text */ + static int (*xerrorxlib)(Display *, XErrorEvent *); + static unsigned int numlockmask = 0; +@@ -638,6 +653,10 @@ createmon(void) + m->nmaster = nmaster; + m->showbar = showbar; + m->topbar = topbar; ++ m->gappih = gappih; ++ m->gappiv = gappiv; ++ m->gappoh = gappoh; ++ m->gappov = gappov; + m->lt[0] = &layouts[0]; + m->lt[1] = &layouts[1 % LENGTH(layouts)]; + strncpy(m->ltsymbol, layouts[0].symbol, sizeof m->ltsymbol); +@@ -1498,6 +1517,111 @@ setfullscreen(Client *c, int fullscreen) + } + + void ++setgaps(int oh, int ov, int ih, int iv) ++{ ++ if (oh < 0) oh = 0; ++ if (ov < 0) ov = 0; ++ if (ih < 0) ih = 0; ++ if (iv < 0) iv = 0; ++ ++ selmon->gappoh = oh; ++ selmon->gappov = ov; ++ selmon->gappih = ih; ++ selmon->gappiv = iv; ++ arrange(selmon); ++} ++ ++void ++togglegaps(const Arg *arg) ++{ ++ enablegaps = !enablegaps; ++ arrange(selmon); ++} ++ ++void ++defaultgaps(const Arg *arg) ++{ ++ setgaps(gappoh, gappov, gappih, gappiv); ++} ++ ++void ++incrgaps(const Arg *arg) ++{ ++ setgaps( ++ selmon->gappoh + arg->i, ++ selmon->gappov + arg->i, ++ selmon->gappih + arg->i, ++ selmon->gappiv + arg->i ++ ); ++} ++ ++void ++incrigaps(const Arg *arg) ++{ ++ setgaps( ++ selmon->gappoh, ++ selmon->gappov, ++ selmon->gappih + arg->i, ++ selmon->gappiv + arg->i ++ ); ++} ++ ++void ++incrogaps(const Arg *arg) ++{ ++ setgaps( ++ selmon->gappoh + arg->i, ++ selmon->gappov + arg->i, ++ selmon->gappih, ++ selmon->gappiv ++ ); ++} ++ ++void ++incrohgaps(const Arg *arg) ++{ ++ setgaps( ++ selmon->gappoh + arg->i, ++ selmon->gappov, ++ selmon->gappih, ++ selmon->gappiv ++ ); ++} ++ ++void ++incrovgaps(const Arg *arg) ++{ ++ setgaps( ++ selmon->gappoh, ++ selmon->gappov + arg->i, ++ selmon->gappih, ++ selmon->gappiv ++ ); ++} ++ ++void ++incrihgaps(const Arg *arg) ++{ ++ setgaps( ++ selmon->gappoh, ++ selmon->gappov, ++ selmon->gappih + arg->i, ++ selmon->gappiv ++ ); ++} ++ ++void ++incrivgaps(const Arg *arg) ++{ ++ setgaps( ++ selmon->gappoh, ++ selmon->gappov, ++ selmon->gappih, ++ selmon->gappiv + arg->i ++ ); ++} ++ ++void + setlayout(const Arg *arg) + { + if (!arg || !arg->v || arg->v != selmon->lt[selmon->sellt]) +@@ -1673,26 +1797,32 @@ tagmon(const Arg *arg) + void + tile(Monitor *m) + { +- unsigned int i, n, h, mw, my, ty; ++ unsigned int i, n, h, r, oe = enablegaps, ie = enablegaps, mw, my, ty; + Client *c; + + for (n = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), n++); + if (n == 0) + return; + ++ if (smartgaps == n) { ++ oe = 0; // outer gaps disabled ++ } ++ + if (n > m->nmaster) +- mw = m->nmaster ? m->ww * m->mfact : 0; ++ mw = m->nmaster ? (m->ww + m->gappiv*ie) * m->mfact : 0; + else +- mw = m->ww; +- for (i = my = ty = 0, c = nexttiled(m->clients); c; c = nexttiled(c->next), i++) ++ mw = m->ww - 2*m->gappov*oe + m->gappiv*ie; ++ for (i = 0, my = ty = m->gappoh*oe, c = nexttiled(m->clients); c; c = nexttiled(c->next), i++) + if (i < m->nmaster) { +- h = (m->wh - my) / (MIN(n, m->nmaster) - i); +- resize(c, m->wx, m->wy + my, mw - (2*c->bw), h - (2*c->bw), 0); +- my += HEIGHT(c); ++ r = MIN(n, m->nmaster) - i; ++ h = (m->wh - my - m->gappoh*oe - m->gappih*ie * (r - 1)) / r; ++ resize(c, m->wx + m->gappov*oe, m->wy + my, mw - (2*c->bw) - m->gappiv*ie, h - (2*c->bw), 0); ++ my += HEIGHT(c) + m->gappih*ie; + } else { +- h = (m->wh - ty) / (n - i); +- resize(c, m->wx + mw, m->wy + ty, m->ww - mw - (2*c->bw), h - (2*c->bw), 0); +- ty += HEIGHT(c); ++ r = n - i; ++ h = (m->wh - ty - m->gappoh*oe - m->gappih*ie * (r - 1)) / r; ++ resize(c, m->wx + mw + m->gappov*oe, m->wy + ty, m->ww - mw - (2*c->bw) - 2*m->gappov*oe, h - (2*c->bw), 0); ++ ty += HEIGHT(c) + m->gappih*ie; + } + } + +-- +2.7.4 +