Christoph M. Becker
3b0f051193
Allow empty $escape to eschew escaping CSV
...
Albeit CSV is still a widespread data exchange format, it has never been
officially standardized. There exists, however, the “informational” RFC
4180[1] which has no notion of escape characters, but rather defines
`escaped` as strings enclosed in double-quotes where contained
double-quotes have to be doubled. While this concept is supported by
PHP's implementation (`$enclosure`), the `$escape` sometimes interferes,
so that `fgetcsv()` is unable to correctly parse externally generated
CSV, and `fputcsv()` is sometimes generating non-compliant CSV. Since
PHP's `$escape` concept is availble for many years, we cannot drop it
for BC reasons (even though many consider it as bug). Instead we allow
to pass an empty string as `$escape` parameter to the respective
functions, which results in ignoring/omitting any escaping, and as such
is more inline with RFC 4180. It is noteworthy that this is almost no
userland BC break, since formerly most functions did not accept an empty
string, and failed in this case. The only exception was `str_getcsv()`
which did accept an empty string, and used a backslash as escape
character then (which appears to be unintended behavior, anyway).
The changed functions are `fputcsv()`, `fgetcsv()` and `str_getcsv()`,
and also the `::setCsvControl()`, `::getCsvControl()`, `::fputcsv()`,
and `::fgetcsv()` methods of `SplFileObject`.
The implementation also changes the type of the escape parameter of the
PHP_APIs `php_fgetcsv()` and `php_fputcsv()` from `char` to `int`, where
`PHP_CSV_NO_ESCAPE` means to ignore/omit escaping. The parameter
accepts the same values as `isalpha()` and friends, i.e. “the value of
which shall be representable as an `unsigned char` or shall equal the
value of the macro `EOF`. If the argument has any other value, the
behavior is undefined.” This is a subtle BC break, since the character
`chr(128)` has the value `-1` if `char` is signed, and so likely would
be confused with `EOF` when converted to `int`. We consider this BC
break to be acceptable, since it's rather unlikely that anybody uses
`chr(128)` as escape character, and it easily can be fixed by casting
all `escape` arguments to `unsigned char`.
This patch implements the feature requests 38301[2] and 51496[3].
[1] <https://tools.ietf.org/html/rfc4180 >
[2] <https://bugs.php.net/bug.php?id=38301 >
[3] <https://bugs.php.net/bug.php?id=51496 >
2018-12-15 14:38:15 +01:00
..
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-02-20 21:53:48 +01:00
2018-02-20 21:53:48 +01:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2012-10-10 10:27:49 +08:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2014-09-20 15:14:31 +02:00
2014-09-20 15:14:31 +02:00
2013-09-18 10:52:18 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2013-07-15 00:23:03 -07:00
2016-11-20 21:11:53 +01:00
2012-10-10 10:27:49 +08:00
2012-10-10 10:27:49 +08:00
2018-08-28 21:20:00 -03:00
2018-02-20 21:53:48 +01:00
2018-08-28 21:20:00 -03:00
2018-02-20 21:53:48 +01:00
2016-12-01 13:33:27 +01:00
2016-12-14 12:33:13 +01:00
2018-02-20 21:53:48 +01:00
2018-10-15 04:33:09 +02:00
2016-06-09 20:12:49 +02:00
2017-03-12 18:58:50 +00:00
2016-11-20 22:31:24 +01:00
2016-11-20 22:31:24 +01:00
2018-08-28 21:20:00 -03:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-08-28 21:20:00 -03:00
2016-06-22 12:22:03 +02:00
2018-10-14 19:45:12 +02:00
2014-11-30 16:38:20 -08:00
2014-12-12 16:42:38 +01:00
2018-10-15 04:33:09 +02:00
2015-05-21 09:44:17 +02:00
2016-01-06 00:01:44 +08:00
2016-08-31 16:45:15 +02:00
2018-10-14 19:45:12 +02:00
2016-07-21 18:37:24 +02:00
2018-01-17 12:46:59 +01:00
2017-12-14 16:16:50 +01:00
2018-02-04 23:27:51 +01:00
2016-06-20 12:45:39 +02:00
2013-08-04 16:05:36 -07:00
2013-08-04 16:05:36 -07:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-02-04 23:27:51 +01:00
2018-02-20 21:53:48 +01:00
2016-11-24 22:39:39 +01:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2014-03-05 12:05:28 +08:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-02-04 23:09:40 +01:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-02-04 23:09:40 +01:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-12-15 14:38:15 +01:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2013-11-06 10:31:47 +01:00
2013-11-06 10:31:47 +01:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-02-20 21:53:48 +01:00
2018-08-05 18:28:28 -03:00
2018-07-29 15:42:19 -03:00
2018-10-14 19:45:12 +02:00
2018-02-20 21:53:48 +01:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2016-06-20 12:45:39 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-08-12 16:15:45 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 12:56:38 +02:00
2017-12-08 18:14:20 +01:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-09-21 14:12:25 +02:00
2018-12-15 14:38:15 +01:00
2013-01-15 17:33:54 +08:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2013-11-06 10:32:00 +01:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-02-04 23:09:40 +01:00
2018-02-04 23:09:40 +01:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-13 11:23:52 +02:00
2018-10-13 11:23:52 +02:00
2018-10-30 20:42:00 +01:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2012-10-10 10:27:49 +08:00
2018-02-04 19:08:23 +01:00
2014-08-14 17:07:28 -07:00
2014-08-14 17:04:51 -07:00
2014-08-14 17:04:51 -07:00
2014-08-14 17:04:51 -07:00
2016-06-20 12:45:39 +02:00
2015-05-21 09:44:18 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-02-20 21:53:48 +01:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-02-20 21:53:48 +01:00
2018-02-20 21:53:48 +01:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-02-20 21:53:48 +01:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-02-20 21:53:48 +01:00
2018-02-20 21:53:48 +01:00
2018-02-20 21:53:48 +01:00
2018-10-14 19:46:15 +02:00
2018-02-20 21:53:48 +01:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-02-20 21:53:48 +01:00
2018-10-14 19:46:15 +02:00
2018-02-20 21:53:48 +01:00
2018-10-15 04:33:09 +02:00
2018-02-20 21:53:48 +01:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2012-11-27 16:02:55 +01:00
2018-02-20 21:53:48 +01:00
2015-05-11 00:12:39 -07:00
2016-06-20 12:45:39 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-02-04 23:09:40 +01:00
2018-02-20 21:53:48 +01:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2012-10-10 10:27:49 +08:00
2016-11-20 21:11:53 +01:00
2016-11-20 21:11:53 +01:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-02-20 21:53:48 +01:00
2018-02-20 21:53:48 +01:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2017-03-12 18:58:50 +00:00
2016-11-20 21:11:53 +01:00
2018-10-15 04:33:09 +02:00
2016-02-01 18:58:02 -08:00
2018-09-21 14:12:25 +02:00
2018-02-20 21:53:48 +01:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2016-07-22 18:03:55 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-07-30 09:43:09 -03:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2016-11-24 22:39:39 +01:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2016-06-09 17:19:40 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2012-06-30 16:54:03 -07:00
2018-10-14 19:45:12 +02:00
2018-10-14 19:45:12 +02:00
2018-10-15 04:33:09 +02:00
2018-02-20 21:53:48 +01:00
2018-02-04 23:09:40 +01:00
2018-02-04 23:09:40 +01:00
2018-02-04 23:09:40 +01:00
2016-06-20 12:45:39 +02:00
2018-10-15 04:33:09 +02:00
2018-02-20 21:53:48 +01:00
2018-02-20 21:53:48 +01:00
2018-02-20 21:53:48 +01:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:45:12 +02:00
2017-06-26 00:23:25 +02:00
2016-08-31 14:32:24 +02:00
2018-10-15 04:33:09 +02:00
2018-10-15 04:33:09 +02:00
2018-10-14 19:46:15 +02:00
2018-10-15 04:33:09 +02:00