Removed pt-query-advisor

This commit is contained in:
Brian Fraser
2013-03-13 11:50:08 -03:00
parent 5a5fe75130
commit 55bb01bb6e
30 changed files with 0 additions and 11012 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -1,687 +0,0 @@
# This program is copyright 2010-2011 Percona Ireland Ltd.
# Feedback and improvements are welcome.
#
# THIS PROGRAM IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
# MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free Software
# Foundation, version 2; OR the Perl Artistic License. On UNIX and similar
# systems, you can issue `man perlgpl' or `man perlartistic' to read these
# licenses.
#
# You should have received a copy of the GNU General Public License along with
# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
# Place, Suite 330, Boston, MA 02111-1307 USA.
# ###########################################################################
# QueryAdvisorRules package
# ###########################################################################
{
# Package: QueryAdvisorRules
# QueryAdvisorRules encapsulates rules for checking queries.
package QueryAdvisorRules;
use base 'AdvisorRules';
use strict;
use warnings FATAL => 'all';
use English qw(-no_match_vars);
use constant PTDEBUG => $ENV{PTDEBUG} || 0;
sub new {
my ( $class, %args ) = @_;
my $self = $class->SUPER::new(%args);
@{$self->{rules}} = $self->get_rules();
PTDEBUG && _d(scalar @{$self->{rules}}, "rules");
return $self;
}
# Each rules is a hashref with two keys:
# * id Unique PREFIX.NUMBER for the rule. The prefix is three chars
# which hints to the nature of the rule. See example below.
# * code Coderef to check rule, returns undef if rule does not match,
# else returns the string pos near where the rule matches or 0
# to indicate it doesn't know the pos. The code is passed a\
# single arg: a hashref event.
sub get_rules {
return
{
id => 'ALI.001', # Implicit alias
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $struct = $event->{query_struct};
my $tbls = $struct->{from} || $struct->{into} || $struct->{tables};
return unless $tbls;
foreach my $tbl ( @$tbls ) {
return 0 if $tbl->{alias} && !$tbl->{explicit_alias};
}
my $cols = $struct->{columns};
return unless $cols;
foreach my $col ( @$cols ) {
return 0 if $col->{alias} && !$col->{explicit_alias};
}
return;
},
},
{
id => 'ALI.002', # tbl.* alias
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $cols = $event->{query_struct}->{columns};
return unless $cols;
foreach my $col ( @$cols ) {
return 0 if $col->{tbl} && $col->{col} eq '*' && $col->{alias};
}
return;
},
},
{
id => 'ALI.003', # tbl AS tbl
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $struct = $event->{query_struct};
my $tbls = $struct->{from} || $struct->{into} || $struct->{tables};
return unless $tbls;
foreach my $tbl ( @$tbls ) {
return 0 if $tbl->{alias} && $tbl->{alias} eq $tbl->{tbl};
}
my $cols = $struct->{columns};
return unless $cols;
foreach my $col ( @$cols ) {
return 0 if $col->{alias} && $col->{alias} eq $col->{col};
}
return;
},
},
{
id => 'ARG.001', # col = '%foo'
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $where = $event->{query_struct}->{where};
return unless $where && @$where;
foreach my $arg ( @$where ) {
return 0
if ($arg->{operator} || '') eq 'like'
&& $arg->{right_arg} =~ m/[\'\"][\%\_]./;
}
return;
},
},
{
id => 'ARG.002', # LIKE w/o wildcard
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $where = $event->{query_struct}->{where};
return unless $where && @$where;
foreach my $arg ( @$where ) {
return 0
if ($arg->{operator} || '') eq 'like'
&& $arg->{right_arg} !~ m/[%_]/;
}
return;
},
},
{
id => 'CLA.001', # SELECT w/o WHERE
code => sub {
my ( %args ) = @_;
my $event = $args{event};
return unless ($event->{query_struct}->{type} || '') eq 'select';
return unless $event->{query_struct}->{from};
return 0 unless $event->{query_struct}->{where};
return;
},
},
{
id => 'CLA.002', # ORDER BY RAND()
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $orderby = $event->{query_struct}->{order_by};
return unless $orderby;
foreach my $ident ( @$orderby ) {
# SQLParser will have uppercased the function name.
return 0 if $ident->{function} && $ident->{function} eq 'RAND';
}
return;
},
},
{
id => 'CLA.003', # LIMIT w/ OFFSET
code => sub {
my ( %args ) = @_;
my $event = $args{event};
return unless $event->{query_struct}->{limit};
return unless defined $event->{query_struct}->{limit}->{offset};
return 0;
},
},
{
id => 'CLA.004', # GROUP BY <number>
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $groupby = $event->{query_struct}->{group_by};
return unless $groupby;
foreach my $ident ( @$groupby ) {
return 0 if exists $ident->{position};
}
return;
},
},
{
id => 'CLA.005', # ORDER BY col where col=<constant>
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $orderby = $event->{query_struct}->{order_by};
return unless $orderby;
my $where = $event->{query_struct}->{where};
return unless $where;
my %orderby_col = map { lc $_->{column} => 1 }
grep { $_->{column} }
@$orderby;
foreach my $pred ( @$where ) {
my $val = $pred->{right_arg};
next unless $val;
return 0 if $val =~ m/^\d+$/ && $orderby_col{lc($pred->{left_arg} || '')};
}
return;
},
},
{
id => 'CLA.006', # GROUP BY or ORDER BY different tables
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $groupby = $event->{query_struct}->{group_by};
my $orderby = $event->{query_struct}->{order_by};
return unless $groupby || $orderby;
my %groupby_tbls = map { $_->{table} => 1 }
grep { $_->{table} }
@$groupby;
return 0 if scalar keys %groupby_tbls > 1;
my %orderby_tbls = map { $_->{table} => 1 }
grep { $_->{table} }
@$orderby;
return 0 if scalar keys %orderby_tbls > 1;
# Remove ORDER BY tables from GROUP BY tables. Any tables
# remain in GROUP BY are unique to GROUP BY, i.e. not in
# ORDER BY, so we have a case like: group by tbl1.id order by tbl2.id
map { delete $groupby_tbls{$_} } keys %orderby_tbls;
return 0 if scalar keys %groupby_tbls;
return;
},
},
{
id => 'CLA.007', # ORDER BY ASC/DESC mix can't use index
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $order_by = $event->{query_struct}->{order_by};
return unless $order_by;
my ($asc, $desc) = (0, 0);
foreach my $col ( @$order_by ) {
if ( ($col->{sort} || 'ASC') eq 'ASC' ) {
$asc++;
}
else {
$desc++;
}
return 0 if $asc && $desc;
}
return;
},
},
{
id => 'COL.001', # SELECT *
code => sub {
my ( %args ) = @_;
my $event = $args{event};
return unless ($event->{query_struct}->{type} || '') eq 'select';
my $cols = $event->{query_struct}->{columns};
return unless $cols;
foreach my $col ( @$cols ) {
return 0 if $col->{col} eq '*' && !$col->{func};
}
return;
},
},
{
id => 'COL.002', # INSERT w/o (cols) def
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $type = $event->{query_struct}->{type} || '';
return unless $type eq 'insert' || $type eq 'replace';
return 0 unless $event->{query_struct}->{columns};
return;
},
},
{
id => 'LIT.001', # IP as string
code => sub {
my ( %args ) = @_;
my $event = $args{event};
if ( $event->{arg} =~ m/['"]\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/gc ) {
return (pos $event->{arg}) || 0;
}
return;
},
},
{
id => 'LIT.002', # Date not quoted
code => sub {
my ( %args ) = @_;
my $event = $args{event};
# YYYY-MM-DD
if ( $event->{arg} =~ m/(?<!['"\w-])\d{4}-\d{1,2}-\d{1,2}\b/gc ) {
return (pos $event->{arg}) || 0;
}
# YY-MM-DD
if ( $event->{arg} =~ m/(?<!['"\w\d-])\d{2}-\d{1,2}-\d{1,2}\b/gc ) {
return (pos $event->{arg}) || 0;
}
return;
},
},
{
id => 'KWR.001', # SQL_CALC_FOUND_ROWS
code => sub {
my ( %args ) = @_;
my $event = $args{event};
return 0 if $event->{query_struct}->{keywords}->{sql_calc_found_rows};
return;
},
},
{
id => 'JOI.001', # comma and ansi joins
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $struct = $event->{query_struct};
my $tbls = $struct->{from} || $struct->{into} || $struct->{tables};
return unless $tbls;
my $comma_join = 0;
my $ansi_join = 0;
foreach my $tbl ( @$tbls ) {
if ( $tbl->{join} ) {
if ( $tbl->{join}->{ansi} ) {
$ansi_join = 1;
}
else {
$comma_join = 1;
}
}
return 0 if $comma_join && $ansi_join;
}
return;
},
},
{
id => 'RES.001', # non-deterministic GROUP BY
code => sub {
my ( %args ) = @_;
my $event = $args{event};
return unless ($event->{query_struct}->{type} || '') eq 'select';
my $groupby = $event->{query_struct}->{group_by};
return unless $groupby;
# Only check GROUP BY column names, not numbers. GROUP BY number
# is handled in CLA.004.
my %groupby_col = map { $_->{column} => 1 }
grep { $_->{column} }
@$groupby;
return unless scalar %groupby_col;
# Skip non-columns -- NULL, digits, functions, variables
my $cols = [
grep { _looks_like_column($_->{col}) }
grep { ! exists $_->{func} }
@{$event->{query_struct}->{columns}}
];
# All SELECT cols must be in GROUP BY cols clause.
# E.g. select a, b, c from tbl group by a; -- non-deterministic
foreach my $col ( @$cols ) {
return 0 unless $groupby_col{ $col->{col} }
|| ($col->{alias} && $groupby_col{ $col->{alias} });
}
return;
},
},
{
id => 'RES.002', # non-deterministic LIMIT w/o ORDER BY
code => sub {
my ( %args ) = @_;
my $event = $args{event};
return unless $event->{query_struct}->{limit};
# If query doesn't use tables then this check isn't applicable.
return unless $event->{query_struct}->{from}
|| $event->{query_struct}->{into}
|| $event->{query_struct}->{tables};
return 0 unless $event->{query_struct}->{order_by};
return;
},
},
{
id => 'STA.001', # != instead of <>
code => sub {
my ( %args ) = @_;
my $event = $args{event};
return 0 if $event->{arg} =~ m/!=/;
return;
},
},
{
id => 'SUB.001', # IN(<subquery>)
code => sub {
my ( %args ) = @_;
my $event = $args{event};
if ( $event->{arg} =~ m/\bIN\s*\(\s*SELECT\b/gi ) {
return pos $event->{arg};
}
return;
},
},
{
id => 'JOI.002', # table joined more than once, but not self-join
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $struct = $event->{query_struct};
return unless $struct;
my $tbls = $struct->{from} || $struct->{into} || $struct->{tables};
return unless $tbls;
my %tbl_cnt;
my $n_tbls = scalar @$tbls;
# To detect this rule we look for tables joined more than once
# (if cnt > 1) and via both an ansi and comma join. This captures
# "t AS a JOIN t AS b a.foo=b.bar, t" but not the simple self-join
# "t AS a JOIN t AS b a.foo=b.bar" or cases where a table is joined
# to many other tables all via ansi joins or the implicit self-join
# (which we really can't detect) "t AS a, t AS b WHERE a.foo=b.bar".
# When a table shows up multiple times in ansi joins and then again
# in a comma join, the comma join is usually culprit of this rule.
for my $i ( 0..($n_tbls-1) ) {
my $tbl = $tbls->[$i];
my $tbl_name = lc $tbl->{tbl};
$tbl_cnt{$tbl_name}->{cnt}++;
$tbl_cnt{$tbl_name}->{ansi_join}++
if $tbl->{join} && $tbl->{join}->{ansi};
$tbl_cnt{$tbl_name}->{comma_join}++
if $tbl->{join} && !$tbl->{join}->{ansi};
if ( $tbl_cnt{$tbl_name}->{cnt} > 1 ) {
return 0
if $tbl_cnt{$tbl_name}->{ansi_join}
&& $tbl_cnt{$tbl_name}->{comma_join};
}
}
return;
},
},
{
id => 'JOI.003', # OUTER JOIN converted to INNER JOIN
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $struct = $event->{query_struct};
return unless $struct;
my $tbls = $struct->{from} || $struct->{into} || $struct->{tables};
return unless $tbls;
my $where = $struct->{where};
return unless $where;
# Good LEFT OUTER JOIN:
# select * from L left join R using(c) where L.a=5;
# Converts to INNER JOIN when:
# select * from L left join R using(c) where L.a=5 and R.b=10;
# To detect this condition we need to see if there's an OUTER
# join then see if there's a column from the outer table in the
# WHERE clause that is anything but "IS NULL". So in the example
# above, R.b=10 is this culprit.
# http://code.google.com/p/maatkit/issues/detail?id=950
my %outer_tbls = map { $_->{tbl} => 1 } get_outer_tables($tbls);
PTDEBUG && _d("Outer tables:", keys %outer_tbls);
return unless %outer_tbls;
foreach my $pred ( @$where ) {
next unless $pred->{left_arg}; # skip constants like 1 in "WHERE 1"
my ($tbl, $col) = split /\./, $pred->{left_arg};
if ( $tbl && $col && $outer_tbls{$tbl} ) {
# Only outer_tbl.col IS NULL is permissible.
if ($pred->{operator} ne 'is' || $pred->{right_arg} !~ m/null/i)
{
PTDEBUG && _d("Predicate prevents OUTER JOIN:",
map { $pred->{$_} } qw(left_arg operator right_arg));
return 0;
}
}
}
return;
}
},
{
id => 'JOI.004', # broken exclusion join
code => sub {
my ( %args ) = @_;
my $event = $args{event};
my $struct = $event->{query_struct};
return unless $struct;
my $tbls = $struct->{from} || $struct->{into} || $struct->{tables};
return unless $tbls;
my $where = $struct->{where};
return unless $where;
my %outer_tbls;
my %outer_tbl_join_cols;
my @unknown_join_cols;
foreach my $outer_tbl ( get_outer_tables($tbls) ) {
$outer_tbls{$outer_tbl->{tbl}} = 1;
# For "L LEFT JOIN R" R is the outer table and since it follows
# L its table struct will have the join struct with the join
# condition. But for "L RIGHT JOIN R" L is the outer table and
# will not have the join struct because it precedes R. This
# is due to how parse_from() works. So if the outer table doesn't
# have the join struct, we need to get it from the inner table.
my $join = $outer_tbl->{join};
if ( !$join ) {
my ($inner_tbl) = grep {
exists $_->{join}
&& $_->{join}->{to} eq $outer_tbl->{tbl}
} @$tbls;
$join = $inner_tbl->{join};
die "Cannot find join structure for $outer_tbl->{tbl}"
unless $join;
}
# Get the outer table columns used in the jon condition.
if ( $join->{condition} eq 'using' ) {
%outer_tbl_join_cols = map { $_ => 1 } @{$join->{columns}};
}
else {
my $where = $join->{where};
die "Join structure for ON condition has no where structure"
unless $where;
my @join_cols;
foreach my $pred ( @$where ) {
next unless $pred->{operator} eq '=';
# Assume all equality comparisons are like tbl1.col=tbl2.col.
# Thus join conditions like tbl1.col<tbl2.col aren't handled.
push @join_cols, $pred->{left_arg}, $pred->{right_arg};
}
PTDEBUG && _d("Join columns:", @join_cols);
foreach my $join_col ( @join_cols ) {
my ($tbl, $col) = split /\./, $join_col;
if ( !$col ) {
$col = $tbl;
$tbl = determine_table_for_column(
column => $col,
tbl_structs => $event->{tbl_structs},
);
}
if ( !$tbl ) {
PTDEBUG && _d("Cannot determine the table for join column",
$col);
push @unknown_join_cols, $col;
}
else {
$outer_tbl_join_cols{$col} = 1
if $tbl eq $outer_tbl->{tbl};
}
}
}
}
PTDEBUG && _d("Outer table join columns:", keys %outer_tbl_join_cols);
PTDEBUG && _d("Unknown join columns:", @unknown_join_cols);
# Here's a problem query:
# select c from L left join R on L.a=R.b where L.a=5 and R.c is null
# The problem is "R.c is null" will not allow one to determine if
# a null row from the outer table is null due to not matching the
# inner table or due to R.c actually having a null value. So we
# need to check every outer table column in the WHERE clause for
# ones that are 1) not in the JOIN expression and 2) "IS NULL'.
# http://code.google.com/p/maatkit/issues/detail?id=950
foreach my $pred ( @$where ) {
next unless $pred->{left_arg}; # skip constants like 1 in "WHERE 1"
next unless $pred->{operator} eq 'is'
&& $pred->{right_arg} =~ m/NULL/i;
my ($tbl, $col) = split /\./, $pred->{left_arg};
if ( !$col ) {
# A col in the WHERE clause isn't table-qualified. Try to
# determine its table. If we can, great, if not "return 0 if"
# below will immediately fail because $tbl will be undef still.
# That's ok; it just means this test tries as best it can and
# gets skipped silently when we can't tbl-qualify cols.
$col = $tbl;
$tbl = determine_table_for_column(
column => $col,
tbl_structs => $event->{tbl_structs},
);
}
next unless $tbl; # can't check tbl if tbl is unknown
next unless $outer_tbls{$tbl}; # only want outer tbl cols
# At this point we know col is from outer table and "IS NULL".
# "outer_tbl.join_col IS NULL" is ok, but...
next if $outer_tbl_join_cols{$col};
# ...this rule could match here for two reasons. First, if
# we know the outer tbl join cols and this col isn't one of them
# (hence the statement above passed and we got here), then
# @unknown_join_cols will be empty and we'll match. This is like
# "outer_tbl.NON_join_col IS NULL". Or second, we don't know
# the outer tbl join cols and @unknown_join_cols will have cols
# and we'll match if this col isn't one of the unknown join cols.
# This is for cases like:
# select c from L left join R on a=b where L.a=5 and R.c is null
# We don't know if a or b belong to L or R but we know c is from
# the outer table and is neither a nor b.
return 0 unless grep { $col eq $_ } @unknown_join_cols;
}
return; # rule does not match, as best as we can determine
}
},
};
# Sub: get_outer_tables
# Get the outer tables in joins.
#
# Parameters:
# $tbls - Arrayref of hashrefs with table info
#
# Returns:
# Array of hashref to the outer tables
sub get_outer_tables {
my ( $tbls ) = @_;
return unless $tbls;
my @outer_tbls;
my $n_tbls = scalar @$tbls;
for my $i( 0..($n_tbls-1) ) {
my $tbl = $tbls->[$i];
next unless $tbl->{join} && $tbl->{join}->{type} =~ m/left|right/i;
push @outer_tbls,
$tbl->{join}->{type} =~ m/left/i ? $tbl
: $tbls->[$i - 1];
}
return @outer_tbls;
}
# Sub: determine_table_for_column
# Determine which table a column belongs to. No extensive, online effort
# is made to determine the column's table. The caller is responsible for
# using the parsed SQL structure to get its db/tables and their tbl structs
# and providing a list of them.
#
# Parameters:
# %args - Arguments
#
# Required Arguments:
# column - column name, not quoted
#
# Optional Arguments:
# tbl_structs - arrayref hashrefs returned by <TableParser::parse()>
#
# Returns:
# Table name, not quoted
sub determine_table_for_column {
my ( %args ) = @_;
my @required_args = qw(column);
foreach my $arg ( @required_args ) {
die "I need a $arg argument" unless $args{$arg};
}
my ($col) = @args{@required_args};
my $tbl_structs = $args{tbl_structs};
return unless $tbl_structs;
foreach my $db ( keys %$tbl_structs ) {
foreach my $tbl ( keys %{$tbl_structs->{$db}} ) {
if ( $tbl_structs->{$db}->{$tbl}->{is_col}->{$col} ) {
PTDEBUG && _d($col, "column belongs to", $db, $tbl);
return $tbl;
}
}
}
PTDEBUG && _d("Cannot determine table for column", $col);
return;
}
sub _looks_like_column {
my $col = shift;
# NULL, numbers, variables and functions are definitely not columns
return if $col eq '*' || uc($col) eq 'NULL';
return if $col =~ /\A(?:\b[0-9]+\b|\@{1,2}.+)/;
return $col;
}
sub _d {
my ($package, undef, $line) = caller 0;
@_ = map { (my $temp = $_) =~ s/\n/\n# /g; $temp; }
map { defined $_ ? $_ : 'undef' }
@_;
print STDERR "# $package:$line $PID ", join(' ', @_), "\n";
}
1;
}
# ###########################################################################
# End QueryAdvisorRules package
# ###########################################################################

View File

@@ -1,88 +0,0 @@
# User@Host: myuser[mydb] @ [40.0.0.5]
# Thread_id: 404054555 Schema: mydb
# Query_time: 40.545555 Lock_time: 0.000550 Rows_sent: 0 Rows_examined: 0 Rows_affected: 4 Rows_read: 4
# QC_Hit: No Full_scan: No Full_join: No Tmp_table: No Tmp_table_on_disk: No
# Filesort: No Filesort_on_disk: No Merge_passes: 0
# InnoDB_IO_r_ops: 4 InnoDB_IO_r_bytes: 45455 InnoDB_IO_r_wait: 0.000045
# InnoDB_rec_lock_wait: 0.000000 InnoDB_queue_wait: 0.000000
# InnoDB_pages_distinct: 45
use mydb;
SET insert_id=45054;
INSERT INTO
friends
(jid, amisnonjoueurs, amisjoueurs, jour)
VALUES
(4444555450,'545544|rznnzrzr Crzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54554_545544_4554_q.jpg,540544445|Nzcky Pzrry|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55504_540544445_5555545_q.jpg,540545055|Lzndz Wzlkzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54555_540545055_5555_q.jpg,540555054|znnzssz zZszl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54544_540555054_5545505_q.jpg,545054545|Zzrzzl zssznrzzZ|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54540_545054545_5544_q.jpg,545405444|Dzprnz rlzZssrznd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_545405444_4544555_q.jpg,545450545|rznzgzn zkzszs rlznkz rzrzwzzc-Szczzpznskz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50405_545450545_5504_q.jpg,544445545|Dzvz CrzpZzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55454_544445545_5054_q.jpg,544455445|Zzgzn Przpps|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54540_544455445_4550_q.jpg,54445
5455|Czrl R Grzrrzsrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55445_544455455_5455_q.jpg,545545555|znnSzrzz Wzrnrzrn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55040_545545555_4455445_q.jpg,545555555|Lznn Sk<53>nrzrg|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55550_545555555_5555_q.jpg,555055550|Lzz Pzsszrszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4454.snc5/455450_555055550_5555004_q.jpg,555405445|Srzzn Wzlls|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50555_555405445_5550545_q.jpg,554455555|Zzkz Lz rzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54554_554455555_5554405_q.jpg,555545054|Lznn rznsszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/50555_555545054_5054555_q.jpg,550555055|rznz rzrZzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55544_550555055_4444454_q.jpg,554555555|rrzndzn Czllzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs405.zsr4/44405_554555555_5555_q.jpg,554544505|Przlzppz Vzllz|http://przrzlz.zk
.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54554_554544505_5555_q.jpg,555540054|Lzzrz rrzwn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/50454_555540054_5554555_q.jpg,555555455|Srzznz z\'Nzzll Clzrk|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_555555455_5554_q.jpg,555545455|Dzwn Zzrsznzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50405_555545455_4504555_q.jpg,555555454|rzzrdzsk zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/455455_555555454_5554555_q.jpg,555454545|rzrnzndz rzrgzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54540_555454545_5554_q.jpg,555455050|rz Wrzsrzzld|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55404_555455050_5545550_q.jpg,555554440|KzZrzrlzy Pznnzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_555554440_4545_q.jpg,500555455|Lzzrzns Kzsszl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/50555_500555455_4545455_q.jpg,504555555|Kzrzn Rzwlzy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs45
5.snc4/44454_504555555_5445_q.jpg,544455455|rzrrzd Wrzsrzzld|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54554_544455455_5554_q.jpg,545450555|Zzrszn zpplzszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55455_545450555_445_q.jpg,545545054|Gzzl rzZzlszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55554_545545054_5555454_q.jpg,545504445|Rzrzrs Wzrnrzrn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_545504445_5000_q.jpg,554554555|Nzczlz Dzrrzzld|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55005_554554555_5445555_q.jpg,554555555|Kzrzlzznz Z<>kznzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54455_554555555_5500_q.jpg,555005455|szzlz rzkzzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_555005455_4455_q.jpg,554455555|Nzczl<7A>s Gzrc<72>z zrzndz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54540_554455555_4555_q.jpg,555555504|Czczlzz CzrZzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs404.zsr4/44055_555555504_554_q.
rpg,555545445|zllzn Zzrsr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54554_555545445_4455405_q.jpg,555544505|Zzrzz-C<>czlz Lzrzyz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54554_555544505_4544_q.jpg,555450555|Crrzssznz ScrZzds|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50545_555450555_550455_q.jpg,555454405|Czrzl rzvzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55550_555454405_4554455_q.jpg,505454545|zlzvzzr P<>sr<73>|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50405_505454545_5555400_q.jpg,540550444|Lzrrzznz zSzllzvzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54545_540550444_45455_q.jpg,545554555|zZ<7A>lzz zzrzrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_545554555_5554_q.jpg,545555455|Kyzdzz zkzszs Kyzdzz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45505_545555455_5545_q.jpg,545554554|Rzcrzzl Czrr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_545554554_5440555_q.jpg,545455455|DzZ
znzqzz RzZz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_545455455_4555_q.jpg,545455504|Zzsszz Gzzzzssz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54504_545455504_455_q.jpg,545544445|Dznz zzrzrg zpplzng|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs550.snc5/55555_545544445_5454_q.jpg,550455540|Crrzs ZcLzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55550_550455540_5555_q.jpg,554055445|szrz Ssrzdzr -rzdz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55440_554055445_5545555_q.jpg,555554055|Dznny Zzzlz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45450_555554055_5555_q.jpg,555554455|Nzsz Dzzssrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54455_555554455_5545_q.jpg,554555555|rzlzn Dzxzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_554555555_4555555_q.jpg,555555454|Crrzsszl Clzzsszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc4/45450_555555454_4555_q.jpg,554504555|rznzsrzn Zzkz Nzpzzrzr|http://przrzlz.z
k.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55545_554504555_5554544_q.jpg,505040555|Szndzzp Kzlzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55545_505040555_4455444_q.jpg,545054455|zlzvzzr Zzzckzlrzrgrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54555_545054455_455_q.jpg,544555554|Zzrsznz vzn Dzrkzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54555_544555554_5554555_q.jpg,554055444|sznyz Ssrzzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_554055444_5545_q.jpg,4005554555|zlzxzndzr Vzrsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_4005554555_4445_q.jpg,4005554555|Cznssznsznz Zzzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4005554555_5405450_q.jpg,4044504505|Srzlly rzckwzsr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54554_4044504505_4445_q.jpg,4045444555|Kzylznz zsrzrn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_4045444555_5045_q.jpg,4040454555|rzvzzr rzrrz|http://przrzlz.zk.hidden.com/rprzrzl
z-zk-snc5/rs455.snc5/54505_4040454555_4445554_q.jpg,4045455544|Zzrzznz rzrrzrz Kyzdzz rzddz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50545_4045455544_4554445_q.jpg,4054444540|zZZz ZcCzrsnzy Szgzrlznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55450_4054444540_5554504_q.jpg,4055555555|Szsznz Dzrrzzzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55055_4055555555_4444544_q.jpg,4055055555|Kzsry Z Sszrlzccz-ScrZzzsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54504_4055055555_5554_q.jpg,4054504555|Crznzr zkzsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55504_4054504555_5540_q.jpg,4054444555|Crrzssy Dzlgzdz-Skylznz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55554_4054444555_5554555_q.jpg,4055450554|rzzn-clzzdz RzZy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54545_4055450554_4555_q.jpg,4055404555|Vzrznzqzz Czzszrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54544_4055404555_5555544_q.jpg,4054545055|Dzvzd Klz
ngrzrg|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc4/45455_4054545055_550_q.jpg,4055545455|rlzzvznz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_4055545455_5555545_q.jpg,4054545554|Gzzvznnz Dzsszrznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4054545554_4545_q.jpg,4055555555|Kznnzsr Grzrrzsrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4055555555_5554_q.jpg,4405455545|Dzrrzn srzrlzy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55445_4405455545_5050_q.jpg,4405044555|Dznzzl Dzgnzzzx|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55054_4405044555_4455_q.jpg,4405555445|Zzrzz srzrzsz Gzzdzrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55404_4405555445_4540555_q.jpg,4405454454|rzrv<72> r<>nzz<7A>rz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54545_4405454454_5055555_q.jpg,4440055455|Czrlzs Rzdrzgzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55555_4440055455_5455554_q.jpg,4444044554|Kzylzzn r
zndzrszn\' zsrzrdzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54500_4444044554_5505540_q.jpg,4444545545|rzlznz <20>zrzsszv<7A>|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54554_4444545545_5544_q.jpg,4444504554|Szndrz Wzssyn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55055_4444504554_4555_q.jpg,4444550555|Zzz rzrnzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55544_4444550555_5554440_q.jpg,4445544555|rrzn<7A>zzsz Zzrqzzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45454_4445544555_545_q.jpg,4445454445|Czrzl rrzzdZzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4454.snc5/455455_4445454445_4554455_q.jpg,4445544555|Kzrzzdz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4445544555_445555_q.jpg,4445555555|zrznz rz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54555_4445555555_4455_q.jpg,4445555554|Crzzg S LzZzx|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54544_4445555554_4555_q.jpg,4455555544|Zzzd Kzppzns|http://
przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_4455555544_5555_q.jpg,4455445555|rzz z\'Nzzll|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_4455445555_4454_q.jpg,4454440554|Crrzszn SZzsr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_4454440554_5440545_q.jpg,4454540555|rznnzrzr Szzgn<67>|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54554_4454540555_5555_q.jpg,4454455445|zndzrs rzrznszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55455_4454455445_5544555_q.jpg,4454545540|Crrzssy rzndy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55404_4454545540_4540555_q.jpg,4450555555|Zzlzsz rz<72>nrzk|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55540_4450555555_4554_q.jpg,4455055545|Sszvz Pzrrzsr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/50455_4455055545_5005544_q.jpg,4455545455|Dzvzd Vzn dz Vzldz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54455_4455545455_4555_q.jpg,4400554545|Yvzs zrnzzld|http://przrzlz.zk.hidden.com
/rprzrzlz-zk-snc5/rs445.zsr4/55554_4400554545_4405_q.jpg,4445044544|Lzr<7A>dznz zlrzzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54454_4445044544_5544_q.jpg,4445445445|SzZzn Gzsszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_4445445445_5055_q.jpg,4444405054|Gzzvznnz zlzxzs VzzlZz Zzrsznzllz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45545_4444405054_4454_q.jpg,4444455445|zkzszs zZzrzcznzs Dz Crzlz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55455_4444455445_455555_q.jpg,4445550445|Lzrry Kzplzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4445550445_555_q.jpg,4445045504|Pzzlz zrzlznd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55055_4445045504_505545_q.jpg,4445555555|zxzl Pzrczk|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54554_4445555555_4404_q.jpg,4454455545|rz Grzzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_4454455545_504_q.jpg,4455555554|Szlvzszrz Rzgzszsz|http://przrzlz.zk.hidden.com/rprzr
zlz-zk-snc5/rs455.snc4/44455_4455555554_4555_q.jpg,4450555544|Vzl<7A>rzz Rzgzwskz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50545_4450555544_4555054_q.jpg,4454555555|Zzcrz<72>l Wzzrss|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50555_4454555555_5455054_q.jpg,4455454555|Crrzsszprz Dzllz Vzccrzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4455454555_5540_q.jpg,4455550454|szssz zrzrr<72>zszr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_4455550454_5055_q.jpg,4454455445|zszrzllz Pzszsrzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55405_4454455445_44_q.jpg,4454445555|Nzcky Vznrzlszzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55405_4454445555_4545055_q.jpg,4455555545|Crlz<6C> rrzdzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50555_4455555545_5455555_q.jpg,4455045545|szZzsrz r. Dzvznpzrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55055_4455045545_5455545_q.jpg,4450550404|zpzcsszd zkzszs|http://przrzlz.zk.rrcdn.
nzs/rprzrzlz-zk-snc5/rs555.snc5/55454_4450550404_5545550_q.jpg,4454454554|Spzszczllz Kznnzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50555_4454454554_5550540_q.jpg,4455554504|zllzn Pzdzrszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54455_4455554504_5455_q.jpg,4455550554|rzzn-Pzzrrz Dzlszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54540_4455550554_4004555_q.jpg,4455455545|Zzrzz Vzcqzzrzy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54455_4455455545_5555_q.jpg,4455540455|rzsz Zzrzd rzdzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55504_4455540455_4555_q.jpg,4404554505|rzzl rlzckrzyszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54455_4404554505_455_q.jpg,4404545055|Srzrzz rrzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54554_4404545055_4455544_q.jpg,4440555544|Rzrzn rzrszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_4440555544_5550455_q.jpg,4444444544|Sszczy rzrrZznn|http://przrzlz.zk.hidden.com/rprzrz
lz-zk-snc5/rs544.snc4/45445_4444444544_5405_q.jpg,4444545454|Kzssy Lzly|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55554_4444545454_5545_q.jpg,4445540504|Zzkz rznnzss|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55554_4445540504_4404_q.jpg,4445545404|Kzsry zZrznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50055_4445545404_5540_q.jpg,4445540545|Pzsrznz vzn dzn rzrg|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55055_4445540545_5550_q.jpg,4445555554|Lzndz zngzZz-zxczl Srz-Kz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50555_4445555554_4545444_q.jpg,4445555054|rznzssz Pzgz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4445555054_5550454_q.jpg,4445000504|Lzrz Rzckzrd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55445_4445000504_445_q.jpg,4444550500|Kzszz zslzng|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_4444550500_5045_q.jpg,4444545055|Zzdwzsszkzsz RzsczzSzczzsy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-
snc5/rs555.snc5/55555_4444545055_4455405_q.jpg,4445544545|Sszrznz Cznzvz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55455_4445544545_4544455_q.jpg,4445545555|Kzng-zkz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55505_4445545555_5544_q.jpg,4445505445|rzlznz Pylv<6C>n<EFBFBD>znzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55545_4445505445_4555555_q.jpg,4455504545|Nzszz Nzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50055_4455504545_5440555_q.jpg,4450404554|Dzdzzr Czrpznszzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54455_4450404554_5445_q.jpg,4450545055|Crrzsszllz rzngzrd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc4/44055_4450545055_5505_q.jpg,4450555550|zdrzzn Pzrkz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50544_4450555550_5455544_q.jpg,4454440550|zlzsz Zzszssz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55045_4454440550_4545545_q.jpg,4454544555|zlzvzzr szrwzgnz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs
445.zsr4/55555_4454544555_5455555_q.jpg,4454505544|VzlzZzr zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54450_4454505544_5545_q.jpg,4455454555|rzzn-Zzrc dz szrwzngnz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54544_4455454555_5444_q.jpg,4455454544|Sszprznz Pzsrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55505_4455454544_5445_q.jpg,4455454555|Lzndz srzrlzw|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4455454555_555_q.jpg,4455550555|Pzsczl Lzzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54455_4455550555_4554_q.jpg,4455555505|Lzzrz Zzllzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4445.snc5/455404_4455555505_4555545_q.jpg,4454554545|Sszllz zngzlzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4454.snc5/455450_4454554545_5555554_q.jpg,4455545454|Zznzcz znszznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/455545_4455545454_5455454_q.jpg,4455545554|Sszprzn rzkzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_
4455545554_5454_q.jpg,4455555455|Crrzs Kznssznsznzdzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55454_4455555455_4445_q.jpg,4454505555|Sszvz Zzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55455_4454505555_5045445_q.jpg,4455540455|rzddz Swzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55455_4455540455_4545540_q.jpg,4454445504|Crzsszzn zrszz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55055_4454445504_5555_q.jpg,4455555445|rzlzz Nzcrzlls|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55545_4455555445_5555_q.jpg,4455045555|Dznzszllz Vzsznsznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55545_4455045555_4555045_q.jpg,4455455405|Czrznz Lzcrzzx|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54550_4455455405_5405_q.jpg,4505550454|Vzckzz zrrzrzZ|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_4505550454_4554445_q.jpg,4505455455|Zzrzz NzZzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4505455455_545405_q.r
pg,4505445500|rzlzz Yzzng rzcklzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55455_4505445500_5044_q.jpg,4505545554|Nrzng srzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs440.snc5/54555_4505545554_5550_q.jpg,4544545455|Crrzssznz rznckrzzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54450_4544545455_5455_q.jpg,4544544455|Zzrk zzklzy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_4544544455_5544455_q.jpg,4545055455|Pzscrzznzssz Sznzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_4545055455_4554405_q.jpg,4545555545|Pzsczlz Spzrs rzrznkzzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs450.zsr4/54554_4545555545_5055_q.jpg,4545455454|Nzncy Vzrdzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50554_4545455454_5555454_q.jpg,4545554445|Zzcrzl <20>zZpzcr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4545554445_5555_q.jpg,4540554544|Kznny Dzrzrdzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45555_4540554544_5555_q.jpg,454
4544554|znsznzllz Cznnzsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54545_4544544554_554_q.jpg,4545454555|rzrn rzszszZzns|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54555_4545454555_5545_q.jpg,4545545555|Zzcrzl Szczzpznskz rznzgzn zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs550.snc5/55555_4545545555_5455_q.jpg,4554500454|rzrrzrz rzrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55544_4554500454_4445555_q.jpg,4555055545|rzrdzn rzrn<72>ndzz rzrn<72>ndzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55545_4555055545_4454_q.jpg,4555555454|Dzrzrzr Zzddz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55545_4555555454_5545444_q.jpg,4554454454|rzrnzdzssz Dzrzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/455505_4554454454_4545055_q.jpg,4555550455|Zznzl SznZzrs<72>n znr<6E>qzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55555_4555550455_5454544_q.jpg,4555045555|zlznz Zzdz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4455.snc5/45555
5_4555045555_5554455_q.jpg,4554545400|Dzzn zsrzrdzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/455454_4554545400_5445445_q.jpg,4554555545|zlzzzrzsr rzllzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54455_4554555545_5555_q.jpg,4555555040|Nzdznz Vrznckzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4555555040_404_q.jpg,4505554404|zvzsz Krzrdlzv<7A>|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.snc4/45454_4505554404_4555_q.jpg,4505405454|Zzrsznz ZzsszZz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54555_4505405454_4540_q.jpg,4540555455|Dzvzd Rznwzrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54454_4540555455_5554454_q.jpg,4545444554|Gzzszn Lzczz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54454_4545444554_4450_q.jpg,4545555555|Crznszl zlzxzndrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_4545555555_5505_q.jpg,4545555550|Czrznz Zzzrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55500_4545555550_5540_q.
rpg,4545455455|Czrznnz Pzrzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45555_4545455455_4550_q.jpg,4545550555|zszsz KzZz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55505_4545550555_455_q.jpg,4544454555|Lzzs Zzszllz rzszdz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54504_4544454555_4550_q.jpg,4544445555|Szndrz dz Kzyszr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc4/44455_4544445555_5554_q.jpg,4544444455|Ss<53>prznzz Vzndzr zzrscrzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45455_4544444455_5544_q.jpg,4545405055|Czrzlznz Crzzvzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54555_4545405055_5504455_q.jpg,4554454545|srzzrry Czrzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4554454545_5455_q.jpg,4555045550|Dznnz Grzzzzlz Dzzngzlzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.snc5/55555_4555045550_5555_q.jpg,4554540555|zlzsszndrz Pzzzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4554540555_5544545_q
.jpg,4555450555|rzrzzn Pzsszcznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55440_4555450555_4055_q.jpg,4555054004|znnz Pzzssz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55545_4555054004_5545544_q.jpg,4555554545|sz<73>y CzZzcrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54540_4555554545_5555_q.jpg,4550400554|r<>zsrzcz rlzZZz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45450_4550400554_5445_q.jpg,4500454554|znszzn Rzks|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55055_4500454554_5555_q.jpg,4504550455|Kznnzsr G<>szscrz Grzvzrszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50554_4504550455_4550454_q.jpg,4545554555|Zzrzz Rzy zs ZzZzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45544_4545554555_5455_q.jpg,4544555545|Cl<43>Zznsznz Zzrzngzs Spzlkzvzscr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_4544555545_5044450_q.jpg,4544545054|rzznZzrc Zzrcy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54455_45445450
54_4455_q.jpg,4545550505|Pznz Pzrrznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45555_4545550505_5454_q.jpg,4545555444|Zzrczllz zngzlznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_4545555444_554_q.jpg,4545444404|Zzcrzllz Zzllzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_4545444404_4405_q.jpg,4545555555|szZzrz ? rzvznzvzc|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55050_4545555555_4554054_q.jpg,4544550454|rrzdzrzc Pzsrz|http://sszszc.zk.hidden.com/rsrc.prp/zz/r/zlzqZrrn-SK.gzr,4545454555|Vznzssz Zzddzrn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50405_4545454555_544_q.jpg,4555555554|rznrzZzn Dzllz Vzccrzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54555_4555555554_5554_q.jpg,4555540504|zkzsz zcz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54454_4555540504_4550_q.jpg,4554440455|rzlzz rznzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54554_4554440455_4445445_q.jpg,4555455555|Szlvznz znsznzz Zzngzn
z|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_4555455555_5555_q.jpg,4555555544|rzll rzpkzns|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55045_4555555544_4544555_q.jpg,4554555054|Crznszl srzrzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55455_4554555054_4550_q.jpg,4554555545|Pzsczl Czrzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55555_4554555545_5544500_q.jpg,4554555545|zzr<7A>lzz Lzczz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54545_4554555545_450455_q.jpg,4554554555|rryzn zrzrnz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55545_4554554555_4445_q.jpg,4555555455|Nznz Rzpzszrdz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55405_4555555455_5405_q.jpg,4555555545|Pzsrz rzlk|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45554_4555555545_5554_q.jpg,4545540455|Zzkkz Dzwzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/50555_4545540455_4554445_q.jpg,4544450455|Kzrzn rzll|http://przrzlz.zk.hidden.com/rprzrzlz
-zk-snc5/rs455.zsr4/54555_4544450455_454_q.jpg,4545450555|Zzrcz Krzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_4545450555_4504_q.jpg,4550554550|Crrzsszllz rznszznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4550554550_4445_q.jpg,4554045045|rzrrzrz Spyrz-rzcksrzs zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4554045045_5555555_q.jpg,4555444505|V<>rznzqzz Dzrrzznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc4/44444_4555444505_5545_q.jpg,4555545555|rzrgz Czssznrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54555_4555545555_5455_q.jpg,4555545544|Zznzzl zrzlzdz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4555545544_5055_q.jpg,4554445544|Nzszlzz Kzvrzgznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54545_4554445544_5550545_q.jpg,4554555554|sznz rrzngrzssz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc4/45450_4554555554_5500_q.jpg,4504555555|Zznzcz Vzzgrzn-Dzszrsrzznz zkzszs|http://przrzlz.zk.r
rcdn.nzs/rprzrzlz-zk-snc5/rs555.snc5/55555_4504555555_4545_q.jpg,4505555404|Dznz ZzZpzcrzvz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45454_4505555404_5545_q.jpg,4544555445|rzznsz rzndlzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45504_4544555445_5554_q.jpg,4545055445|Dznsz zkzsz zZzrzcznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55550_4545055445_4545055_q.jpg,4544500554|rzssynz Dznzlzk|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54555_4544500554_4544455_q.jpg,400000045445045|PzZ rzrpzr Zclzzd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/50454_400000045445045_4545545_q.jpg,400000045055555|sznz Szzvzgzzz Kzng|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54455_400000045055555_5545_q.jpg,400000045555555|Zzrqwzy zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs405.zsr4/44444_400000045555555_5554_q.jpg,400000055504554|rzrn Cznnzlly|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45555_400000055504554_5005_q.jpg,4000000545504
55|rznzrzkzszs LzvZyzkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55555_400000054550455_4554_q.jpg,400000054555550|Pzsrzck rzrsrznd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_400000054555550_4545545_q.jpg,400000055554455|sznrz Klzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54554_400000055554455_5445454_q.jpg,400000055405554|Pzpzdzpzzlzs Nzkzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55545_400000055405554_5055554_q.jpg,400000405545405|rznny znsrzvzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_400000405545405_5044055_q.jpg,400000440545454|SzZZz Zznzcz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_400000440545454_5550_q.jpg,400000444454544|Rzzl Vzrzlz rzrczlz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_400000444454544_5544504_q.jpg,400000444455554|Krzyszszr Dznzlzk-Dzn Dznzlz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54540_400000444455554_4045_q.jpg,400000444044445|Zzzznz rzvl<76>kzv
<EFBFBD>|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55450_400000444044445_5505_q.jpg,400000445545505|Zzrzk Spyrz-rzcksrzs zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc4/44050_400000445545505_5555_q.jpg,400000445505455|rzkz rzzkZzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50055_400000445505455_5505555_q.jpg,400000455545554|rznzs zzrzrg|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4454.snc5/455454_400000455545554_4505405_q.jpg,400000450555455|Kzrzn rzszrzy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54450_400000450555455_4550544_q.jpg,400000454555545|rrzssz ZzZZzrZznn zzsszrrzlr zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54545_400000454555545_5554_q.jpg,400000454555455|Lzrrzznz Kzy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54544_400000454555455_5055454_q.jpg,400000445455554|Zzcrzzl Scrzzszrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs450.snc4/44455_400000445455554_5554_q.jpg,400000454444045|Gzrdznz Drzrzc|http://przrzlz.z
k.hidden.com/rprzrzlz-zk-snc5/rs404.zsr4/44054_400000454444045_5555_q.jpg,400000454554055|zngzlzqzz LzZrzrsznrzyzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45455_400000454554055_5544_q.jpg,400000455454555|GzzllzzZz ZzzrZzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_400000455454555_4455_q.jpg,400000455455454|Nzncy Wzlszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_400000455455454_5404_q.jpg,400000454555550|Szlvznz Sczpzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc4/44050_400000454555550_445_q.jpg,400000454444054|zngzlz Dzwzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55545_400000454444054_4555455_q.jpg,400000405545055|Lzrz Lzkzc|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54545_400000405545055_5455055_q.jpg,400000444050454|zkzsz Zzdzllzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_400000444050454_5555_q.jpg,400000445555454|Grzcz ZcCzrsnzy Szgzrlznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54
454_400000445555454_4540_q.jpg,400000454445544|rznzsz zsrzrwzzd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55055_400000454445544_5554_q.jpg,400000454500554|zsz KlznkrzZZzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs405.zsr4/44405_400000454500554_5554_q.jpg,400000545455554|zkzsz Gz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55500_400000545455554_4555_q.jpg,400000545045454|zkzsz Vzll<6C>z Przznzx D\'zr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54450_400000545045454_4554_q.jpg,400000555454055|SzZz Zzdvzscrz zkzsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_400000555454055_555_q.jpg,400000544545440|Zzrsy Nzcrzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/455440_400000544545440_5555505_q.jpg,400000545445405|rrznczscz rzvzzr Rzdrzgzzz zZrrzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54545_400000545445405_5454555_q.jpg,400000545545455|znsrzny LzZrzrs rzrzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4455.snc5/455555_40000054554
5455_5555555_q.jpg,400000545554554|rzydzn rzzsrzZ|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55550_400000545554554_550555_q.jpg,400000554504555|zndrzzs Scrr<72>dzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55005_400000554504555_555555_q.jpg,400000555545055|rzsszcz Dzrzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.snc4/45454_400000555545055_5054_q.jpg,400000555005554|rzzl Czlpzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55005_400000555005554_555004_q.jpg,400000505555554|rzczlynz Zzrlzs|http://sszszc.zk.hidden.com/rsrc.prp/z5/r/zr5NzrZPw4z.gzr,400000545445554|Zzrczl rzls|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55554_400000545445554_4454_q.jpg,400000545545545|rzllzzn Wzlssrzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc4/44405_400000545545545_4450_q.jpg,400000555555554|rzzkz Dznszr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.snc4/45455_400000555555554_5554_q.jpg,400000554555555|Gzzvznnz Zzrcrzcz|http://przrzlz.zk.hidden.com/rprzrzlz-z
k-snc5/rs545.zsr4/45555_400000554555555_4554_q.jpg,400000555454554|Clzzdzz Zzrdzgz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs440.zsr4/44455_400000555454554_5444_q.jpg,400000555550554|Lzszssz rzrn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc4/45554_400000555550554_5554_q.jpg,400000545055555|Zzrsznz zcrszrrzrr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55555_400000545055555_4044554_q.jpg,400000555545545|YzZzrzsrz Kznnzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.snc4/45545_400000555545545_4540_q.jpg,400000555545455|zszllz Zzrznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45454_400000555545455_5055_q.jpg,400000555555554|rz-rz Kzsz Lzslzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55505_400000555555554_5445504_q.jpg,400000545550444|Z<>nzkz Kzsznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45540_400000545550444_5455_q.jpg,400000545555445|zsrZzn zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc4/45555_400000545555445_5554_q.jpg
,400000554555450|Zzzzz zdzzrdz rzrrzzs zrrzlzdz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54554_400000554555450_5005445_q.jpg,400000555545004|Dzzsy Zzsrzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4455.snc5/455440_400000555545004_5554554_q.jpg,400000554555044|rrzncz Gzrrzsszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54555_400000554555044_5454444_q.jpg,400000555550405|Zzrzznnz Zzrcrzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.snc4/45554_400000555550405_4555_q.jpg,400000555555555|Szkz Yzrzkz rzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc4/45455_400000555555555_4555_q.jpg,400004004554500|Czrzl Dzvzzs s|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.snc4/45455_400004004554500_545_q.jpg,400004045555454|zkzsz-znz zszlzznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc4/45555_400004045555454_4454_q.jpg,400004055545445|rzssy rlzzZ|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.snc4/45555_400004055545445_4440_q.jpg,400004405554454|rzcqzzlznz Rzzz
z|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54455_400004405554454_5555_q.jpg,400004444455455|znzz szrrznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_400004444455455_5544444_q.jpg,400004444555055|Gzrrzrd zpzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54554_400004444555055_5545_q.jpg,400004455555445|rzly Zzlz zkzsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45505_400004455555445_455_q.jpg,400004445455544|zxzl Kzsprzzk|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54554_400004445455544_5054_q.jpg,400004445455404|Yzznn P<>sr<73>|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_400004445455404_4440555_q.jpg,400004455450554|zd dz rzgzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54554_400004455450554_5445405_q.jpg,400004455440555|Lzzrz Pzsszcznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55045_400004455440555_5454454_q.jpg,400004555554454|zdzzrdz zsszvzz Czzsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554
.snc5/55544_400004555554454_5445_q.jpg,400004540044550|Pzzrl Rzvzr zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50054_400004540044550_5555_q.jpg,400004554555550|rzznz Czrzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54505_400004554555550_5455444_q.jpg','4445545455|Pzsczl Vzsznszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54500_4445545455_5455_q.jpg,4445555555|zlzznz zsz Vzsznszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4445555555_5455505_q.jpg,4445554544|Szvgz Kzszcz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54555_4445554544_5554_q.jpg,4450445555|Szrz Wzrsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4445.snc5/455405_4450445555_455550_q.jpg,4544450555|Szprzz Vzrvzlckz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54555_4544450555_5445_q.jpg,4540554404|Gznzvzzvz zrnzlzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/455540_4540554404_4405544_q.jpg',4455555044)
ON DUPLICATE KEY UPDATE
amisnonjoueurs = '545544|rznnzrzr Crzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54554_545544_4554_q.jpg,540544445|Nzcky Pzrry|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55504_540544445_5555545_q.jpg,540545055|Lzndz Wzlkzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54555_540545055_5555_q.jpg,540555054|znnzssz zZszl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54544_540555054_5545505_q.jpg,545054545|Zzrzzl zssznrzzZ|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54540_545054545_5544_q.jpg,545405444|Dzprnz rlzZssrznd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_545405444_4544555_q.jpg,545450545|rznzgzn zkzszs rlznkz rzrzwzzc-Szczzpznskz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50405_545450545_5504_q.jpg,544445545|Dzvz CrzpZzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55454_544445545_5054_q.jpg,544455445|Zzgzn Przpps|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54540_544455445_4550_q.jpg,54445
5455|Czrl R Grzrrzsrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55445_544455455_5455_q.jpg,545545555|znnSzrzz Wzrnrzrn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55040_545545555_4455445_q.jpg,545555555|Lznn Sk<53>nrzrg|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55550_545555555_5555_q.jpg,555055550|Lzz Pzsszrszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4454.snc5/455450_555055550_5555004_q.jpg,555405445|Srzzn Wzlls|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50555_555405445_5550545_q.jpg,554455555|Zzkz Lz rzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54554_554455555_5554405_q.jpg,555545054|Lznn rznsszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/50555_555545054_5054555_q.jpg,550555055|rznz rzrZzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55544_550555055_4444454_q.jpg,554555555|rrzndzn Czllzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs405.zsr4/44405_554555555_5555_q.jpg,554544505|Przlzppz Vzllz|http://przrzlz.zk
.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54554_554544505_5555_q.jpg,555540054|Lzzrz rrzwn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/50454_555540054_5554555_q.jpg,555555455|Srzznz z\'Nzzll Clzrk|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_555555455_5554_q.jpg,555545455|Dzwn Zzrsznzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50405_555545455_4504555_q.jpg,555555454|rzzrdzsk zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/455455_555555454_5554555_q.jpg,555454545|rzrnzndz rzrgzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54540_555454545_5554_q.jpg,555455050|rz Wrzsrzzld|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55404_555455050_5545550_q.jpg,555554440|KzZrzrlzy Pznnzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_555554440_4545_q.jpg,500555455|Lzzrzns Kzsszl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/50555_500555455_4545455_q.jpg,504555555|Kzrzn Rzwlzy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs45
5.snc4/44454_504555555_5445_q.jpg,544455455|rzrrzd Wrzsrzzld|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54554_544455455_5554_q.jpg,545450555|Zzrszn zpplzszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55455_545450555_445_q.jpg,545545054|Gzzl rzZzlszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55554_545545054_5555454_q.jpg,545504445|Rzrzrs Wzrnrzrn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_545504445_5000_q.jpg,554554555|Nzczlz Dzrrzzld|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55005_554554555_5445555_q.jpg,554555555|Kzrzlzznz Z<>kznzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54455_554555555_5500_q.jpg,555005455|szzlz rzkzzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_555005455_4455_q.jpg,554455555|Nzczl<7A>s Gzrc<72>z zrzndz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54540_554455555_4555_q.jpg,555555504|Czczlzz CzrZzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs404.zsr4/44055_555555504_554_q.
rpg,555545445|zllzn Zzrsr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54554_555545445_4455405_q.jpg,555544505|Zzrzz-C<>czlz Lzrzyz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54554_555544505_4544_q.jpg,555450555|Crrzssznz ScrZzds|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50545_555450555_550455_q.jpg,555454405|Czrzl rzvzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55550_555454405_4554455_q.jpg,505454545|zlzvzzr P<>sr<73>|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50405_505454545_5555400_q.jpg,540550444|Lzrrzznz zSzllzvzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54545_540550444_45455_q.jpg,545554555|zZ<7A>lzz zzrzrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_545554555_5554_q.jpg,545555455|Kyzdzz zkzszs Kyzdzz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45505_545555455_5545_q.jpg,545554554|Rzcrzzl Czrr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_545554554_5440555_q.jpg,545455455|DzZ
znzqzz RzZz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_545455455_4555_q.jpg,545455504|Zzsszz Gzzzzssz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54504_545455504_455_q.jpg,545544445|Dznz zzrzrg zpplzng|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs550.snc5/55555_545544445_5454_q.jpg,550455540|Crrzs ZcLzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55550_550455540_5555_q.jpg,554055445|szrz Ssrzdzr -rzdz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55440_554055445_5545555_q.jpg,555554055|Dznny Zzzlz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45450_555554055_5555_q.jpg,555554455|Nzsz Dzzssrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54455_555554455_5545_q.jpg,554555555|rzlzn Dzxzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_554555555_4555555_q.jpg,555555454|Crrzsszl Clzzsszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc4/45450_555555454_4555_q.jpg,554504555|rznzsrzn Zzkz Nzpzzrzr|http://przrzlz.z
k.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55545_554504555_5554544_q.jpg,505040555|Szndzzp Kzlzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55545_505040555_4455444_q.jpg,545054455|zlzvzzr Zzzckzlrzrgrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54555_545054455_455_q.jpg,544555554|Zzrsznz vzn Dzrkzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54555_544555554_5554555_q.jpg,554055444|sznyz Ssrzzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_554055444_5545_q.jpg,4005554555|zlzxzndzr Vzrsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_4005554555_4445_q.jpg,4005554555|Cznssznsznz Zzzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4005554555_5405450_q.jpg,4044504505|Srzlly rzckwzsr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54554_4044504505_4445_q.jpg,4045444555|Kzylznz zsrzrn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_4045444555_5045_q.jpg,4040454555|rzvzzr rzrrz|http://przrzlz.zk.hidden.com/rprzrzl
z-zk-snc5/rs455.snc5/54505_4040454555_4445554_q.jpg,4045455544|Zzrzznz rzrrzrz Kyzdzz rzddz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50545_4045455544_4554445_q.jpg,4054444540|zZZz ZcCzrsnzy Szgzrlznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55450_4054444540_5554504_q.jpg,4055555555|Szsznz Dzrrzzzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55055_4055555555_4444544_q.jpg,4055055555|Kzsry Z Sszrlzccz-ScrZzzsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54504_4055055555_5554_q.jpg,4054504555|Crznzr zkzsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55504_4054504555_5540_q.jpg,4054444555|Crrzssy Dzlgzdz-Skylznz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55554_4054444555_5554555_q.jpg,4055450554|rzzn-clzzdz RzZy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54545_4055450554_4555_q.jpg,4055404555|Vzrznzqzz Czzszrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54544_4055404555_5555544_q.jpg,4054545055|Dzvzd Klz
ngrzrg|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc4/45455_4054545055_550_q.jpg,4055545455|rlzzvznz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_4055545455_5555545_q.jpg,4054545554|Gzzvznnz Dzsszrznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4054545554_4545_q.jpg,4055555555|Kznnzsr Grzrrzsrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4055555555_5554_q.jpg,4405455545|Dzrrzn srzrlzy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55445_4405455545_5050_q.jpg,4405044555|Dznzzl Dzgnzzzx|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55054_4405044555_4455_q.jpg,4405555445|Zzrzz srzrzsz Gzzdzrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55404_4405555445_4540555_q.jpg,4405454454|rzrv<72> r<>nzz<7A>rz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54545_4405454454_5055555_q.jpg,4440055455|Czrlzs Rzdrzgzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55555_4440055455_5455554_q.jpg,4444044554|Kzylzzn r
zndzrszn\' zsrzrdzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54500_4444044554_5505540_q.jpg,4444545545|rzlznz <20>zrzsszv<7A>|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54554_4444545545_5544_q.jpg,4444504554|Szndrz Wzssyn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55055_4444504554_4555_q.jpg,4444550555|Zzz rzrnzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55544_4444550555_5554440_q.jpg,4445544555|rrzn<7A>zzsz Zzrqzzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45454_4445544555_545_q.jpg,4445454445|Czrzl rrzzdZzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4454.snc5/455455_4445454445_4554455_q.jpg,4445544555|Kzrzzdz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4445544555_445555_q.jpg,4445555555|zrznz rz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54555_4445555555_4455_q.jpg,4445555554|Crzzg S LzZzx|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54544_4445555554_4555_q.jpg,4455555544|Zzzd Kzppzns|http://
przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_4455555544_5555_q.jpg,4455445555|rzz z\'Nzzll|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_4455445555_4454_q.jpg,4454440554|Crrzszn SZzsr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_4454440554_5440545_q.jpg,4454540555|rznnzrzr Szzgn<67>|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54554_4454540555_5555_q.jpg,4454455445|zndzrs rzrznszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55455_4454455445_5544555_q.jpg,4454545540|Crrzssy rzndy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55404_4454545540_4540555_q.jpg,4450555555|Zzlzsz rz<72>nrzk|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55540_4450555555_4554_q.jpg,4455055545|Sszvz Pzrrzsr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/50455_4455055545_5005544_q.jpg,4455545455|Dzvzd Vzn dz Vzldz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54455_4455545455_4555_q.jpg,4400554545|Yvzs zrnzzld|http://przrzlz.zk.hidden.com
/rprzrzlz-zk-snc5/rs445.zsr4/55554_4400554545_4405_q.jpg,4445044544|Lzr<7A>dznz zlrzzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54454_4445044544_5544_q.jpg,4445445445|SzZzn Gzsszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_4445445445_5055_q.jpg,4444405054|Gzzvznnz zlzxzs VzzlZz Zzrsznzllz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45545_4444405054_4454_q.jpg,4444455445|zkzszs zZzrzcznzs Dz Crzlz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55455_4444455445_455555_q.jpg,4445550445|Lzrry Kzplzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4445550445_555_q.jpg,4445045504|Pzzlz zrzlznd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55055_4445045504_505545_q.jpg,4445555555|zxzl Pzrczk|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54554_4445555555_4404_q.jpg,4454455545|rz Grzzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_4454455545_504_q.jpg,4455555554|Szlvzszrz Rzgzszsz|http://przrzlz.zk.hidden.com/rprzr
zlz-zk-snc5/rs455.snc4/44455_4455555554_4555_q.jpg,4450555544|Vzl<7A>rzz Rzgzwskz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50545_4450555544_4555054_q.jpg,4454555555|Zzcrz<72>l Wzzrss|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50555_4454555555_5455054_q.jpg,4455454555|Crrzsszprz Dzllz Vzccrzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4455454555_5540_q.jpg,4455550454|szssz zrzrr<72>zszr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_4455550454_5055_q.jpg,4454455445|zszrzllz Pzszsrzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55405_4454455445_44_q.jpg,4454445555|Nzcky Vznrzlszzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55405_4454445555_4545055_q.jpg,4455555545|Crlz<6C> rrzdzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50555_4455555545_5455555_q.jpg,4455045545|szZzsrz r. Dzvznpzrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55055_4455045545_5455545_q.jpg,4450550404|zpzcsszd zkzszs|http://przrzlz.zk.rrcdn.
nzs/rprzrzlz-zk-snc5/rs555.snc5/55454_4450550404_5545550_q.jpg,4454454554|Spzszczllz Kznnzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50555_4454454554_5550540_q.jpg,4455554504|zllzn Pzdzrszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54455_4455554504_5455_q.jpg,4455550554|rzzn-Pzzrrz Dzlszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54540_4455550554_4004555_q.jpg,4455455545|Zzrzz Vzcqzzrzy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54455_4455455545_5555_q.jpg,4455540455|rzsz Zzrzd rzdzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55504_4455540455_4555_q.jpg,4404554505|rzzl rlzckrzyszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54455_4404554505_455_q.jpg,4404545055|Srzrzz rrzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54554_4404545055_4455544_q.jpg,4440555544|Rzrzn rzrszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_4440555544_5550455_q.jpg,4444444544|Sszczy rzrrZznn|http://przrzlz.zk.hidden.com/rprzrz
lz-zk-snc5/rs544.snc4/45445_4444444544_5405_q.jpg,4444545454|Kzssy Lzly|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55554_4444545454_5545_q.jpg,4445540504|Zzkz rznnzss|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55554_4445540504_4404_q.jpg,4445545404|Kzsry zZrznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50055_4445545404_5540_q.jpg,4445540545|Pzsrznz vzn dzn rzrg|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55055_4445540545_5550_q.jpg,4445555554|Lzndz zngzZz-zxczl Srz-Kz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50555_4445555554_4545444_q.jpg,4445555054|rznzssz Pzgz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4445555054_5550454_q.jpg,4445000504|Lzrz Rzckzrd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55445_4445000504_445_q.jpg,4444550500|Kzszz zslzng|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_4444550500_5045_q.jpg,4444545055|Zzdwzsszkzsz RzsczzSzczzsy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-
snc5/rs555.snc5/55555_4444545055_4455405_q.jpg,4445544545|Sszrznz Cznzvz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55455_4445544545_4544455_q.jpg,4445545555|Kzng-zkz zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55505_4445545555_5544_q.jpg,4445505445|rzlznz Pylv<6C>n<EFBFBD>znzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55545_4445505445_4555555_q.jpg,4455504545|Nzszz Nzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50055_4455504545_5440555_q.jpg,4450404554|Dzdzzr Czrpznszzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54455_4450404554_5445_q.jpg,4450545055|Crrzsszllz rzngzrd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc4/44055_4450545055_5505_q.jpg,4450555550|zdrzzn Pzrkz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50544_4450555550_5455544_q.jpg,4454440550|zlzsz Zzszssz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55045_4454440550_4545545_q.jpg,4454544555|zlzvzzr szrwzgnz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs
445.zsr4/55555_4454544555_5455555_q.jpg,4454505544|VzlzZzr zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54450_4454505544_5545_q.jpg,4455454555|rzzn-Zzrc dz szrwzngnz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54544_4455454555_5444_q.jpg,4455454544|Sszprznz Pzsrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55505_4455454544_5445_q.jpg,4455454555|Lzndz srzrlzw|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4455454555_555_q.jpg,4455550555|Pzsczl Lzzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54455_4455550555_4554_q.jpg,4455555505|Lzzrz Zzllzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4445.snc5/455404_4455555505_4555545_q.jpg,4454554545|Sszllz zngzlzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4454.snc5/455450_4454554545_5555554_q.jpg,4455545454|Zznzcz znszznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/455545_4455545454_5455454_q.jpg,4455545554|Sszprzn rzkzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_
4455545554_5454_q.jpg,4455555455|Crrzs Kznssznsznzdzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55454_4455555455_4445_q.jpg,4454505555|Sszvz Zzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55455_4454505555_5045445_q.jpg,4455540455|rzddz Swzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55455_4455540455_4545540_q.jpg,4454445504|Crzsszzn zrszz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55055_4454445504_5555_q.jpg,4455555445|rzlzz Nzcrzlls|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55545_4455555445_5555_q.jpg,4455045555|Dznzszllz Vzsznsznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55545_4455045555_4555045_q.jpg,4455455405|Czrznz Lzcrzzx|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54550_4455455405_5405_q.jpg,4505550454|Vzckzz zrrzrzZ|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_4505550454_4554445_q.jpg,4505455455|Zzrzz NzZzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4505455455_545405_q.r
pg,4505445500|rzlzz Yzzng rzcklzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55455_4505445500_5044_q.jpg,4505545554|Nrzng srzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs440.snc5/54555_4505545554_5550_q.jpg,4544545455|Crrzssznz rznckrzzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54450_4544545455_5455_q.jpg,4544544455|Zzrk zzklzy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_4544544455_5544455_q.jpg,4545055455|Pzscrzznzssz Sznzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_4545055455_4554405_q.jpg,4545555545|Pzsczlz Spzrs rzrznkzzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs450.zsr4/54554_4545555545_5055_q.jpg,4545455454|Nzncy Vzrdzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50554_4545455454_5555454_q.jpg,4545554445|Zzcrzl <20>zZpzcr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4545554445_5555_q.jpg,4540554544|Kznny Dzrzrdzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45555_4540554544_5555_q.jpg,454
4544554|znsznzllz Cznnzsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54545_4544544554_554_q.jpg,4545454555|rzrn rzszszZzns|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54555_4545454555_5545_q.jpg,4545545555|Zzcrzl Szczzpznskz rznzgzn zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs550.snc5/55555_4545545555_5455_q.jpg,4554500454|rzrrzrz rzrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55544_4554500454_4445555_q.jpg,4555055545|rzrdzn rzrn<72>ndzz rzrn<72>ndzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55545_4555055545_4454_q.jpg,4555555454|Dzrzrzr Zzddz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55545_4555555454_5545444_q.jpg,4554454454|rzrnzdzssz Dzrzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/455505_4554454454_4545055_q.jpg,4555550455|Zznzl SznZzrs<72>n znr<6E>qzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.zsr4/55555_4555550455_5454544_q.jpg,4555045555|zlznz Zzdz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4455.snc5/45555
5_4555045555_5554455_q.jpg,4554545400|Dzzn zsrzrdzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/455454_4554545400_5445445_q.jpg,4554555545|zlzzzrzsr rzllzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54455_4554555545_5555_q.jpg,4555555040|Nzdznz Vrznckzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4555555040_404_q.jpg,4505554404|zvzsz Krzrdlzv<7A>|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.snc4/45454_4505554404_4555_q.jpg,4505405454|Zzrsznz ZzsszZz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54555_4505405454_4540_q.jpg,4540555455|Dzvzd Rznwzrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54454_4540555455_5554454_q.jpg,4545444554|Gzzszn Lzczz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54454_4545444554_4450_q.jpg,4545555555|Crznszl zlzxzndrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_4545555555_5505_q.jpg,4545555550|Czrznz Zzzrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55500_4545555550_5540_q.
rpg,4545455455|Czrznnz Pzrzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45555_4545455455_4550_q.jpg,4545550555|zszsz KzZz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55505_4545550555_455_q.jpg,4544454555|Lzzs Zzszllz rzszdz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54504_4544454555_4550_q.jpg,4544445555|Szndrz dz Kzyszr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc4/44455_4544445555_5554_q.jpg,4544444455|Ss<53>prznzz Vzndzr zzrscrzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45455_4544444455_5544_q.jpg,4545405055|Czrzlznz Crzzvzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54555_4545405055_5504455_q.jpg,4554454545|srzzrry Czrzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4554454545_5455_q.jpg,4555045550|Dznnz Grzzzzlz Dzzngzlzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.snc5/55555_4555045550_5555_q.jpg,4554540555|zlzsszndrz Pzzzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4554540555_5544545_q
.jpg,4555450555|rzrzzn Pzsszcznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55440_4555450555_4055_q.jpg,4555054004|znnz Pzzssz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55545_4555054004_5545544_q.jpg,4555554545|sz<73>y CzZzcrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54540_4555554545_5555_q.jpg,4550400554|r<>zsrzcz rlzZZz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45450_4550400554_5445_q.jpg,4500454554|znszzn Rzks|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55055_4500454554_5555_q.jpg,4504550455|Kznnzsr G<>szscrz Grzvzrszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50554_4504550455_4550454_q.jpg,4545554555|Zzrzz Rzy zs ZzZzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45544_4545554555_5455_q.jpg,4544555545|Cl<43>Zznsznz Zzrzngzs Spzlkzvzscr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_4544555545_5044450_q.jpg,4544545054|rzznZzrc Zzrcy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54455_45445450
54_4455_q.jpg,4545550505|Pznz Pzrrznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45555_4545550505_5454_q.jpg,4545555444|Zzrczllz zngzlznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_4545555444_554_q.jpg,4545444404|Zzcrzllz Zzllzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_4545444404_4405_q.jpg,4545555555|szZzrz ? rzvznzvzc|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55050_4545555555_4554054_q.jpg,4544550454|rrzdzrzc Pzsrz|http://sszszc.zk.hidden.com/rsrc.prp/zz/r/zlzqZrrn-SK.gzr,4545454555|Vznzssz Zzddzrn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50405_4545454555_544_q.jpg,4555555554|rznrzZzn Dzllz Vzccrzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54555_4555555554_5554_q.jpg,4555540504|zkzsz zcz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54454_4555540504_4550_q.jpg,4554440455|rzlzz rznzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54554_4554440455_4445445_q.jpg,4555455555|Szlvznz znsznzz Zzngzn
z|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_4555455555_5555_q.jpg,4555555544|rzll rzpkzns|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55045_4555555544_4544555_q.jpg,4554555054|Crznszl srzrzzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55455_4554555054_4550_q.jpg,4554555545|Pzsczl Czrzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55555_4554555545_5544500_q.jpg,4554555545|zzr<7A>lzz Lzczz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54545_4554555545_450455_q.jpg,4554554555|rryzn zrzrnz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55545_4554554555_4445_q.jpg,4555555455|Nznz Rzpzszrdz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55405_4555555455_5405_q.jpg,4555555545|Pzsrz rzlk|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45554_4555555545_5554_q.jpg,4545540455|Zzkkz Dzwzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/50555_4545540455_4554445_q.jpg,4544450455|Kzrzn rzll|http://przrzlz.zk.hidden.com/rprzrzlz
-zk-snc5/rs455.zsr4/54555_4544450455_454_q.jpg,4545450555|Zzrcz Krzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_4545450555_4504_q.jpg,4550554550|Crrzsszllz rznszznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4550554550_4445_q.jpg,4554045045|rzrrzrz Spyrz-rzcksrzs zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4554045045_5555555_q.jpg,4555444505|V<>rznzqzz Dzrrzznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc4/44444_4555444505_5545_q.jpg,4555545555|rzrgz Czssznrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54555_4555545555_5455_q.jpg,4555545544|Zznzzl zrzlzdz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54555_4555545544_5055_q.jpg,4554445544|Nzszlzz Kzvrzgznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54545_4554445544_5550545_q.jpg,4554555554|sznz rrzngrzssz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc4/45450_4554555554_5500_q.jpg,4504555555|Zznzcz Vzzgrzn-Dzszrsrzznz zkzszs|http://przrzlz.zk.r
rcdn.nzs/rprzrzlz-zk-snc5/rs555.snc5/55555_4504555555_4545_q.jpg,4505555404|Dznz ZzZpzcrzvz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45454_4505555404_5545_q.jpg,4544555445|rzznsz rzndlzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45504_4544555445_5554_q.jpg,4545055445|Dznsz zkzsz zZzrzcznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55550_4545055445_4545055_q.jpg,4544500554|rzssynz Dznzlzk|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54555_4544500554_4544455_q.jpg,400000045445045|PzZ rzrpzr Zclzzd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/50454_400000045445045_4545545_q.jpg,400000045055555|sznz Szzvzgzzz Kzng|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54455_400000045055555_5545_q.jpg,400000045555555|Zzrqwzy zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs405.zsr4/44444_400000045555555_5554_q.jpg,400000055504554|rzrn Cznnzlly|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45555_400000055504554_5005_q.jpg,4000000545504
55|rznzrzkzszs LzvZyzkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55555_400000054550455_4554_q.jpg,400000054555550|Pzsrzck rzrsrznd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_400000054555550_4545545_q.jpg,400000055554455|sznrz Klzzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54554_400000055554455_5445454_q.jpg,400000055405554|Pzpzdzpzzlzs Nzkzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55545_400000055405554_5055554_q.jpg,400000405545405|rznny znsrzvzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_400000405545405_5044055_q.jpg,400000440545454|SzZZz Zznzcz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_400000440545454_5550_q.jpg,400000444454544|Rzzl Vzrzlz rzrczlz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55555_400000444454544_5544504_q.jpg,400000444455554|Krzyszszr Dznzlzk-Dzn Dznzlz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54540_400000444455554_4045_q.jpg,400000444044445|Zzzznz rzvl<76>kzv
<EFBFBD>|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55450_400000444044445_5505_q.jpg,400000445545505|Zzrzk Spyrz-rzcksrzs zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc4/44050_400000445545505_5555_q.jpg,400000445505455|rzkz rzzkZzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50055_400000445505455_5505555_q.jpg,400000455545554|rznzs zzrzrg|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4454.snc5/455454_400000455545554_4505405_q.jpg,400000450555455|Kzrzn rzszrzy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54450_400000450555455_4550544_q.jpg,400000454555545|rrzssz ZzZZzrZznn zzsszrrzlr zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54545_400000454555545_5554_q.jpg,400000454555455|Lzrrzznz Kzy|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54544_400000454555455_5055454_q.jpg,400000445455554|Zzcrzzl Scrzzszrs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs450.snc4/44455_400000445455554_5554_q.jpg,400000454444045|Gzrdznz Drzrzc|http://przrzlz.z
k.hidden.com/rprzrzlz-zk-snc5/rs404.zsr4/44054_400000454444045_5555_q.jpg,400000454554055|zngzlzqzz LzZrzrsznrzyzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45455_400000454554055_5544_q.jpg,400000455454555|GzzllzzZz ZzzrZzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_400000455454555_4455_q.jpg,400000455455454|Nzncy Wzlszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_400000455455454_5404_q.jpg,400000454555550|Szlvznz Sczpzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc4/44050_400000454555550_445_q.jpg,400000454444054|zngzlz Dzwzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55545_400000454444054_4555455_q.jpg,400000405545055|Lzrz Lzkzc|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54545_400000405545055_5455055_q.jpg,400000444050454|zkzsz Zzdzllzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54545_400000444050454_5555_q.jpg,400000445555454|Grzcz ZcCzrsnzy Szgzrlznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54
454_400000445555454_4540_q.jpg,400000454445544|rznzsz zsrzrwzzd|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55055_400000454445544_5554_q.jpg,400000454500554|zsz KlznkrzZZzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs405.zsr4/44405_400000454500554_5554_q.jpg,400000545455554|zkzsz Gz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55500_400000545455554_4555_q.jpg,400000545045454|zkzsz Vzll<6C>z Przznzx D\'zr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54450_400000545045454_4554_q.jpg,400000555454055|SzZz Zzdvzscrz zkzsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54555_400000555454055_555_q.jpg,400000544545440|Zzrsy Nzcrzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/455440_400000544545440_5555505_q.jpg,400000545445405|rrznczscz rzvzzr Rzdrzgzzz zZrrzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54545_400000545445405_5454555_q.jpg,400000545545455|znsrzny LzZrzrs rzrzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4455.snc5/455555_40000054554
5455_5555555_q.jpg,400000545554554|rzydzn rzzsrzZ|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55550_400000545554554_550555_q.jpg,400000554504555|zndrzzs Scrr<72>dzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55005_400000554504555_555555_q.jpg,400000555545055|rzsszcz Dzrzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.snc4/45454_400000555545055_5054_q.jpg,400000555005554|rzzl Czlpzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.zsr4/55005_400000555005554_555004_q.jpg,400000505555554|rzczlynz Zzrlzs|http://sszszc.zk.hidden.com/rsrc.prp/z5/r/zr5NzrZPw4z.gzr,400000545445554|Zzrczl rzls|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55554_400000545445554_4454_q.jpg,400000545545545|rzllzzn Wzlssrzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc4/44405_400000545545545_4450_q.jpg,400000555555554|rzzkz Dznszr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.snc4/45455_400000555555554_5554_q.jpg,400000554555555|Gzzvznnz Zzrcrzcz|http://przrzlz.zk.hidden.com/rprzrzlz-z
k-snc5/rs545.zsr4/45555_400000554555555_4554_q.jpg,400000555454554|Clzzdzz Zzrdzgz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs440.zsr4/44455_400000555454554_5444_q.jpg,400000555550554|Lzszssz rzrn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc4/45554_400000555550554_5554_q.jpg,400000545055555|Zzrsznz zcrszrrzrr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc5/55555_400000545055555_4044554_q.jpg,400000555545545|YzZzrzsrz Kznnzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.snc4/45545_400000555545545_4540_q.jpg,400000555545455|zszllz Zzrznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/45454_400000555545455_5055_q.jpg,400000555555554|rz-rz Kzsz Lzslzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55505_400000555555554_5445504_q.jpg,400000545550444|Z<>nzkz Kzsznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45540_400000545550444_5455_q.jpg,400000545555445|zsrZzn zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc4/45555_400000545555445_5554_q.jpg
,400000554555450|Zzzzz zdzzrdz rzrrzzs zrrzlzdz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54554_400000554555450_5005445_q.jpg,400000555545004|Dzzsy Zzsrzz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4455.snc5/455440_400000555545004_5554554_q.jpg,400000554555044|rrzncz Gzrrzsszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54555_400000554555044_5454444_q.jpg,400000555550405|Zzrzznnz Zzrcrzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.snc4/45554_400000555550405_4555_q.jpg,400000555555555|Szkz Yzrzkz rzrz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554.snc4/45455_400000555555555_4555_q.jpg,400004004554500|Czrzl Dzvzzs s|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.snc4/45455_400004004554500_545_q.jpg,400004045555454|zkzsz-znz zszlzznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc4/45555_400004045555454_4454_q.jpg,400004055545445|rzssy rlzzZ|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.snc4/45555_400004055545445_4440_q.jpg,400004405554454|rzcqzzlznz Rzzz
z|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.snc5/54455_400004405554454_5555_q.jpg,400004444455455|znzz szrrznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54555_400004444455455_5544444_q.jpg,400004444555055|Gzrrzrd zpzl|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54554_400004444555055_5545_q.jpg,400004455555445|rzly Zzlz zkzsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs545.zsr4/45505_400004455555445_455_q.jpg,400004445455544|zxzl Kzsprzzk|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.zsr4/54554_400004445455544_5054_q.jpg,400004445455404|Yzznn P<>sr<73>|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55555_400004445455404_4440555_q.jpg,400004455450554|zd dz rzgzr|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs444.snc5/54554_400004455450554_5445405_q.jpg,400004455440555|Lzzrz Pzsszcznz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55045_400004455440555_5454454_q.jpg,400004555554454|zdzzrdz zsszvzz Czzsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs554
.snc5/55544_400004555554454_5445_q.jpg,400004540044550|Pzzrl Rzvzr zkzszs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/50054_400004540044550_5555_q.jpg,400004554555550|rzznz Czrzn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54505_400004554555550_5455444_q.jpg', amisjoueurs='4445545455|Pzsczl Vzsznszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs445.snc5/54500_4445545455_5455_q.jpg,4445555555|zlzznz zsz Vzsznszn|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs555.snc5/55554_4445555555_5455505_q.jpg,4445554544|Szvgz Kzszcz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs455.snc5/54555_4445554544_5554_q.jpg,4450445555|Szrz Wzrsz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs4445.snc5/455405_4450445555_455550_q.jpg,4544450555|Szprzz Vzrvzlckz|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs454.zsr4/54555_4544450555_5445_q.jpg,4540554404|Gznzvzzvz zrnzlzs|http://przrzlz.zk.hidden.com/rprzrzlz-zk-snc5/rs544.zsr4/455540_4540554404_4405544_q.jpg',
jour = 4455555044;

View File

@@ -1,166 +0,0 @@
#!/usr/bin/env perl
BEGIN {
die "The PERCONA_TOOLKIT_BRANCH environment variable is not set.\n"
unless $ENV{PERCONA_TOOLKIT_BRANCH} && -d $ENV{PERCONA_TOOLKIT_BRANCH};
unshift @INC, "$ENV{PERCONA_TOOLKIT_BRANCH}/lib";
};
use strict;
use warnings FATAL => 'all';
use English qw(-no_match_vars);
use Test::More tests => 13;
use PerconaTest;
require "$trunk/bin/pt-query-advisor";
my @args = qw(--print-all --report-format full --group-by none --query);
my $query;
# #############################################################################
# Literals.
# #############################################################################
ok(
no_diff(sub { pt_query_advisor::main(@args,
'SELECT ip FROM tbl WHERE ip="127.0.0.1"') },
't/pt-query-advisor/samples/lit-001.txt',
),
'LIT.001 "IP"'
);
ok(
no_diff(sub { pt_query_advisor::main(@args,
'SELECT c FROM tbl WHERE c < 2010-02-15') },
't/pt-query-advisor/samples/lit-002-01.txt',
),
'LIT.002 YYYY-MM-DD'
);
ok(
no_diff(sub { pt_query_advisor::main(@args,
'SELECT c FROM tbl WHERE c=20100215') },
't/pt-query-advisor/samples/lit-002-02.txt',
),
'LIT.002 YYYYMMDD'
);
# #############################################################################
# Table list.
# #############################################################################
ok(
no_diff(sub { pt_query_advisor::main(@args,
'SELECT * FROM tbl WHERE id=1') },
't/pt-query-advisor/samples/tbl-001-01.txt',
),
'TBL.001 *'
);
ok(
no_diff(sub { pt_query_advisor::main(@args,
'SELECT tbl.* FROM tbl WHERE id=2') },
't/pt-query-advisor/samples/tbl-001-02.txt',
),
'TBL.001 tbl.*'
);
ok(
no_diff(sub { pt_query_advisor::main(@args,
'SELECT tbl.* foo, bar FROM tbl WHERE id=1') },
't/pt-query-advisor/samples/tbl-002-01.txt',
),
'TBL.002 tbl.* foo'
);
ok(
no_diff(sub { pt_query_advisor::main(@args,
'SELECT tbl.* AS foo, bar FROM tbl WHERE id=2') },
't/pt-query-advisor/samples/tbl-002-02.txt',
),
'TBL.002 tbl.* AS foo'
);
# #############################################################################
# Query.
# #############################################################################
ok(
no_diff(sub { pt_query_advisor::main(@args,
'insert into foo values ("bar")') },
't/pt-query-advisor/samples/qry-001-01.txt',
),
'QRY.001 INSERT'
);
ok(
no_diff(sub { pt_query_advisor::main(@args,
'replace into foo values ("bar")') },
't/pt-query-advisor/samples/qry-001-02.txt',
),
'QRY.001 REPLACE'
);
# #############################################################################
# Subqueries.
# #############################################################################
ok(
no_diff(sub { pt_query_advisor::main(@args,
'select t from w where i=1 or i in (select * from j)') },
't/pt-query-advisor/samples/sub-001-01.txt',
),
'SUB.001'
);
# #############################################################################
# JOIN stuff.
# #############################################################################
$query = "SELECT * FROM `wibble_chapter`
INNER JOIN `wibble_series` AS `wibble_chapter__series`
ON `wibble_chapter`.`series_id` = `wibble_chapter__series`.`id`,
`wibble_series`,
`auth_user`
WHERE ( `wibble_chapter`.`chapnum` = 63.0
AND `wibble_chapter`.`status` = 1
AND `wibble_chapter__series`.`title` = 'bibble' )
AND `wibble_chapter`.`series_id` = `wibble_series`.`id`
AND `wibble_series`.`poster_id` = `auth_user`.`id`
ORDER BY `wibble_chapter`.`create_time` DESC
LIMIT 1";
ok(
no_diff(sub { pt_query_advisor::main(@args, $query) },
't/pt-query-advisor/samples/joi-001-002-01.txt',
),
'JOI.001 and JOI.002'
);
# #############################################################################
# CLA.* rules
# #############################################################################
ok(
no_diff(sub { pt_query_advisor::main(@args,
'select id from tbl1 join tbl2 using (a) group by tbl1.id, tbl2.id') },
't/pt-query-advisor/samples/cla-006-01.txt',
),
'CLA.001 and CLA.006'
);
ok(
no_diff(sub { pt_query_advisor::main(@args,
'select c1, c2 from t where i=1 order by c1 desc, c2 asc') },
't/pt-query-advisor/samples/cla-007-01.txt',
),
'CLA.007'
);
# #############################################################################
# Done.
# #############################################################################
exit;

View File

@@ -1,76 +0,0 @@
#!/usr/bin/env perl
BEGIN {
die "The PERCONA_TOOLKIT_BRANCH environment variable is not set.\n"
unless $ENV{PERCONA_TOOLKIT_BRANCH} && -d $ENV{PERCONA_TOOLKIT_BRANCH};
unshift @INC, "$ENV{PERCONA_TOOLKIT_BRANCH}/lib";
};
use strict;
use warnings FATAL => 'all';
use English qw(-no_match_vars);
use Test::More;
use PerconaTest;
use Sandbox;
require "$trunk/bin/pt-query-advisor";
my $dp = new DSNParser(opts=>$dsn_opts);
my $sb = new Sandbox(basedir => '/tmp', DSNParser => $dp);
my $dbh = $sb->get_dbh_for('master');
if ( !$dbh ) {
plan skip_all => 'Cannot connect to sandbox master';
}
else {
plan tests => 4;
}
my $output = "";
my $cnf = "/tmp/12345/my.sandbox.cnf";
my @args = ('-F', $cnf, '-D', 'test');
$sb->create_dbs($dbh, ['test']);
$sb->load_file('master', "t/pt-query-advisor/samples/issue-950.sql", "test");
my $query = "select c from L left join R on l_id = r_id where r_other is null";
$output = output(
sub { pt_query_advisor::main(@args, '--query', $query) },
);
like(
$output,
qr/JOI.004/,
"JOI.004"
);
$output = output(
sub { pt_query_advisor::main(@args, '--query', $query,
'--no-show-create-table') },
);
is(
$output,
"",
"JOI.004 doesn't work with --no-show-create-table"
);
$output = output(
sub { pt_query_advisor::main(@args, '--query', $query,
'--no-show-create-table', '--print-all') },
);
is(
$output,
"
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ==========================================
# 0xE697459A77FBF34F 0 0 0 select c from l left join r on l_id = r_id where r_other is ?
",
"--print-all shows 0/0/0 item"
);
# #############################################################################
# Done.
# #############################################################################
$sb->wipe_clean($dbh);
ok($sb->ok(), "Sandbox servers") or BAIL_OUT(__FILE__ . " broke the sandbox");
exit;

View File

@@ -1,49 +0,0 @@
#!/usr/bin/env perl
BEGIN {
die "The PERCONA_TOOLKIT_BRANCH environment variable is not set.\n"
unless $ENV{PERCONA_TOOLKIT_BRANCH} && -d $ENV{PERCONA_TOOLKIT_BRANCH};
unshift @INC, "$ENV{PERCONA_TOOLKIT_BRANCH}/lib";
};
use strict;
use warnings FATAL => 'all';
use English qw(-no_match_vars);
use Test::More tests => 3;
use PerconaTest;
require "$trunk/bin/pt-query-advisor";
ok(
no_diff(
sub { pt_query_advisor::main(
qw(--group-by none),
"$trunk/t/pt-query-advisor/samples/slow001.txt",) },
"t/pt-query-advisor/samples/group-by-none-001.txt",
),
"group by none"
);
ok(
no_diff(
sub { pt_query_advisor::main(
"$trunk/t/pt-query-advisor/samples/slow001.txt",) },
"t/pt-query-advisor/samples/group-by-rule-id-001.txt",
),
"group by rule id (default)"
);
ok(
no_diff(
sub { pt_query_advisor::main(
qw(--group-by query_id),
"$trunk/t/pt-query-advisor/samples/slow001.txt",) },
"t/pt-query-advisor/samples/group-by-query-id-001.txt",
),
"group by query_id"
);
# #############################################################################
# Done.
# #############################################################################
exit;

View File

@@ -1,31 +0,0 @@
#!/usr/bin/env perl
BEGIN {
die "The PERCONA_TOOLKIT_BRANCH environment variable is not set.\n"
unless $ENV{PERCONA_TOOLKIT_BRANCH} && -d $ENV{PERCONA_TOOLKIT_BRANCH};
unshift @INC, "$ENV{PERCONA_TOOLKIT_BRANCH}/lib";
};
use strict;
use warnings FATAL => 'all';
use English qw(-no_match_vars);
use Test::More tests => 1;
use PerconaTest;
require "$trunk/bin/pt-query-advisor";
my @args = qw(--print-all --report-format full --group-by none);
ok(
no_diff(sub { pt_query_advisor::main(@args,
qw(--ignore-rules COL.001),
'--query', 'SELECT * FROM tbl WHERE id=1') },
't/pt-query-advisor/samples/tbl-001-01-ignored.txt',
),
'Ignore a rule'
);
# #############################################################################
# Done.
# #############################################################################
exit;

View File

@@ -1,67 +0,0 @@
#!/usr/bin/env perl
BEGIN {
die "The PERCONA_TOOLKIT_BRANCH environment variable is not set.\n"
unless $ENV{PERCONA_TOOLKIT_BRANCH} && -d $ENV{PERCONA_TOOLKIT_BRANCH};
unshift @INC, "$ENV{PERCONA_TOOLKIT_BRANCH}/lib";
};
use strict;
use warnings FATAL => 'all';
use English qw(-no_match_vars);
use Test::More;
use PerconaTest;
require "$trunk/bin/pt-query-advisor";
my $output;
my @args = ();
my $sample = "$trunk/t/lib/samples/";
$output = output(
sub { pt_query_advisor::main(@args, "$sample/slowlogs/slow018.txt") },
);
like(
$output,
qr/COL.002/,
"Parse slowlog"
);
$output = output(
sub { pt_query_advisor::main(@args, qw(--type genlog),
"$sample/genlogs/genlog001.txt") },
);
like(
$output,
qr/CLA.005/,
"Parse genlog"
);
# #############################################################################
# pt-query-advisor hangs on big queries
# https://bugs.launchpad.net/percona-toolkit/+bug/823431
# #############################################################################
my $exit_status;
$output = output(
sub { $exit_status = pt_query_advisor::main(@args,
"$sample/bug_823431.log")
},
stderr => 1
);
ok(
!$exit_status,
"Bug 823431: ptqa doesn't hang on a big query"
);
is(
$output,
'',
"Bug 823431: ptqa doesn't hang on a big query and doesn't find an incorrect rule"
);
# #############################################################################
# Done.
# #############################################################################
done_testing;

View File

@@ -1,99 +0,0 @@
#!/usr/bin/env perl
BEGIN {
die "The PERCONA_TOOLKIT_BRANCH environment variable is not set.\n"
unless $ENV{PERCONA_TOOLKIT_BRANCH} && -d $ENV{PERCONA_TOOLKIT_BRANCH};
unshift @INC, "$ENV{PERCONA_TOOLKIT_BRANCH}/lib";
};
use strict;
use warnings FATAL => 'all';
use English qw(-no_match_vars);
use Test::More;
use PerconaTest;
use Sandbox;
require "$trunk/bin/pt-query-advisor";
my $dp = new DSNParser(opts=>$dsn_opts);
my $sb = new Sandbox(basedir => '/tmp', DSNParser => $dp);
my $dbh = $sb->get_dbh_for('master');
if ( !$dbh ) {
plan skip_all => 'Cannot connect to sandbox master';
}
else {
plan tests => 5;
}
my $output = "";
my $cnf = "/tmp/12345/my.sandbox.cnf";
my @args = (qw(--print-all --report-format full --group-by none --review), "F=$cnf,D=test,t=query_review");
my $review_tbl = "CREATE TABLE query_review (
checksum BIGINT UNSIGNED NOT NULL PRIMARY KEY,
fingerprint TEXT NOT NULL,
sample TEXT NOT NULL,
first_seen DATETIME,
last_seen DATETIME,
reviewed_by VARCHAR(20),
reviewed_on DATETIME,
comments TEXT
)";
$dbh->do('drop database if exists `test`');
$dbh->do('create database `test`');
$dbh->do('use `test`');
$dbh->do($review_tbl);
# Make sure it handles an empty review table.
$output = output(
sub { pt_query_advisor::main(@args) },
);
is(
$output,
"",
"Empty --review table"
);
$dbh->do("insert into test.query_review values
(1, 'select * from tbl where id=? order by col',
'select * from tbl where id=42 order by col',
NOW(), NOW(), NULL, NULL, NULL)");
ok(
no_diff(
sub { pt_query_advisor::main(@args) },
"t/pt-query-advisor/samples/review001.txt",
),
"--review with one bad query"
);
$dbh->do("insert into test.query_review values
(2, 'select col from tbl2 where id=? order by col limit ?',
'select col from tbl2 where id=52 order by col limit 10',
NOW(), NOW(), NULL, NULL, NULL)");
ok(
no_diff(
sub { pt_query_advisor::main(@args) },
"t/pt-query-advisor/samples/review002.txt",
),
"--review with 1 bad, 1 good query"
);
# That that --where works.
ok(
no_diff(
sub { pt_query_advisor::main(@args, qw(--where checksum=1)) },
"t/pt-query-advisor/samples/review001.txt",
),
"--review with --where"
);
# #############################################################################
# Done.
# #############################################################################
$sb->wipe_clean($dbh);
ok($sb->ok(), "Sandbox servers") or BAIL_OUT(__FILE__ . " broke the sandbox");
exit;

View File

@@ -1,10 +0,0 @@
# Query ID 0xAED2E885BDADA166 at byte 0
# WARN CLA.001 SELECT without WHERE.
# WARN CLA.006 GROUP BY or ORDER BY on different tables.
select id from tbl1 join tbl2 using (a) group by tbl1.id, tbl2.id
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ==========================================
# 0xAED2E885BDADA166 0 2 0 select id from tbl? join tbl? using (a) group by tbl?id, tbl?id

View File

@@ -1,9 +0,0 @@
# Query ID 0xBA2547D924C5140D at byte 0
# WARN CLA.007 ORDER BY clauses that sort the results in different directions prevents indexes from being used.
select c1, c2 from t where i=1 order by c1 desc, c2 asc
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ==========================================
# 0xBA2547D924C5140D 0 1 0 select c?, c? from t where i=? order by c? desc, c?

View File

@@ -1,35 +0,0 @@
# Query ID 0xADCE32553F5D5859 at byte 0
# WARN CLA.001 SELECT without WHERE.
# NOTE COL.001 SELECT *.
select * from tbl
# Query ID 0x63C84ABE631F3CD0 at byte 191
# Also: CLA.001 COL.001
select * from tbl order by a
# Query ID 0xB79802214165F670 at byte 297
# NOTE COL.002 Blind INSERT.
insert into tbl values (null, 1, 'foo')
# Query ID 0xEEA4D551871CCDC4 at byte 414
# Also: COL.002
replace into tbl2 values (1, '2', 'bar')
# Query ID 0x52BAD5F0BF97EA19 at byte 532
# WARN RES.001 Non-deterministic GROUP BY.
select a, b, c from x where id<1000 group by a, b
# Query ID 0x01BF72F436E936F1 at byte 659
# Also: RES.001
select x, y, z from foo where id>1000 group by x, y
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ==========================================
# 0x01BF72F436E936F1 0 1 0 select x, y, z from foo where id>? group by x, y
# 0x52BAD5F0BF97EA19 0 1 0 select a, b, c from x where id<? group by a, b
# 0x63C84ABE631F3CD0 1 1 0 select * from tbl order by a
# 0xADCE32553F5D5859 1 1 0 select * from tbl
# 0xB79802214165F670 1 0 0 insert into tbl values(?+)
# 0xEEA4D551871CCDC4 1 0 0 replace into tbl? values(?+)

View File

@@ -1,22 +0,0 @@
0x01BF72F436E936F1 RES.001
0x52BAD5F0BF97EA19 RES.001
0x63C84ABE631F3CD0 CLA.001 COL.001
0xADCE32553F5D5859 CLA.001 COL.001
0xB79802214165F670 COL.002
0xEEA4D551871CCDC4 COL.002
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ==========================================
# 0x01BF72F436E936F1 0 1 0 select x, y, z from foo where id>? group by x, y
# 0x52BAD5F0BF97EA19 0 1 0 select a, b, c from x where id<? group by a, b
# 0x63C84ABE631F3CD0 1 1 0 select * from tbl order by a
# 0xADCE32553F5D5859 1 1 0 select * from tbl
# 0xB79802214165F670 1 0 0 insert into tbl values(?+)
# 0xEEA4D551871CCDC4 1 0 0 replace into tbl? values(?+)

View File

@@ -1,18 +0,0 @@
CLA.001 0x63C84ABE631F3CD0 0xADCE32553F5D5859
COL.001 0x63C84ABE631F3CD0 0xADCE32553F5D5859
COL.002 0xB79802214165F670 0xEEA4D551871CCDC4
RES.001 0x01BF72F436E936F1 0x52BAD5F0BF97EA19
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ==========================================
# 0x01BF72F436E936F1 0 1 0 select x, y, z from foo where id>? group by x, y
# 0x52BAD5F0BF97EA19 0 1 0 select a, b, c from x where id<? group by a, b
# 0x63C84ABE631F3CD0 1 1 0 select * from tbl order by a
# 0xADCE32553F5D5859 1 1 0 select * from tbl
# 0xB79802214165F670 1 0 0 insert into tbl values(?+)
# 0xEEA4D551871CCDC4 1 0 0 replace into tbl? values(?+)

View File

@@ -1,11 +0,0 @@
use test;
create table L (
l_id int not null primary key
);
insert into L(l_id) values(1),(2),(3);
create table R (
r_id int not null primary key,
r_other int NULL -- notice that this is NULL-able
);
insert into R(r_id, r_other) values(1, 5), (2, NULL);

View File

@@ -1,22 +0,0 @@
# Query ID 0x95718954DB8B7620 at byte 0
# NOTE COL.001 SELECT *.
# CRIT JOI.001 Mixing comma and ANSI joins.
# CRIT JOI.002 A table is joined twice.
SELECT * FROM `wibble_chapter`
INNER JOIN `wibble_series` AS `wibble_chapter__series`
ON `wibble_chapter`.`series_id` = `wibble_chapter__series`.`id`,
`wibble_series`,
`auth_user`
WHERE ( `wibble_chapter`.`chapnum` = 63.0
AND `wibble_chapter`.`status` = 1
AND `wibble_chapter__series`.`title` = 'bibble' )
AND `wibble_chapter`.`series_id` = `wibble_series`.`id`
AND `wibble_series`.`poster_id` = `auth_user`.`id`
ORDER BY `wibble_chapter`.`create_time` DESC
LIMIT 1
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ==========================================
# 0x95718954DB8B7620 1 0 2 select * from `wibble_chapter` inner join `wibble_series` as `wibble_chapter__series` on `wibble_chapter`.`series_id` = `wibble_chapter__series`.`id`, `wibble_series`, `auth_user` where ( `wibble_chapter`.`chapnum` = ? and `wibble_chapter`.`status` = ? and `wibble_chapter__series`.`title` = ? ) and `wibble_chapter`.`series_id` = `wibble_series`.`id` and `wibble_series`.`poster_id` = `auth_user`.`id` order by `wibble_chapter`.`create_time` desc limit ?

View File

@@ -1,10 +0,0 @@
# Query ID 0xDFCCE9A43086FAFB at byte 0
# WARN LIT.001 Storing an IP address as characters.
# matches near: p="127.0.0.1"
SELECT ip FROM tbl WHERE ip="127.0.0.1"
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== =============================
# 0xDFCCE9A43086FAFB 0 1 0 select ip from tbl where ip=?

View File

@@ -1,10 +0,0 @@
# Query ID 0x0C74A51C7CA7AA15 at byte 0
# WARN LIT.002 Unquoted date/time literal.
# matches near: < 2010-02-15
SELECT c FROM tbl WHERE c < 2010-02-15
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== =============================
# 0x0C74A51C7CA7AA15 0 1 0 select c from tbl where c < ?

View File

@@ -1,8 +0,0 @@
# Query ID 0xE6F50A59C746B888 at byte 0
SELECT c FROM tbl WHERE c=20100215
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ===========================
# 0xE6F50A59C746B888 0 0 0 select c from tbl where c=?

View File

@@ -1,9 +0,0 @@
# Query ID 0xD2BA209E593ABAA7 at byte 0
# NOTE COL.002 Blind INSERT.
insert into foo values ("bar")
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ==========================
# 0xD2BA209E593ABAA7 1 0 0 insert into foo values(?+)

View File

@@ -1,9 +0,0 @@
# Query ID 0x9DEC61FB7711A48B at byte 0
# NOTE COL.002 Blind INSERT.
replace into foo values ("bar")
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ===========================
# 0x9DEC61FB7711A48B 1 0 0 replace into foo values(?+)

View File

@@ -1,9 +0,0 @@
# Query ID 0x3ABB67240C860825 at byte 0
# NOTE COL.001 SELECT *.
select * from tbl where id=42 order by col
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== =========================================
# 0x3ABB67240C860825 1 0 0 select * from tbl where id=? order by col

View File

@@ -1,13 +0,0 @@
# Query ID 0x3ABB67240C860825 at byte 0
# NOTE COL.001 SELECT *.
select * from tbl where id=42 order by col
# Query ID 0xE6CB49B8022C078D at byte 0
select col from tbl2 where id=52 order by col limit 10
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ==========================================
# 0x3ABB67240C860825 1 0 0 select * from tbl where id=? order by col
# 0xE6CB49B8022C078D 0 0 0 select col from tbl? where id=? order by col limit ?

View File

@@ -1,14 +0,0 @@
# Query_time: 0.000012 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0
select * from tbl;
# Query_time: 0.000012 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0
select * from tbl;
# Query_time: 0.000012 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0
select * from tbl order by a;
# Query_time: 0.000012 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0
insert into tbl values (null, 1, 'foo');
# Query_time: 0.000012 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0
replace into tbl2 values (1, '2', 'bar');
# Query_time: 0.000012 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0
select a, b, c from x where id<1000 group by a, b;
# Query_time: 0.000012 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0
select x, y, z from foo where id>1000 group by x, y;

View File

@@ -1,10 +0,0 @@
# Query ID 0xD6E9D91F645455DB at byte 0
# CRIT SUB.001 IN() and NOT IN() subqueries are poorly optimized.
# matches near: i in (select * from j)
select t from w where i=1 or i in (select * from j)
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ==========================================
# 0xD6E9D91F645455DB 0 0 1 select t from w where i=? or i in (select * from j)

View File

@@ -1,8 +0,0 @@
# Query ID 0xE182E0865F5BEEBB at byte 0
SELECT * FROM tbl WHERE id=1
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ============================
# 0xE182E0865F5BEEBB 0 0 0 select * from tbl where id=?

View File

@@ -1,9 +0,0 @@
# Query ID 0xE182E0865F5BEEBB at byte 0
# NOTE COL.001 SELECT *.
SELECT * FROM tbl WHERE id=1
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ============================
# 0xE182E0865F5BEEBB 1 0 0 select * from tbl where id=?

View File

@@ -1,9 +0,0 @@
# Query ID 0x34C93ACCCD015F48 at byte 0
# NOTE COL.001 SELECT *.
SELECT tbl.* FROM tbl WHERE id=2
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ================================
# 0x34C93ACCCD015F48 1 0 0 select tbl.* from tbl where id=?

View File

@@ -1,11 +0,0 @@
# Query ID 0x75364D6054FA40ED at byte 0
# NOTE ALI.001 Aliasing without the AS keyword.
# WARN ALI.002 Aliasing the '*' wildcard.
# NOTE COL.001 SELECT *.
SELECT tbl.* foo, bar FROM tbl WHERE id=1
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== =========================================
# 0x75364D6054FA40ED 2 1 0 select tbl.* foo, bar from tbl where id=?

View File

@@ -1,10 +0,0 @@
# Query ID 0x31C7ABF526209286 at byte 0
# WARN ALI.002 Aliasing the '*' wildcard.
# NOTE COL.001 SELECT *.
SELECT tbl.* AS foo, bar FROM tbl WHERE id=2
# Profile
# Query ID NOTE WARN CRIT Item
# ================== ==== ==== ==== ==========================================
# 0x31C7ABF526209286 1 1 0 select tbl.* as foo, bar from tbl where id=?