Skip to content

Commit

Permalink
patch 8.1.0393: not all white space difference options available
Browse files Browse the repository at this point in the history
Problem:    Not all white space difference options available.
Solution:   Add "iblank", "iwhiteall" and "iwhiteeol" to 'diffopt'.
  • Loading branch information
brammool committed Sep 15, 2018
1 parent 50eb16c commit 785fc65
Show file tree
Hide file tree
Showing 7 changed files with 186 additions and 36 deletions.
80 changes: 61 additions & 19 deletions src/diff.c
Original file line number Original file line Diff line number Diff line change
Expand Up @@ -24,13 +24,17 @@
static int diff_busy = FALSE; /* ex_diffgetput() is busy */ static int diff_busy = FALSE; /* ex_diffgetput() is busy */


/* flags obtained from the 'diffopt' option */ /* flags obtained from the 'diffopt' option */
#define DIFF_FILLER 1 // display filler lines #define DIFF_FILLER 0x001 // display filler lines
#define DIFF_ICASE 2 // ignore case #define DIFF_IBLANK 0x002 // ignore empty lines
#define DIFF_IWHITE 4 // ignore change in white space #define DIFF_ICASE 0x004 // ignore case
#define DIFF_HORIZONTAL 8 // horizontal splits #define DIFF_IWHITE 0x008 // ignore change in white space
#define DIFF_VERTICAL 16 // vertical splits #define DIFF_IWHITEALL 0x010 // ignore all white space changes
#define DIFF_HIDDEN_OFF 32 // diffoff when hidden #define DIFF_IWHITEEOL 0x020 // ignore change in white space at EOL
#define DIFF_INTERNAL 64 // use internal xdiff algorithm #define DIFF_HORIZONTAL 0x040 // horizontal splits
#define DIFF_VERTICAL 0x080 // vertical splits
#define DIFF_HIDDEN_OFF 0x100 // diffoff when hidden
#define DIFF_INTERNAL 0x200 // use internal xdiff algorithm
#define ALL_WHITE_DIFF (DIFF_IWHITE | DIFF_IWHITEALL | DIFF_IWHITEEOL)
static int diff_flags = DIFF_INTERNAL | DIFF_FILLER; static int diff_flags = DIFF_INTERNAL | DIFF_FILLER;


static long diff_algorithm = 0; static long diff_algorithm = 0;
Expand Down Expand Up @@ -1050,6 +1054,12 @@ diff_file_internal(diffio_T *diffio)


if (diff_flags & DIFF_IWHITE) if (diff_flags & DIFF_IWHITE)
param.flags |= XDF_IGNORE_WHITESPACE_CHANGE; param.flags |= XDF_IGNORE_WHITESPACE_CHANGE;
if (diff_flags & DIFF_IWHITEALL)
param.flags |= XDF_IGNORE_WHITESPACE;
if (diff_flags & DIFF_IWHITEEOL)
param.flags |= XDF_IGNORE_WHITESPACE_AT_EOL;
if (diff_flags & DIFF_IBLANK)
param.flags |= XDF_IGNORE_BLANK_LINES;


emit_cfg.ctxlen = 0; // don't need any diff_context here emit_cfg.ctxlen = 0; // don't need any diff_context here
emit_cb.priv = &diffio->dio_diff; emit_cb.priv = &diffio->dio_diff;
Expand Down Expand Up @@ -1106,14 +1116,17 @@ diff_file(diffio_T *dio)
// Build the diff command and execute it. Always use -a, binary // Build the diff command and execute it. Always use -a, binary
// differences are of no use. Ignore errors, diff returns // differences are of no use. Ignore errors, diff returns
// non-zero when differences have been found. // non-zero when differences have been found.
vim_snprintf((char *)cmd, len, "diff %s%s%s%s%s %s", vim_snprintf((char *)cmd, len, "diff %s%s%s%s%s%s%s%s %s",
diff_a_works == FALSE ? "" : "-a ", diff_a_works == FALSE ? "" : "-a ",
#if defined(MSWIN) #if defined(MSWIN)
diff_bin_works == TRUE ? "--binary " : "", diff_bin_works == TRUE ? "--binary " : "",
#else #else
"", "",
#endif #endif
(diff_flags & DIFF_IWHITE) ? "-b " : "", (diff_flags & DIFF_IWHITE) ? "-b " : "",
(diff_flags & DIFF_IWHITEALL) ? "-w " : "",
(diff_flags & DIFF_IWHITEEOL) ? "-Z " : "",
(diff_flags & DIFF_IBLANK) ? "-B " : "",
(diff_flags & DIFF_ICASE) ? "-i " : "", (diff_flags & DIFF_ICASE) ? "-i " : "",
tmp_orig, tmp_new); tmp_orig, tmp_new);
append_redir(cmd, (int)len, p_srr, tmp_diff); append_redir(cmd, (int)len, p_srr, tmp_diff);
Expand Down Expand Up @@ -1946,17 +1959,25 @@ diff_cmp(char_u *s1, char_u *s2)
char_u *p1, *p2; char_u *p1, *p2;
int l; int l;


if ((diff_flags & (DIFF_ICASE | DIFF_IWHITE)) == 0) if ((diff_flags & DIFF_IBLANK)
&& (*skipwhite(s1) == NUL || *skipwhite(s2) == NUL))
return 0;

if ((diff_flags & (DIFF_ICASE | ALL_WHITE_DIFF)) == 0)
return STRCMP(s1, s2); return STRCMP(s1, s2);
if ((diff_flags & DIFF_ICASE) && !(diff_flags & DIFF_IWHITE)) if ((diff_flags & DIFF_ICASE) && !(diff_flags & ALL_WHITE_DIFF))
return MB_STRICMP(s1, s2); return MB_STRICMP(s1, s2);


/* Ignore white space changes and possibly ignore case. */
p1 = s1; p1 = s1;
p2 = s2; p2 = s2;

// Ignore white space changes and possibly ignore case.
while (*p1 != NUL && *p2 != NUL) while (*p1 != NUL && *p2 != NUL)
{ {
if (VIM_ISWHITE(*p1) && VIM_ISWHITE(*p2)) if (((diff_flags & DIFF_IWHITE)
&& VIM_ISWHITE(*p1) && VIM_ISWHITE(*p2))
|| ((diff_flags & DIFF_IWHITEALL)
&& (VIM_ISWHITE(*p1) || VIM_ISWHITE(*p2))))
{ {
p1 = skipwhite(p1); p1 = skipwhite(p1);
p2 = skipwhite(p2); p2 = skipwhite(p2);
Expand All @@ -1970,7 +1991,7 @@ diff_cmp(char_u *s1, char_u *s2)
} }
} }


/* Ignore trailing white space. */ // Ignore trailing white space.
p1 = skipwhite(p1); p1 = skipwhite(p1);
p2 = skipwhite(p2); p2 = skipwhite(p2);
if (*p1 != NUL || *p2 != NUL) if (*p1 != NUL || *p2 != NUL)
Expand Down Expand Up @@ -2142,11 +2163,26 @@ diffopt_changed(void)
p += 8; p += 8;
diff_context_new = getdigits(&p); diff_context_new = getdigits(&p);
} }
else if (STRNCMP(p, "iblank", 6) == 0)
{
p += 6;
diff_flags_new |= DIFF_IBLANK;
}
else if (STRNCMP(p, "icase", 5) == 0) else if (STRNCMP(p, "icase", 5) == 0)
{ {
p += 5; p += 5;
diff_flags_new |= DIFF_ICASE; diff_flags_new |= DIFF_ICASE;
} }
else if (STRNCMP(p, "iwhiteall", 9) == 0)
{
p += 9;
diff_flags_new |= DIFF_IWHITEALL;
}
else if (STRNCMP(p, "iwhiteeol", 9) == 0)
{
p += 9;
diff_flags_new |= DIFF_IWHITEEOL;
}
else if (STRNCMP(p, "iwhite", 6) == 0) else if (STRNCMP(p, "iwhite", 6) == 0)
{ {
p += 6; p += 6;
Expand Down Expand Up @@ -2315,9 +2351,12 @@ diff_find_change(
si_org = si_new = 0; si_org = si_new = 0;
while (line_org[si_org] != NUL) while (line_org[si_org] != NUL)
{ {
if ((diff_flags & DIFF_IWHITE) if (((diff_flags & DIFF_IWHITE)
&& VIM_ISWHITE(line_org[si_org]) && VIM_ISWHITE(line_org[si_org])
&& VIM_ISWHITE(line_new[si_new])) && VIM_ISWHITE(line_new[si_new]))
|| ((diff_flags & DIFF_IWHITEALL)
&& (VIM_ISWHITE(line_org[si_org])
|| VIM_ISWHITE(line_new[si_new]))))
{ {
si_org = (int)(skipwhite(line_org + si_org) - line_org); si_org = (int)(skipwhite(line_org + si_org) - line_org);
si_new = (int)(skipwhite(line_new + si_new) - line_new); si_new = (int)(skipwhite(line_new + si_new) - line_new);
Expand Down Expand Up @@ -2351,9 +2390,12 @@ diff_find_change(
while (ei_org >= *startp && ei_new >= si_new while (ei_org >= *startp && ei_new >= si_new
&& ei_org >= 0 && ei_new >= 0) && ei_org >= 0 && ei_new >= 0)
{ {
if ((diff_flags & DIFF_IWHITE) if (((diff_flags & DIFF_IWHITE)
&& VIM_ISWHITE(line_org[ei_org]) && VIM_ISWHITE(line_org[ei_org])
&& VIM_ISWHITE(line_new[ei_new])) && VIM_ISWHITE(line_new[ei_new]))
|| ((diff_flags & DIFF_IWHITEALL)
&& (VIM_ISWHITE(line_org[ei_org])
|| VIM_ISWHITE(line_new[ei_new]))))
{ {
while (ei_org >= *startp while (ei_org >= *startp
&& VIM_ISWHITE(line_org[ei_org])) && VIM_ISWHITE(line_org[ei_org]))
Expand Down
20 changes: 20 additions & 0 deletions src/testdir/dumps/Test_diff_17.dump
Original file line number Original file line Diff line number Diff line change
@@ -0,0 +1,20 @@
| +0#0000e05#a8a8a8255@1|a+0#0000000#ffffff0| @33||+1&&| +0#0000e05#a8a8a8255@1|a+0#0000000#ffffff0| @33
| +0#0000e05#a8a8a8255@1| +0#0000000#5fd7ff255@34||+1&#ffffff0| +0#0000e05#a8a8a8255@1|-+0#4040ff13#afffff255@34
| +0#0000e05#a8a8a8255@1|c+0#0000000#ffffff0|d| @32||+1&&| +0#0000e05#a8a8a8255@1|c+0#0000000#ffffff0|d| @32
| +0#0000e05#a8a8a8255@1|e+0#0000000#ffffff0|f| @32||+1&&| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@34
| +0#0000e05#a8a8a8255@1|x+2#0000000#ff404010@2| +0&#ffd7ff255@31||+1&#ffffff0| +0#0000e05#a8a8a8255@1|e+0#0000000#ffffff0|f| @32
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|y+2#0000000#ff404010@2| +0&#ffd7ff255@31
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
|X+3#0000000&|f|i|l|e|1| @12|1|,|1| @11|A|l@1| |X+1&&|f|i|l|e|2| @12|1|,|1| @11|A|l@1
|:+0&&> @73
20 changes: 20 additions & 0 deletions src/testdir/dumps/Test_diff_18.dump
Original file line number Original file line Diff line number Diff line change
@@ -0,0 +1,20 @@
| +0#0000e05#a8a8a8255@1|a+0#0000000#ffffff0| @33||+1&&| +0#0000e05#a8a8a8255@1|a+0#0000000#ffffff0| @33
| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@34||+1&&| +0#0000e05#a8a8a8255@1|c+0#0000000#ffffff0|d| @32
| +0#0000e05#a8a8a8255@1|c+0#0000000#ffffff0|d| @32||+1&&| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0@34
| +0#0000e05#a8a8a8255@1|e+0#0000000#ffffff0|f| @32||+1&&| +0#0000e05#a8a8a8255@1|e+0#0000000#ffffff0|f| @32
| +0#0000e05#a8a8a8255@1|x+2#0000000#ff404010@2| +0&#ffd7ff255@31||+1&#ffffff0| +0#0000e05#a8a8a8255@1|y+2#0000000#ff404010@2| +0&#ffd7ff255@31
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
|X+3#0000000&|f|i|l|e|1| @12|1|,|1| @11|A|l@1| |X+1&&|f|i|l|e|2| @12|1|,|1| @11|A|l@1
|:+0&&> @73
20 changes: 20 additions & 0 deletions src/testdir/dumps/Test_diff_19.dump
Original file line number Original file line Diff line number Diff line change
@@ -0,0 +1,20 @@
| +0#0000e05#a8a8a8255@1|a+0#0000000#ffffff0| @33||+1&&| +0#0000e05#a8a8a8255@1|a+0#0000000#ffffff0| @33
| +0#0000e05#a8a8a8255@1|x+0#0000000#ffffff0| @33||+1&&| +0#0000e05#a8a8a8255@1|x+0#0000000#ffffff0| @33
| +0#0000e05#a8a8a8255@1|c+0#0000000#ffd7ff255|d| @32||+1&#ffffff0| +0#0000e05#a8a8a8255@1|c+0#0000000#ffd7ff255| +2&#ff404010|d+0&#ffd7ff255| @31
| +0#0000e05#a8a8a8255@1|e+0#0000000#ffd7ff255|f| @32||+1&#ffffff0| +0#0000e05#a8a8a8255@1| +2#0000000#ff404010|e+0&#ffd7ff255|f| @31
| +0#0000e05#a8a8a8255@1|x+0#0000000#ffd7ff255@1| | +2&#ff404010|x+0&#ffd7ff255@1| @28||+1&#ffffff0| +0#0000e05#a8a8a8255@1|x+0#0000000#ffd7ff255@1| |x@1| @29
| +0#0000e05#a8a8a8255@1|f+0#0000000#ffffff0|o@1| @31||+1&&| +0#0000e05#a8a8a8255@1|f+0#0000000#ffffff0|o@1| @31
| +0#0000e05#a8a8a8255@1|-+0#4040ff13#afffff255@34||+1#0000000#ffffff0| +0#0000e05#a8a8a8255@1| +0#0000000#5fd7ff255@34
| +0#0000e05#a8a8a8255@1|b+0#0000000#ffffff0|a|r| @31||+1&&| +0#0000e05#a8a8a8255@1|b+0#0000000#ffffff0|a|r| @31
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
|X+3#0000000&|f|i|l|e|1| @12|1|,|1| @11|A|l@1| |X+1&&|f|i|l|e|2| @12|1|,|1| @11|A|l@1
|:+0&&> @73
20 changes: 20 additions & 0 deletions src/testdir/dumps/Test_diff_20.dump
Original file line number Original file line Diff line number Diff line change
@@ -0,0 +1,20 @@
| +0#0000e05#a8a8a8255@1|a+0#0000000#ffffff0| @33||+1&&| +0#0000e05#a8a8a8255@1|a+0#0000000#ffffff0| @33
| +0#0000e05#a8a8a8255@1|x+0#0000000#ffffff0| @33||+1&&| +0#0000e05#a8a8a8255@1|x+0#0000000#ffffff0| @33
| +0#0000e05#a8a8a8255@1|c+0#0000000#ffffff0|d| @32||+1&&| +0#0000e05#a8a8a8255@1|c+0#0000000#ffffff0| |d| @31
| +0#0000e05#a8a8a8255@1|e+0#0000000#ffffff0|f| @32||+1&&| +0#0000e05#a8a8a8255@1| +0#0000000#ffffff0|e|f| @31
| +0#0000e05#a8a8a8255@1|x+0#0000000#ffffff0@1| @1|x@1| @28||+1&&| +0#0000e05#a8a8a8255@1|x+0#0000000#ffffff0@1| |x@1| @29
| +0#0000e05#a8a8a8255@1|f+0#0000000#ffffff0|o@1| @31||+1&&| +0#0000e05#a8a8a8255@1|f+0#0000000#ffffff0|o@1| @31
| +0#0000e05#a8a8a8255@1|-+0#4040ff13#afffff255@34||+1#0000000#ffffff0| +0#0000e05#a8a8a8255@1| +0#0000000#5fd7ff255@34
| +0#0000e05#a8a8a8255@1|b+0#0000000#ffffff0|a|r| @31||+1&&| +0#0000e05#a8a8a8255@1|b+0#0000000#ffffff0|a|r| @31
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33||+1#0000000&| +0#0000e05#a8a8a8255@1|~+0#4040ff13#ffffff0| @33
|X+3#0000000&|f|i|l|e|1| @12|1|,|1| @11|A|l@1| |X+1&&|f|i|l|e|2| @12|1|,|1| @11|A|l@1
|:+0&&> @73
Loading

0 comments on commit 785fc65

Please sign in to comment.