var singleton = (function () { var data, method_args; data = []; method_args = []; function add (items) { var i; data.push(items); method_args.push(arguments); } function remove () { data.pop(); method_args.push(arguments); } return { add : add, remove : remove } }());
рд╕рд┐рдВрдЧрд▓рдЯрди рдСрдмреНрдЬреЗрдХреНрдЯ рддрдХ рдкрд╣реБрдВрдЪ рд╣реИред
рд╕рд┐рдВрдЧрд▓рдЯрди рдкрдмреНрд▓рд┐рдХ рдореЗрдердбреНрд╕ (рдЗрд╕реЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдпрд╣ рд╡реИрд▓реНрдпреВ рдХреНрд▓реЛрдЬрд░ рд╣реИ рдЬрдм рдЗрд╕реЗ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ) рдЙрд╕ рдРрд░реЗ рдХреЗ рддрд░реАрдХреЗ рдХреЛ рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдЗрди рд╡рд┐рдзрд┐рдпреЛрдВ рдореЗрдВ,
рдпрд╣ рдкреНрд░рддрд┐рд╖реНрдард┐рдд рд╕рд░рдгреА рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддрд╛ рд╣реИред рддреЛ рдЖрдк рдЗрд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдпрджрд┐ рдХреЛрдИ
рддрд░реАрдХрд╛ рдирд╣реАрдВ
рдерд╛_рдЕрд░реНрд╕.рдкрд╢ , рдЖрдк
Array.prototype.push рдХреЛ рдкреБрдирд░реНрдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рд╡рд╕реНрддреБ рдХреА "рдЪреЛрд░реА" рдХреЗ рдмрд╛рдж рдЙрд╕рдХреЗ рд╕реНрдерд╛рди рдкрд░ рд╕рдм рдХреБрдЫ рдХреЗ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░рд┐рдЯрд░реНрди рдХреЗ рд╕рд╛рде)ред
var original_push, data;
рд╣рд╛рд▓рд╛рдБрдХрд┐,
рдкреБрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╡рд┐рдзрд┐ рдХреА рдПрдХ рдмрд╛рд░ рдХреА рд╡рд┐рдлрд▓рддрд╛ рд╕реЗ рдмреНрд░реЗрдХрдбрд╛рдЙрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ред рдореИрдВ рд╕рд░рдгреА рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдХрд╛рдо рдХреЗ рдорд╛рдирдХ рддрд░реНрдХ рдХреЛ рдмрдирд╛рдП рд░рдЦрддреЗ рд╣реБрдП, рдКрдкрд░ рджрд┐рдП рдЧрдП рдХреЛрдб рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рд╣реИред рд╣рдо рдПрдХ рдирдИ рдкреБрд╢ рд╡рд┐рдзрд┐ рдмрдирд╛рддреЗ рд╣реИрдВ рдЬреЛ
рдЗрд╕ рд▓рд┐рдВрдХ рдХреЛ рдХреЗрд╡рд▓ рдкрд╣рд▓реА рдХреЙрд▓ рдкрд░ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕реНрдорд╛рд░реНрдЯ рд╣реИ, рдФрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреА рдирдХрд▓ рдХрд░ рд╕рдХрддреА рд╣реИред
var original_push, fake_method_calls, data;
рд╡реЛрдЗрд▓рд╛: рднреЗрдбрд╝ рдмрд░рдХрд░рд╛рд░ рд╣реИрдВ (рдорд╛рдирдХ рддрд░реНрдХ рдирд╣реАрдВ рдЯреВрдЯрд╛ рд╣реИ) рдФрд░ рднреЗрдбрд╝рд┐рдпреЗ рднрд░реЗ рд╣реБрдП рд╣реИрдВ (рд╣рд╛рде рдореЗрдВ рд▓рд┐рдВрдХ)ред