Официальный флагманский магазин Android Development Art Art Explore Android Development Wideoorial Books Ren Yugang от Entry до опытных книг по разработке Android Android Books Development
Цена: 1 421руб. (¥79)
Артикул: 611310229858
Вес товара: ~0.7 кг. Указан усредненный вес, который может отличаться от фактического. Не включен в цену, оплачивается при получении.
PHA+PGltZyBjbGFzcz0iZGVzY19hbmNob3IiIGlkPSJkZXNjLW1vZHVsZS0xIiBzcmM9Imh0dHBzOi8vYXNzZXRzLmFsaWNkbi5jb20va2lzc3kvMS4wLjAvYnVpbGQvaW1nbGF6eWxvYWQvc3BhY2ViYWxsLmdpZiI+PHAgc3R5bGU9Im1hcmdpbjogMDtvdmVyZmxvdzogaGlkZGVuOyI+PGltZyBzcmM9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vaW1nZXh0cmEvaTQvVDJzNG1vWEg4WFhYWFhYWFhYLTM1MDQ3NTk5NS5wbmc/cD1oYl92M19jbGllbnRfMTE1NDY5OV9zdGFydF90b3BfMSI+PC9wPjx0YWJsZSBhbGlnbj0iY2VudGVyIiBzdHlsZT0ibWFyZ2luOiAwIGF1dG87Ij48dHI+PHRkPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4OyI+PGEgaHJlZj0iaHR0cDovL2R6Z3ljYnMudG1hbGwuY29tL3AvcmQxMDMxMDIuaHRtIiB0YXJnZXQ9Il9ibGFuayI+PGltZyBzcmM9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vaW1nZXh0cmEvaTIvMTkzMjAxNDY1OS9PMUNOMDFYczJ3U3Yxa0hyck44Y1h1b18hITE5MzIwMTQ2NTkuanBnIiBhbHQ9IiI+PC9hPjwvcD48L3RkPjwvdHI+PC90YWJsZT48cCBzdHlsZT0ibWFyZ2luOiAwIDAgNS4wcHggMDtvdmVyZmxvdzogaGlkZGVuOyI+PGltZyBzcmM9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vaW1nZXh0cmEvaTQvVDJzNG1vWEg4WFhYWFhYWFhYLTM1MDQ3NTk5NS5wbmc/cD1oYl92M19jbGllbnRfMTE1NDY5OV9lbmRfdG9wXzEiPjwvcD48cCBzdHlsZT0ibWFyZ2luOiAwO292ZXJmbG93OiBoaWRkZW47Ij48aW1nIHNyYz0iaHR0cHM6Ly9pbWcuYWxpY2RuLmNvbS9pbWdleHRyYS9pNC9UMnM0bW9YSDhYWFhYWFhYWFgtMzUwNDc1OTk1LnBuZz9wPXJlY29tbWVuZF92Ml83MjczMDY2X3N0YXJ0X3RvcF8xIj48L3A+PHRhYmxlIHdpZHRoPSI3OTAiIGJvcmRlcj0iMCIgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBiZ2NvbG9yPSIjZmZmZmZmIiBhbGlnbj0iY2VudGVyIiBzdHlsZT0ibWFyZ2luOiAwIGF1dG87bGluZS1oZWlnaHQ6IDEuNTt0ZXh0LWFsaWduOiBsZWZ0O2NvbG9yOiAjNDQ0NDQ0O2ZvbnQtc2l6ZTogMTIuMHB4O3dvcmQtd3JhcDogbm9ybWFsO3dpZHRoOiA3OTAuMHB4OyI+PHRyPjx0ZD48dGFibGUgd2lkdGg9IjEwMCUiIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIwIj48dHI+PHRkIHdpZHRoPSI2IiBzdHlsZT0ibGluZS0iPjwvdGQ+PHRkIHdpZHRoPSIxOTAiIGJnY29sb3I9IiMwMDkxZDIiIGJhY2tncm91bmQ9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vaW1nZXh0cmEvaTEvVEIyUHhtRGFwWFhYWGNkWFhYWFhYWFhYWFhYLTM1MDQ3NTk5NS5wbmciIHN0eWxlPSJiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246IDEwMC4wJSAxMDAuMCU7cGFkZGluZzogNS4wcHggMDsiPjx0YWJsZSB3aWR0aD0iMTgwIiBib3JkZXI9IjAiIGFsaWduPSJjZW50ZXIiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgc3R5bGU9Im1hcmdpbjogMCBhdXRvOyI+PHRyPjx0ZCBoZWlnaHQ9IjE4MCIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiIgc3R5bGU9ImZvbnQtc2l6ZTogMDsiPjxhIGhyZWY9Imh0dHBzOi8vaXRlbS50YW9iYW8uY29tL2l0ZW0uaHRtP2lkPTQ0MTI3MDIwMDk5IiB0YXJnZXQ9Il9ibGFuayI+PGltZyBzcmM9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vYmFvL3VwbG9hZGVkL2kxLzE5MzIwMTQ2NTkvTzFDTjAxQXNDeVpaMWtIcnIzdkFpbzhfISEwLWl0ZW1fcGljLmpwZ18xODB4MTgwLmpwZyIgYm9yZGVyPSIwIj48L2E+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9IiI+PHRhYmxlIHdpZHRoPSIxMDAlIiBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMCI+PHRyPjx0ZD48dGFibGUgd2lkdGg9IjEwMCUiIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIwIj48dHI+PHRkPjxkaXYgc3R5bGU9ImZvbnQtc2l6ZTogMTIuMHB4O2hlaWdodDogMTQuMHB4O2xpbmUtaGVpZ2h0OiAxNC4wcHg7b3ZlcmZsb3c6IGhpZGRlbjsiPjxhIGhyZWY9Imh0dHBzOi8vaXRlbS50YW9iYW8uY29tL2l0ZW0uaHRtP2lkPTQ0MTI3MDIwMDk5IiB0YXJnZXQ9Il9ibGFuayIgc3R5bGU9InRleHQtZGVjb3JhdGlvbjogbm9uZTtjb2xvcjogI2ZmZmZmZjsiPuWumOaWueato+eJiCBPcGVuQ1Yz57yW56iL5YWl6ZeoIOe8lueoi+WFpemXqOS5puexjSBPcGVuQ1Yz57yW56iL6K6h566X5py66KeG6KeJ5Lmm57GNIG9wZW5jdue8lueoi+WtpuS5oOS5puexjSDkurrlt6Xmmbrog73kuabnsY0g6K6h566X5py66KeG6KeJ5a2m5Lmg5Lmm57GNPC9hPjwvZGl2PjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIHN0eWxlPSJjb2xvcjogI2ZmZmZmZjsiPtCm0LXQvdCwINC/0YDQvtC00LDQttC4OjxzcGFuIHN0eWxlPSJmb250LXdlaWdodDogYm9sZDsiPu+/pSA0Miw2MDwvc3Bhbj48L3NwYW4+PC90ZD48L3RyPjwvdGFibGU+PC90ZD48dGQgd2lkdGg9IjM1IiBoZWlnaHQ9IjM1Ij48YSBocmVmPSJodHRwczovL2l0ZW0udGFvYmFvLmNvbS9pdGVtLmh0bT9pZD00NDEyNzAyMDA5OSIgdGFyZ2V0PSJfYmxhbmsiPjxpbWcgc3JjPSJodHRwczovL2ltZy5hbGljZG4uY29tL2ltZ2V4dHJhL2kxL1RCMjZUOUphcFhYWFhieFhYWFhYWFhYWFhYWC0zNTA0NzU5OTUucG5nIiBhbHQ9IiIgd2lkdGg9IjM1IiBoZWlnaHQ9IjM1IiBib3JkZXI9IjAiPjwvYT48L3RkPjwvdHI+PC90YWJsZT48L3RkPjwvdHI+PC90YWJsZT48L3RkPjx0ZCB3aWR0aD0iNiIgc3R5bGU9ImxpbmUtIj48L3RkPjx0ZCB3aWR0aD0iMTkwIiBiZ2NvbG9yPSIjMDA5MWQyIiBiYWNrZ3JvdW5kPSJodHRwczovL2ltZy5hbGljZG4uY29tL2ltZ2V4dHJhL2kxL1RCMlB4bURhcFhYWFhjZFhYWFhYWFhYWFhYWC0zNTA0NzU5OTUucG5nIiBzdHlsZT0iYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAuMCUgMTAwLjAlO3BhZGRpbmc6IDUuMHB4IDA7Ij48dGFibGUgd2lkdGg9IjE4MCIgYm9yZGVyPSIwIiBhbGlnbj0iY2VudGVyIiBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIHN0eWxlPSJtYXJnaW46IDAgYXV0bzsiPjx0cj48dGQgaGVpZ2h0PSIxODAiIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiIHN0eWxlPSJmb250LXNpemU6IDA7Ij48YSBocmVmPSJodHRwczovL2l0ZW0udGFvYmFvLmNvbS9pdGVtLmh0bT9pZD01NDUxOTEwMjc2OTIiIHRhcmdldD0iX2JsYW5rIj48aW1nIHNyYz0iaHR0cHM6Ly9pbWcuYWxpY2RuLmNvbS9iYW8vdXBsb2FkZWQvaTEvMTkzMjAxNDY1OS9UQjJ0ZlNOZWwwbHB1RmpTc3pkWFhjZHhGWGFfISExOTMyMDE0NjU5LmpwZ18xODB4MTgwLmpwZyIgYm9yZGVyPSIwIj48L2E+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9IiI+PHRhYmxlIHdpZHRoPSIxMDAlIiBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMCI+PHRyPjx0ZD48dGFibGUgd2lkdGg9IjEwMCUiIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIwIj48dHI+PHRkPjxkaXYgc3R5bGU9ImZvbnQtc2l6ZTogMTIuMHB4O2hlaWdodDogMTQuMHB4O2xpbmUtaGVpZ2h0OiAxNC4wcHg7b3ZlcmZsb3c6IGhpZGRlbjsiPjxhIGhyZWY9Imh0dHBzOi8vaXRlbS50YW9iYW8uY29tL2l0ZW0uaHRtP2lkPTU0NTE5MTAyNzY5MiIgdGFyZ2V0PSJfYmxhbmsiIHN0eWxlPSJ0ZXh0LWRlY29yYXRpb246IG5vbmU7Y29sb3I6ICNmZmZmZmY7Ij7QntGE0LjRhtC40LDQu9GM0L3QsNGPINC/0L7QtNC70LjQvdC90LDRjyDRhtC40YTRgNC+0LLQsNGPINC+0LHRgNCw0LHQvtGC0LrQsCDQuNC30L7QsdGA0LDQttC10L3QuNC5INCi0YDQtdGC0YzQtSDQuNC30LTQsNC90LjQtSDQsNC90LPQu9C40LnRgdC60L7QuSDQstC10YDRgdC40Lgg0JPQvtC90YHQsNC70LXRgdCwINC40L3QvtGB0YLRgNCw0L3QvdC+0Lkg0Y3Qu9C10LrRgtGA0L7QvdC40LrQuCDQuCDRg9GH0LXQsdC90LjQutCwINC/0L4g0LrQvtC80LzRg9C90LjQutCw0YbQuNC4INGB0LXRgNC40Lgg0YbQuNGE0YDQvtCy0YvRhSDQuNC30L7QsdGA0LDQttC10L3QuNC5INCe0YHQvdC+0LLQvdC+0LUg0LLQvtGB0YHRgtCw0L3QvtCy0LvQtdC90LjQtSDQuNC30L7QsdGA0LDQttC10L3QuNGPINC4INGA0LXQutC+0L3RgdGC0YDRg9C60YbQuNGPLjwvYT48L2Rpdj48L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBzdHlsZT0iY29sb3I6ICNmZmZmZmY7Ij7QptC10L3QsCDQv9GA0L7QtNCw0LbQuDo8c3BhbiBzdHlsZT0iZm9udC13ZWlnaHQ6IGJvbGQ7Ij7vv6UgNTcsODA8L3NwYW4+PC9zcGFuPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PHRkIHdpZHRoPSIzNSIgaGVpZ2h0PSIzNSI+PGEgaHJlZj0iaHR0cHM6Ly9pdGVtLnRhb2Jhby5jb20vaXRlbS5odG0/aWQ9NTQ1MTkxMDI3NjkyIiB0YXJnZXQ9Il9ibGFuayI+PGltZyBzcmM9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vaW1nZXh0cmEvaTEvVEIyNlQ5SmFwWFhYWGJ4WFhYWFhYWFhYWFhYLTM1MDQ3NTk5NS5wbmciIGFsdD0iIiB3aWR0aD0iMzUiIGhlaWdodD0iMzUiIGJvcmRlcj0iMCI+PC9hPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PHRkIHdpZHRoPSI2IiBzdHlsZT0ibGluZS0iPjwvdGQ+PHRkIHdpZHRoPSIxOTAiIGJnY29sb3I9IiMwMDkxZDIiIGJhY2tncm91bmQ9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vaW1nZXh0cmEvaTEvVEIyUHhtRGFwWFhYWGNkWFhYWFhYWFhYWFhYLTM1MDQ3NTk5NS5wbmciIHN0eWxlPSJiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246IDEwMC4wJSAxMDAuMCU7cGFkZGluZzogNS4wcHggMDsiPjx0YWJsZSB3aWR0aD0iMTgwIiBib3JkZXI9IjAiIGFsaWduPSJjZW50ZXIiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgc3R5bGU9Im1hcmdpbjogMCBhdXRvOyI+PHRyPjx0ZCBoZWlnaHQ9IjE4MCIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiIgc3R5bGU9ImZvbnQtc2l6ZTogMDsiPjxhIGhyZWY9Imh0dHBzOi8vaXRlbS50YW9iYW8uY29tL2l0ZW0uaHRtP2lkPTU2MTQwNzAwMTQ2OCIgdGFyZ2V0PSJfYmxhbmsiPjxpbWcgc3JjPSJodHRwczovL2ltZy5hbGljZG4uY29tL2Jhby91cGxvYWRlZC9pMS8xOTMyMDE0NjU5L08xQ04wMWx2UFNpVzFrSHJyMlNJRzZvXyEhMC1pdGVtX3BpYy5qcGdfMTgweDE4MC5qcGciIGJvcmRlcj0iMCI+PC9hPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSIiPjx0YWJsZSB3aWR0aD0iMTAwJSIgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2VsbHBhZGRpbmc9IjAiPjx0cj48dGQ+PHRhYmxlIHdpZHRoPSIxMDAlIiBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMCI+PHRyPjx0ZD48ZGl2IHN0eWxlPSJmb250LXNpemU6IDEyLjBweDtoZWlnaHQ6IDE0LjBweDtsaW5lLWhlaWdodDogMTQuMHB4O292ZXJmbG93OiBoaWRkZW47Ij48YSBocmVmPSJodHRwczovL2l0ZW0udGFvYmFvLmNvbS9pdGVtLmh0bT9pZD01NjE0MDcwMDE0NjgiIHRhcmdldD0iX2JsYW5rIiBzdHlsZT0idGV4dC1kZWNvcmF0aW9uOiBub25lO2NvbG9yOiAjZmZmZmZmOyI+0J7RhNC40YbQuNCw0LvRjNC90YvQuSDQv9C+0LTQu9C40L3QvdGL0Lkg0LDQu9Cz0L7RgNC40YLQvCBPcGVuQ1Yg0YDQsNGB0L/QsNC00LDQtdGC0YHRjyDQvdCwINC+0YHQvdC+0LLQtSBQeXRob24g0LggQyArKyBXaW5kb3dzINC4IFVidW50dSDRgNCw0LfQstC10YDRgtGL0LLQsNC90LjQtSDRg9GH0LXQsdC90YvRhSDQutC90LjQsyBPcGVuQ1Yg0YPRh9C10LHQvdGL0YUg0LrQvdC40LMgQyArKyDQuCBQeXRob24gQ29kZSBEaXNhc3NlbWJseSBBbGdvcml0aG0gRGVzaWduINCf0YDQvtCz0YDQsNC80LzQsCDQv9GA0L7Qs9GA0LDQvNC80Ysg0L/RgNC+0LPRgNCw0LzQvNGLLjwvYT48L2Rpdj48L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBzdHlsZT0iY29sb3I6ICNmZmZmZmY7Ij7QptC10L3QsCDQv9GA0L7QtNCw0LbQuDo8c3BhbiBzdHlsZT0iZm9udC13ZWlnaHQ6IGJvbGQ7Ij7vv6UgNTEuMzU8L3NwYW4+PC9zcGFuPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PHRkIHdpZHRoPSIzNSIgaGVpZ2h0PSIzNSI+PGEgaHJlZj0iaHR0cHM6Ly9pdGVtLnRhb2Jhby5jb20vaXRlbS5odG0/aWQ9NTYxNDA3MDAxNDY4IiB0YXJnZXQ9Il9ibGFuayI+PGltZyBzcmM9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vaW1nZXh0cmEvaTEvVEIyNlQ5SmFwWFhYWGJ4WFhYWFhYWFhYWFhYLTM1MDQ3NTk5NS5wbmciIGFsdD0iIiB3aWR0aD0iMzUiIGhlaWdodD0iMzUiIGJvcmRlcj0iMCI+PC9hPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PHRkIHdpZHRoPSI2IiBzdHlsZT0ibGluZS0iPjwvdGQ+PHRkIHdpZHRoPSIxOTAiIGJnY29sb3I9IiMwMDkxZDIiIGJhY2tncm91bmQ9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vaW1nZXh0cmEvaTEvVEIyUHhtRGFwWFhYWGNkWFhYWFhYWFhYWFhYLTM1MDQ3NTk5NS5wbmciIHN0eWxlPSJiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246IDEwMC4wJSAxMDAuMCU7cGFkZGluZzogNS4wcHggMDsiPjx0YWJsZSB3aWR0aD0iMTgwIiBib3JkZXI9IjAiIGFsaWduPSJjZW50ZXIiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgc3R5bGU9Im1hcmdpbjogMCBhdXRvOyI+PHRyPjx0ZCBoZWlnaHQ9IjE4MCIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiIgc3R5bGU9ImZvbnQtc2l6ZTogMDsiPjxhIGhyZWY9Imh0dHBzOi8vaXRlbS50YW9iYW8uY29tL2l0ZW0uaHRtP2lkPTU2MzQwNDU1MDM2OSIgdGFyZ2V0PSJfYmxhbmsiPjxpbWcgc3JjPSJodHRwczovL2ltZy5hbGljZG4uY29tL2Jhby91cGxvYWRlZC9pMS8xOTMyMDE0NjU5L08xQ04wMTFrSHJqeDdmY1VWanNNcl8hITAtaXRlbV9waWMuanBnXzE4MHgxODAuanBnIiBib3JkZXI9IjAiPjwvYT48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0iIj48dGFibGUgd2lkdGg9IjEwMCUiIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIwIj48dHI+PHRkPjx0YWJsZSB3aWR0aD0iMTAwJSIgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2VsbHBhZGRpbmc9IjAiPjx0cj48dGQ+PGRpdiBzdHlsZT0iZm9udC1zaXplOiAxMi4wcHg7aGVpZ2h0OiAxNC4wcHg7bGluZS1oZWlnaHQ6IDE0LjBweDtvdmVyZmxvdzogaGlkZGVuOyI+PGEgaHJlZj0iaHR0cHM6Ly9pdGVtLnRhb2Jhby5jb20vaXRlbS5odG0/aWQ9NTYzNDA0NTUwMzY5IiB0YXJnZXQ9Il9ibGFuayIgc3R5bGU9InRleHQtZGVjb3JhdGlvbjogbm9uZTtjb2xvcjogI2ZmZmZmZjsiPtCe0YTQuNGG0LjQsNC70YzQvdCw0Y8g0L/QvtC00LvQuNC90L3QsNGPINGA0LDQvNC60LAg0LPQu9GD0LHQvtC60L7Qs9C+INC+0LHRg9GH0LXQvdC40Y8g0LLRhdC+0LQg0Lgg0L/RgNCw0LrRgtC40LrQsCDQstGF0L7QtCDQuCDQv9GA0LDQutGC0LjQutCwINCy0YHRgtGD0L/Qu9C10L3QuNGPINCyINC/0LjQujwvYT48L2Rpdj48L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBzdHlsZT0iY29sb3I6ICNmZmZmZmY7Ij7QptC10L3QsCDQv9GA0L7QtNCw0LbQuDo8c3BhbiBzdHlsZT0iZm9udC13ZWlnaHQ6IGJvbGQ7Ij7vv6UgNDIsMjU8L3NwYW4+PC9zcGFuPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PHRkIHdpZHRoPSIzNSIgaGVpZ2h0PSIzNSI+PGEgaHJlZj0iaHR0cHM6Ly9pdGVtLnRhb2Jhby5jb20vaXRlbS5odG0/aWQ9NTYzNDA0NTUwMzY5IiB0YXJnZXQ9Il9ibGFuayI+PGltZyBzcmM9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vaW1nZXh0cmEvaTEvVEIyNlQ5SmFwWFhYWGJ4WFhYWFhYWFhYWFhYLTM1MDQ3NTk5NS5wbmciIGFsdD0iIiB3aWR0aD0iMzUiIGhlaWdodD0iMzUiIGJvcmRlcj0iMCI+PC9hPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PHRkIHdpZHRoPSI2IiBzdHlsZT0ibGluZS0iPjwvdGQ+PC90cj48dHI+PHRkIGNvbHNwYW49IjkiIGhlaWdodD0iNiIgc3R5bGU9ImxpbmUtIj48L3RkPjwvdHI+PHRyPjx0ZCB3aWR0aD0iNiIgc3R5bGU9ImxpbmUtIj48L3RkPjx0ZCB3aWR0aD0iMTkwIiBiZ2NvbG9yPSIjMDA5MWQyIiBiYWNrZ3JvdW5kPSJodHRwczovL2ltZy5hbGljZG4uY29tL2ltZ2V4dHJhL2kxL1RCMlB4bURhcFhYWFhjZFhYWFhYWFhYWFhYWC0zNTA0NzU5OTUucG5nIiBzdHlsZT0iYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAuMCUgMTAwLjAlO3BhZGRpbmc6IDUuMHB4IDA7Ij48dGFibGUgd2lkdGg9IjE4MCIgYm9yZGVyPSIwIiBhbGlnbj0iY2VudGVyIiBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIHN0eWxlPSJtYXJnaW46IDAgYXV0bzsiPjx0cj48dGQgaGVpZ2h0PSIxODAiIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiIHN0eWxlPSJmb250LXNpemU6IDA7Ij48YSBocmVmPSJodHRwczovL2l0ZW0udGFvYmFvLmNvbS9pdGVtLmh0bT9pZD02MTEzMTAyMjk4NTgiIHRhcmdldD0iX2JsYW5rIj48aW1nIHNyYz0iaHR0cHM6Ly9pbWcuYWxpY2RuLmNvbS9iYW8vdXBsb2FkZWQvaTEvMTkzMjAxNDY1OS9PMUNOMDE3YTR2clQxa0hycXZRN0llVl8hITAtaXRlbV9waWMuanBnXzE4MHgxODAuanBnIiBib3JkZXI9IjAiPjwvYT48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0iIj48dGFibGUgd2lkdGg9IjEwMCUiIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIwIj48dHI+PHRkPjx0YWJsZSB3aWR0aD0iMTAwJSIgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2VsbHBhZGRpbmc9IjAiPjx0cj48dGQ+PGRpdiBzdHlsZT0iZm9udC1zaXplOiAxMi4wcHg7aGVpZ2h0OiAxNC4wcHg7bGluZS1oZWlnaHQ6IDE0LjBweDtvdmVyZmxvdzogaGlkZGVuOyI+PGEgaHJlZj0iaHR0cHM6Ly9pdGVtLnRhb2Jhby5jb20vaXRlbS5odG0/aWQ9NjExMzEwMjI5ODU4IiB0YXJnZXQ9Il9ibGFuayIgc3R5bGU9InRleHQtZGVjb3JhdGlvbjogbm9uZTtjb2xvcjogI2ZmZmZmZjsiPkFuZHJvaWTlvIDlj5HoibrmnK/mjqLntKIg5a6J5Y2T5byA5Y+R6KeG6aKR5pWZ56iL5Lmm57GNIOS7u+eOieWImuiRlzwvYT48L2Rpdj48L3RkPjwvdHI+PHRyPjx0ZD48c3BhbiBzdHlsZT0iY29sb3I6ICNmZmZmZmY7Ij7QptC10L3QsCDQv9GA0L7QtNCw0LbQuDo8c3BhbiBzdHlsZT0iZm9udC13ZWlnaHQ6IGJvbGQ7Ij7vv6UgNTEuMzU8L3NwYW4+PC9zcGFuPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PHRkIHdpZHRoPSIzNSIgaGVpZ2h0PSIzNSI+PGEgaHJlZj0iaHR0cHM6Ly9pdGVtLnRhb2Jhby5jb20vaXRlbS5odG0/aWQ9NjExMzEwMjI5ODU4IiB0YXJnZXQ9Il9ibGFuayI+PGltZyBzcmM9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vaW1nZXh0cmEvaTEvVEIyNlQ5SmFwWFhYWGJ4WFhYWFhYWFhYWFhYLTM1MDQ3NTk5NS5wbmciIGFsdD0iIiB3aWR0aD0iMzUiIGhlaWdodD0iMzUiIGJvcmRlcj0iMCI+PC9hPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PHRkIHdpZHRoPSI2IiBzdHlsZT0ibGluZS0iPjwvdGQ+PHRkIHdpZHRoPSIxOTAiIGJnY29sb3I9IiMwMDkxZDIiIGJhY2tncm91bmQ9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vaW1nZXh0cmEvaTEvVEIyUHhtRGFwWFhYWGNkWFhYWFhYWFhYWFhYLTM1MDQ3NTk5NS5wbmciIHN0eWxlPSJiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246IDEwMC4wJSAxMDAuMCU7cGFkZGluZzogNS4wcHggMDsiPjx0YWJsZSB3aWR0aD0iMTgwIiBib3JkZXI9IjAiIGFsaWduPSJjZW50ZXIiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iMCIgc3R5bGU9Im1hcmdpbjogMCBhdXRvOyI+PHRyPjx0ZCBoZWlnaHQ9IjE4MCIgYWxpZ249ImNlbnRlciIgYmdjb2xvcj0iI0ZGRkZGRiIgc3R5bGU9ImZvbnQtc2l6ZTogMDsiPjxhIGhyZWY9Imh0dHBzOi8vaXRlbS50YW9iYW8uY29tL2l0ZW0uaHRtP2lkPTYwMDIwODMxNzMwNyIgdGFyZ2V0PSJfYmxhbmsiPjxpbWcgc3JjPSJodHRwczovL2ltZy5hbGljZG4uY29tL2Jhby91cGxvYWRlZC9pMS8xOTMyMDE0NjU5L08xQ04wMTRqbGZuMTFrSHJveGFPd3JtXyEhMC1pdGVtX3BpYy5qcGdfMTgweDE4MC5qcGciIGJvcmRlcj0iMCI+PC9hPjwvdGQ+PC90cj48dHI+PHRkIHN0eWxlPSIiPjx0YWJsZSB3aWR0aD0iMTAwJSIgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2VsbHBhZGRpbmc9IjAiPjx0cj48dGQ+PHRhYmxlIHdpZHRoPSIxMDAlIiBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMCI+PHRyPjx0ZD48ZGl2IHN0eWxlPSJmb250LXNpemU6IDEyLjBweDtoZWlnaHQ6IDE0LjBweDtsaW5lLWhlaWdodDogMTQuMHB4O292ZXJmbG93OiBoaWRkZW47Ij48YSBocmVmPSJodHRwczovL2l0ZW0udGFvYmFvLmNvbS9pdGVtLmh0bT9pZD02MDAyMDgzMTczMDciIHRhcmdldD0iX2JsYW5rIiBzdHlsZT0idGV4dC1kZWNvcmF0aW9uOiBub25lO2NvbG9yOiAjZmZmZmZmOyI+5a6Y5pa55q2j54mIIFB5dGhvbumHj+WMluS6pOaYk++8muetlueVpeOAgeaKgOW3p+S4juWunuaImCDph4/ljJbmipXotYTkuI5QeXRob27or63oqIDnvJbnqIvmlZnnqIvkuabnsY0g5pWw5o2u5YiG5p6Q6YeP5YyW5oqV6LWE562W55Wl572R57uc54is6Jmr5bmz5Y+w5byA5Y+R5oqA5pyvPC9hPjwvZGl2PjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIHN0eWxlPSJjb2xvcjogI2ZmZmZmZjsiPtCm0LXQvdCwINC/0YDQvtC00LDQttC4OjxzcGFuIHN0eWxlPSJmb250LXdlaWdodDogYm9sZDsiPu+/pSA2NCwzNTwvc3Bhbj48L3NwYW4+PC90ZD48L3RyPjwvdGFibGU+PC90ZD48dGQgd2lkdGg9IjM1IiBoZWlnaHQ9IjM1Ij48YSBocmVmPSJodHRwczovL2l0ZW0udGFvYmFvLmNvbS9pdGVtLmh0bT9pZD02MDAyMDgzMTczMDciIHRhcmdldD0iX2JsYW5rIj48aW1nIHNyYz0iaHR0cHM6Ly9pbWcuYWxpY2RuLmNvbS9pbWdleHRyYS9pMS9UQjI2VDlKYXBYWFhYYnhYWFhYWFhYWFhYWFgtMzUwNDc1OTk1LnBuZyIgYWx0PSIiIHdpZHRoPSIzNSIgaGVpZ2h0PSIzNSIgYm9yZGVyPSIwIj48L2E+PC90ZD48L3RyPjwvdGFibGU+PC90ZD48L3RyPjwvdGFibGU+PC90ZD48dGQgd2lkdGg9IjYiIHN0eWxlPSJsaW5lLSI+PC90ZD48dGQgd2lkdGg9IjE5MCIgYmdjb2xvcj0iIzAwOTFkMiIgYmFja2dyb3VuZD0iaHR0cHM6Ly9pbWcuYWxpY2RuLmNvbS9pbWdleHRyYS9pMS9UQjJQeG1EYXBYWFhYY2RYWFhYWFhYWFhYWFgtMzUwNDc1OTk1LnBuZyIgc3R5bGU9ImJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjogMTAwLjAlIDEwMC4wJTtwYWRkaW5nOiA1LjBweCAwOyI+PHRhYmxlIHdpZHRoPSIxODAiIGJvcmRlcj0iMCIgYWxpZ249ImNlbnRlciIgY2VsbHBhZGRpbmc9IjAiIGNlbGxzcGFjaW5nPSIwIiBzdHlsZT0ibWFyZ2luOiAwIGF1dG87Ij48dHI+PHRkIGhlaWdodD0iMTgwIiBhbGlnbj0iY2VudGVyIiBiZ2NvbG9yPSIjRkZGRkZGIiBzdHlsZT0iZm9udC1zaXplOiAwOyI+PGEgaHJlZj0iaHR0cHM6Ly9pdGVtLnRhb2Jhby5jb20vaXRlbS5odG0/aWQ9NTkyODAwMjM5MDQzIiB0YXJnZXQ9Il9ibGFuayI+PGltZyBzcmM9Imh0dHBzOi8vaW1nLmFsaWNkbi5jb20vYmFvL3VwbG9hZGVkL2kxLzE5MzIwMTQ2NTkvTzFDTjAxR3ZkbDJNMWtIcm4zT2FSYWtfISEwLWl0ZW1fcGljLmpwZ18xODB4MTgwLmpwZyIgYm9yZGVyPSIwIj48L2E+PC90ZD48L3RyPjx0cj48dGQgc3R5bGU9IiI+PHRhYmxlIHdpZHRoPSIxMDAlIiBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMCI+PHRyPjx0ZD48dGFibGUgd2lkdGg9IjEwMCUiIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIwIj48dHI+PHRkPjxkaXYgc3R5bGU9ImZvbnQtc2l6ZTogMTIuMHB4O2hlaWdodDogMTQuMHB4O2xpbmUtaGVpZ2h0OiAxNC4wcHg7b3ZlcmZsb3c6IGhpZGRlbjsiPjxhIGhyZWY9Imh0dHBzOi8vaXRlbS50YW9iYW8uY29tL2l0ZW0uaHRtP2lkPTU5MjgwMDIzOTA0MyIgdGFyZ2V0PSJfYmxhbmsiIHN0eWxlPSJ0ZXh0LWRlY29yYXRpb246IG5vbmU7Y29sb3I6ICNmZmZmZmY7Ij7QntGE0LjRhtC40LDQu9GM0L3QsNGPINC/0L7QtNC70LjQvdC90LDRjyDRgdGD0LzQsNGB0YjQtdC00YjQsNGPINC70LXQutGG0LjRjyBKYXZhIDUgLdC1INC40LfQtNCw0L3QuNC1INGB0L7QtNC10YDQttC40YIgRFZEIENEUy48L2E+PC9kaXY+PC90ZD48L3RyPjx0cj48dGQ+PHNwYW4gc3R5bGU9ImNvbG9yOiAjZmZmZmZmOyI+0KbQtdC90LAg0L/RgNC+0LTQsNC20Lg6PHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkOyI+77+lIDkwLDM1PC9zcGFuPjwvc3Bhbj48L3RkPjwvdHI+PC90YWJsZT48L3RkPjx0ZCB3aWR0aD0iMzUiIGhlaWdodD0iMzUiPjxhIGhyZWY9Imh0dHBzOi8vaXRlbS50YW9iYW8uY29tL2l0ZW0uaHRtP2lkPTU5MjgwMDIzOTA0MyIgdGFyZ2V0PSJfYmxhbmsiPjxpbWcgc3JjPSJodHRwczovL2ltZy5hbGljZG4uY29tL2ltZ2V4dHJhL2kxL1RCMjZUOUphcFhYWFhieFhYWFhYWFhYWFhYWC0zNTA0NzU5OTUucG5nIiBhbHQ9IiIgd2lkdGg9IjM1IiBoZWlnaHQ9IjM1IiBib3JkZXI9IjAiPjwvYT48L3RkPjwvdHI+PC90YWJsZT48L3RkPjwvdHI+PC90YWJsZT48L3RkPjx0ZCB3aWR0aD0iNiIgc3R5bGU9ImxpbmUtIj48L3RkPjx0ZCB3aWR0aD0iMTkwIiBiZ2NvbG9yPSIjMDA5MWQyIiBiYWNrZ3JvdW5kPSJodHRwczovL2ltZy5hbGljZG4uY29tL2ltZ2V4dHJhL2kxL1RCMlB4bURhcFhYWFhjZFhYWFhYWFhYWFhYWC0zNTA0NzU5OTUucG5nIiBzdHlsZT0iYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAuMCUgMTAwLjAlO3BhZGRpbmc6IDUuMHB4IDA7Ij48dGFibGUgd2lkdGg9IjE4MCIgYm9yZGVyPSIwIiBhbGlnbj0iY2VudGVyIiBjZWxscGFkZGluZz0iMCIgY2VsbHNwYWNpbmc9IjAiIHN0eWxlPSJtYXJnaW46IDAgYXV0bzsiPjx0cj48dGQgaGVpZ2h0PSIxODAiIGFsaWduPSJjZW50ZXIiIGJnY29sb3I9IiNGRkZGRkYiIHN0eWxlPSJmb250LXNpemU6IDA7Ij48YSBocmVmPSJodHRwczovL2l0ZW0udGFvYmFvLmNvbS9pdGVtLmh0bT9pZD02MDU4OTExNTM0MjEiIHRhcmdldD0iX2JsYW5rIj48aW1nIHNyYz0iaHR0cHM6Ly9pbWcuYWxpY2RuLmNvbS9iYW8vdXBsb2FkZWQvaTEvMTkzMjAxNDY1OS9PMUNOMDFHSnZlSkcxa0hycHZndmllVl8hITItaXRlbV9waWMucG5nXzE4MHgxODAuanBnIiBib3JkZXI9IjAiPjwvYT48L3RkPjwvdHI+PHRyPjx0ZCBzdHlsZT0iIj48dGFibGUgd2lkdGg9IjEwMCUiIGJvcmRlcj0iMCIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIwIj48dHI+PHRkPjx0YWJsZSB3aWR0aD0iMTAwJSIgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2VsbHBhZGRpbmc9IjAiPjx0cj48dGQ+PGRpdiBzdHlsZT0iZm9udC1zaXplOiAxMi4wcHg7aGVpZ2h0OiAxNC4wcHg7bGluZS1oZWlnaHQ6IDE0LjBweDtvdmVyZmxvdzogaGlkZGVuOyI+PGEgaHJlZj0iaHR0cHM6Ly9pdGVtLnRhb2Jhby5jb20vaXRlbS5odG0/aWQ9NjA1ODkxMTUzNDIxIiB0YXJnZXQ9Il9ibGFuayIgc3R5bGU9InRleHQtZGVjb3JhdGlvbjogbm9uZTtjb2xvcjogI2ZmZmZmZjsiPtCa0L7QvNC/0YzRjtGC0LXRgNC90L7QtSDQt9GA0LXQvdC40LUg0Lgg0LPQu9GD0LHQvtC60L7QtSDQvtCx0YPRh9C10L3QuNC1INCk0LDQutGC0LjRh9C10YHQutC+0LUg0YHRgNCw0LbQtdC90LjQtTogbWF0bGFiLCBweXRob24g0LrQsNC6INC40L3RgdGC0YDRg9C80LXQvdGCPC9hPjwvZGl2PjwvdGQ+PC90cj48dHI+PHRkPjxzcGFuIHN0eWxlPSJjb2xvcjogI2ZmZmZmZjsiPtCm0LXQvdCwINC/0YDQvtC00LDQttC4OjxzcGFuIHN0eWxlPSJmb250LXdlaWdodDogYm9sZDsiPu+/pSA3MCw4NTwvc3Bhbj48L3NwYW4+PC90ZD48L3RyPjwvdGFibGU+PC90ZD48dGQgd2lkdGg9IjM1IiBoZWlnaHQ9IjM1Ij48YSBocmVmPSJodHRwczovL2l0ZW0udGFvYmFvLmNvbS9pdGVtLmh0bT9pZD02MDU4OTExNTM0MjEiIHRhcmdldD0iX2JsYW5rIj48aW1nIHNyYz0iaHR0cHM6Ly9pbWcuYWxpY2RuLmNvbS9pbWdleHRyYS9pMS9UQjI2VDlKYXBYWFhYYnhYWFhYWFhYWFhYWFgtMzUwNDc1OTk1LnBuZyIgYWx0PSIiIHdpZHRoPSIzNSIgaGVpZ2h0PSIzNSIgYm9yZGVyPSIwIj48L2E+PC90ZD48L3RyPjwvdGFibGU+PC90ZD48L3RyPjwvdGFibGU+PC90ZD48dGQgd2lkdGg9IjYiIHN0eWxlPSJsaW5lLSI+PC90ZD48L3RyPjx0cj48dGQgY29sc3Bhbj0iOSIgaGVpZ2h0PSI2IiBzdHlsZT0ibGluZS0iPjwvdGQ+PC90cj48L3RhYmxlPjwvdGQ+PC90cj48L3RhYmxlPjxwIHN0eWxlPSJtYXJnaW46IDAgMCA1LjBweCAwO292ZXJmbG93OiBoaWRkZW47Ij48aW1nIHNyYz0iaHR0cHM6Ly9pbWcuYWxpY2RuLmNvbS9pbWdleHRyYS9pNC9UMnM0bW9YSDhYWFhYWFhYWFgtMzUwNDc1OTk1LnBuZz9wPXJlY29tbWVuZF92Ml83MjczMDY2X2VuZF90b3BfMSI+PC9wPjxicj48ZGl2IHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO2ZvbnQtc2l6ZTogMTUuMHB4O2ZvbnQtd2VpZ2h0OiBib2xkO2hlaWdodDogMzAuMHB4O2xpbmUtaGVpZ2h0OiAzMC4wcHg7Ij7QktCy0LXQtNC10L3QuNC1PC9kaXY+PGJyPtCt0YLQsCDQutC90LjQs9CwINC/0YDQtdC00YHRgtCw0LLQu9GP0LXRgiDRgdC+0LHQvtC5INGA0LDRgdGI0LjRgNC10L3QvdGD0Y4g0LrQvdC40LPRgyBBbmRyb2lkLCDQutC+0YLQvtGA0LDRjyDQuNGB0L/QvtC70YzQt9GD0LXRgiDQutC+0LzQsdC40L3QsNGG0LjRjiDRgtC10L7RgNC40LgsINC40YHRhdC+0LTQvdC+0LPQviDQutC+0LTQsCDQuCDQv9GA0LDQutGC0LjQutC4LCDRh9GC0L7QsdGLINC+0LHRitGP0YHQvdC40YLRjCDQutC70Y7Rh9C10LLRi9C1INC80L7QvNC10L3RgtGLINGA0LDQt9GA0LDQsdC+0YLQutC4INC/0YDQuNC70L7QttC10L3QuNC5IEFuZHJvaWQg0YEg0LLRi9GB0L7QutC40Lwg0YPRgNC+0LLQvdC10Lwg0YPRgNC+0LLQvdGPLuacrOS5puS7juS4ieS4quaWuemdouadpee7hOe7h+WGheWuueOAgioqIO+8jCDku4vnu40gQW5kcm9pZCDlvIDlj5HogIXkuI3lrrnmmJPmjozmj6HnmoTkuIDkupvnn6Xor4bngrnvvJvnrKzkuowg57uT5ZCIIOe7k+WQiCBBbmRyb2lkIOa6kOS7o+eggeWSjOW6lOeUqOWxguW8gOWPkei/h+eoiyDvvIwg6J6N5Lya6LSv6YCaIO+8jCDku4vnu43kuIDkupvmr5TovoPmt7HlhaXnmoTnn6Xor4bngrnvvJvnrKzkuIkg77yMIOS7i+e7jeS4gOS6m+aguOW/g+aKgOacr+WSjCBBbmRyb2lkIOeahOaAp+iDveS8mOWMltCc0YvRgdC70YwuPGltZyBjbGFzcz0iZGVzY19hbmNob3IiIGlkPSJkZXNjLW1vZHVsZS0yIiBzcmM9Imh0dHBzOi8vYXNzZXRzLmFsaWNkbi5jb20va2lzc3kvMS4wLjAvYnVpbGQvaW1nbGF6eWxvYWQvc3BhY2ViYWxsLmdpZiI+PGJyPjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7Zm9udC1zaXplOiAxNS4wcHg7Zm9udC13ZWlnaHQ6IGJvbGQ7aGVpZ2h0OiAzMC4wcHg7bGluZS1oZWlnaHQ6IDMwLjBweDsiPtCe0LPQu9Cw0LLQu9C10L3QuNC1PC9kaXY+PGJyPtCT0LvQsNCy0LAgMSDQltC40LfQvdC10L3QvdGL0Lkg0YbQuNC60Lsg0Lgg0YDQtdC20LjQvCDQt9Cw0L/Rg9GB0LrQsCAvIDE8YnI+MS4xINCQ0L3QsNC70LjQtyDQttC40LfQvdC10L3QvdC+0LPQviDRhtC40LrQu9CwINCw0LrRgtC40LLQvdC+0YHRgtC4IC8gMTxicj4xLjEuMSDQkNC90LDQu9C40Lcg0LbQuNC30L3QtdC90L3QvtCz0L4g0YbQuNC60LvQsCDQsiDRgtC40L/QuNGH0L3Ri9GFINGB0LvRg9GH0LDRj9GFIC8gMjxicj4xLjEuMiDQkNC90LDQu9C40Lcg0LbQuNC30L3QtdC90L3QvtCz0L4g0YbQuNC60LvQsCDQsiDQvdC10L3QvtGA0LzQsNC70YzQvdGL0YUg0YPRgdC70L7QstC40Y/RhSAvIDg8YnI+MS4yINCg0LXQttC40Lwg0LfQsNC/0YPRgdC60LAg0LDQutGC0LjQstC90L7RgdGC0LggLyAxNjxicj4xLjIuMSDQoNC10LbQuNC8INC30LDQv9GD0YHQutCwINCw0LrRgtC40LLQvdC+0YHRgtC4IC8gMTY8YnI+MS4yLjIg0KTQu9Cw0LPQuCDQsNC60YLQuNCy0L3QvtGB0YLQuCAvIDI3PGJyPjEuMyDQn9GA0LDQstC40LvQsCDRgdC+0L/QvtGB0YLQsNCy0LvQtdC90LjRjyBJbnRlbnRGaWx0ZXIgLyAyODxicj7Qk9C70LDQstCwIDIg0JzQtdGF0LDQvdC40LfQvCDQnNCf0JogMzU8YnI+Mi4xINCX0L3QsNC60L7QvNGB0YLQstC+INGBIEFuZHJvaWQgSVBDIC8gMzU8YnI+Mi4yINCc0L3QvtCz0L7Qv9GA0L7RhtC10YHRgdC90YvQuSDRgNC10LbQuNC8INCyIEFuZHJvaWQgLyAzNjxicj4yLjIuMSDQktC60LvRjtGH0LjRgtGMINC80L3QvtCz0L7Qv9GA0L7RhtC10YHRgdC90YvQuSDRgNC10LbQuNC8IC8gMzY8YnI+Mi4yLjIg0JzQtdGF0LDQvdC40LfQvCDRgNCw0LHQvtGC0Ysg0LzQvdC+0LPQvtC/0YDQvtGG0LXRgdGB0L3QvtCz0L4g0YDQtdC20LjQvNCwIC8gMzk8YnI+Mi4zINCS0LLQtdC00LXQvdC40LUg0LIg0L7RgdC90L7QstC90YvQtSDQv9C+0L3Rj9GC0LjRjyBJUEMgLyA0Mjxicj4yLjMuMSDQodC10YDQuNCw0LvQuNC30YPQtdC80YvQuSDQuNC90YLQtdGA0YTQtdC50YEgLyA0Mjxicj4yLjMuMiDQoNCw0LfQtNC10LvRj9C10LzRi9C5INC40L3RgtC10YDRhNC10LnRgSAvIDQ1PGJyPiAyLjMuMyBCaW5kZXIgLyA0Nzxicj4yLjQg0JzQtdGC0L7QtCBJUEMg0LIgQW5kcm9pZCAvIDYxPGJyPjIuNC4xINCY0YHQv9C+0LvRjNC30L7QstCw0L3QuNC1IEJ1bmRsZS82MTxicj4yLjQuMiDQmNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtSDQvtCx0YnQtdCz0L4g0LTQvtGB0YLRg9C/0LAg0Log0YTQsNC50LvQsNC8IC8gNjI8YnI+Mi40LjMg0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LUg0JzQtdGB0YHQtdC90LTQttC10YDQsCAvIDY1PGJyPjIuNC40INCY0YHQv9C+0LvRjNC30L7QstCw0L3QuNC1IEFJREwvNzE8YnI+Mi40LjUg0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LUgQ29udGVudFByb3ZpZGVyIC8gOTE8YnI+Mi40LjYg0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LUgU29ja2V0LzEwMzxicj4yLjUg0J/Rg9C7INGB0L7QtdC00LjQvdC10L3QuNC5IEJpbmRlciAvIDExMjxicj4yLjYuINCS0YvQsdC10YDQuNGC0LUg0L/QvtC00YXQvtC00Y/RidC40Lkg0LzQtdGC0L7QtCDQn9CY0JjQmiAvIDEyMTxicj7Qk9C70LDQstCwIDMuINCh0LjRgdGC0LXQvNCwINGB0L7QsdGL0YLQuNC5IFZpZXcgLyAxMjI8YnI+My4xINCe0YHQvdC+0LLQvdGL0LUg0YHQstC10LTQtdC90LjRjyDQviDQv9GA0L7RgdC80L7RgtGA0LUgLyAxMjI8YnI+My4xLjEg0KfRgtC+INGC0LDQutC+0LUg0L/RgNC+0YHQvNC+0YLRgCAvIDEyMzxicj4zLjEuMiDQn9Cw0YDQsNC80LXRgtGA0Ysg0L/QvtC30LjRhtC40Lgg0L/RgNC+0YHQvNC+0YLRgNCwIC8gMTIzPGJyPjMuMS4zIE1vdGlvbkV2ZW50INC4IFRvdWNoU2xvcCAvIDEyNTxicj4zLjEuNCBWZWxvY2l0eVRyYWNrZXIsINC00LXRgtC10LrRgtC+0YAg0LbQtdGB0YLQvtCyINC4INGB0LrRgNC+0LvQu9C10YAgLyAxMjY8YnI+My4yINCh0LvQsNC50LQg0L/RgNC+0YHQvNC+0YLRgNCwIC8gMTI5PGJyPjMuMi4xINCY0YHQv9C+0LvRjNC30L7QstCw0L3QuNC1IFNjcm9sbFRvL3Njcm9sbEJ5IC8gMTI5PGJyPjMuMi4yINCg0LDQsdC+0YLQsCDRgSDQsNC90LjQvNCw0YbQuNC10LkgLyAxMzE8YnI+My4yLjMg0JjQt9C80LXQvdC10L3QuNC1INC/0LDRgNCw0LzQtdGC0YDQvtCyINC80LDQutC10YLQsCAvIDEzMzxicj4zLjIuNCDQodGA0LDQstC90LXQvdC40LUg0YDQsNC30LvQuNGH0L3Ri9GFINC80LXRgtC+0LTQvtCyINGB0LrQvtC70YzQttC10L3QuNGPIC8gMTMzPGJyPjMuMyDQrdC70LDRgdGC0LjRh9C90YvQuSDRgdC60L7Qu9GM0LfRj9GJ0LjQuSAvIDEzNTxicj4zLjMuMSDQmNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtSDRgdC60YDQvtC70LvQtdGA0LAgLyAxMzY8YnI+My4zLjIg0KfQtdGA0LXQtyDQsNC90LjQvNCw0YbQuNGOIC8gMTM4PGJyPjMuMy4zINCY0YHQv9C+0LvRjNC30L7QstCw0L3QuNC1INGB0YLRgNCw0YLQtdCz0LjQuSDQt9Cw0LTQtdGA0LbQutC4IC8gMTM5PGJyPjMuNCDQnNC10YXQsNC90LjQt9C8INGA0LDRgdC/0YDQtdC00LXQu9C10L3QuNGPINGB0L7QsdGL0YLQuNC5INC/0YDQvtGB0LzQvtGC0YDQsCAvIDE0MDxicj4zLjQuMSDQn9GA0LDQstC40LvQsCDQtNC+0YHRgtCw0LLQutC4INGB0L7QsdGL0YLQuNC5INC60LvQuNC60L7QsiAvIDE0MDxicj4zLjQuMiDQkNC90LDQu9C40Lcg0LjRgdGF0L7QtNC90L7Qs9C+INC60L7QtNCwINGA0LDRgdC/0YDQtdC00LXQu9C10L3QuNGPINGB0L7QsdGL0YLQuNC5IC8gMTQ0PGJyPjMuNSDQodC60L7Qu9GM0LfRj9GJ0LjQuSDQutC+0L3RhNC70LjQutGCINCy0LfQs9C70Y/QtNC+0LIgLyAxNTQ8YnI+My41LjEg0KDQsNGB0L/RgNC+0YHRgtGA0LDQvdC10L3QvdGL0LUg0YHRhtC10L3QsNGA0LjQuCDRgdC60L7Qu9GM0LfRj9GJ0LXQs9C+INC60L7QvdGE0LvQuNC60YLQsCAvIDE1NTxicj4zLjUuMiDQn9GA0LDQstC40LvQsCDRgNCw0LfRgNC10YjQtdC90LjRjyDRgdC60L7Qu9GM0LfRj9GJ0LjRhSDQutC+0L3RhNC70LjQutGC0L7QsiAvIDE1Njxicj4zLjUuMyDQoNC10YjQtdC90LjQtSDRgdC60L7Qu9GM0LfRj9GJ0LXQs9C+INC60L7QvdGE0LvQuNC60YLQsCAvIDE1Nzxicj7Qk9C70LDQstCwIDQuINCa0LDQuiDRgNCw0LHQvtGC0LDQtdGCINC/0YDQvtGB0LzQvtGC0YAgMTc0PGJyPjQuMSDQl9C90LDQutC+0LzRgdGC0LLQviDRgSBWaWV3Um9vdCDQuCBEZWNvclZpZXcgLyAxNzQ8YnI+NC4yINCf0L7QvdC40LzQsNC90LjQtSBNZWFzdXJlU3BlY3MgLyAxNzc8YnI+IDQuMi4xIE1lYXN1cmVTcGVjIC8gMTc3PGJyPjQuMi4yINCh0L7QvtGC0LLQtdGC0YHRgtCy0LjQtSDQvNC10LbQtNGDIE1lYXN1cmVTcGVjINC4IExheW91dFBhcmFtcyAvIDE3ODxicj40LjMg0KDQsNCx0L7Rh9C40Lkg0L/RgNC+0YbQtdGB0YEg0L/RgNC+0YHQvNC+0YLRgNCwIC8gMTgzPGJyPjQuMy4xINC/0YDQvtGG0LXRgdGBINC40LfQvNC10YDQtdC90LjRjyAvIDE4Mzxicj40LjMuMiDQn9GA0L7RhtC10YHRgSDQstC10YDRgdGC0LrQuCAvIDE5Mzxicj40LjMuMyDQn9GA0L7RhtC10YHRgSDQttC10YDQtdCx0YzQtdCy0LrQuCAvIDE5Nzxicj40LjQg0J/QvtC70YzQt9C+0LLQsNGC0LXQu9GM0YHQutC40Lkg0LLQuNC0IC8gMTk5PGJyPjQuNC4xINCa0LvQsNGB0YHQuNGE0LjQutCw0YbQuNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjNGB0LrQvtCz0L4g0L/RgNC10LTRgdGC0LDQstC70LXQvdC40Y8gLyAyMDA8YnI+NC40LjIg0J/RgNC40LzQtdGH0LDQvdC40Y8g0Log0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GM0YHQutC+0LzRgyDQv9GA0L7RgdC80L7RgtGA0YMgLyAyMDE8YnI+NC40LjMg0J/RgNC40LzQtdGAINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvRjNGB0LrQvtCz0L4g0L/RgNC10LTRgdGC0LDQstC70LXQvdC40Y8gLyAyMDI8YnI+NC40LjQg0JzRi9GB0LvQuCDQviDQvdCw0YHRgtGA0L7QudC60LUg0L/RgNC10LTRgdGC0LDQstC70LXQvdC40Y8gLyAyMTc8YnI+0JPQu9Cw0LLQsCA1LiDQntCx0YnQuNC1INGB0LLQtdC00LXQvdC40Y8g0L4gUmVtb3RlVmlld3MgMjE4PGJyPjUuMSDQn9GA0LjQvNC10L3QtdC90LjQtSBSZW1vdGVWaWV3cyAvIDIxODxicj41LjEuMSDQn9GA0LjQu9C+0LbQtdC90LjQtSBSZW1vdGVWaWV3cyDQsiDQv9Cw0L3QtdC70Lgg0YPQstC10LTQvtC80LvQtdC90LjQuSAvIDIxOTxicj41LjEuMi48YnI+NS4xLjMg0J7QsdC30L7RgCBQZW5kaW5nSW50ZW50IC8gMjI4PGJyPjUuMiDQktC90YPRgtGA0LXQvdC90LXQtSDRg9GB0YLRgNC+0LnRgdGC0LLQviBSZW1vdGVWaWV3cyAvIDIzMDxicj41LjMg0JfQvdCw0YfQtdC90LjQtSBSZW1vdGVWaWV3cyAvIDIzOTxicj7Qk9C70LDQstCwIDYuINCg0LjRgdGD0LXQvNGL0LUg0YTQsNC50LvRiyBBbmRyb2lkIDI0Mzxicj42LjEg0JLQstC10LTQtdC90LjQtSDQsiBEcmF3YWJsZXMgLyAyNDM8YnI+Ni4yINCa0LvQsNGB0YHQuNGE0LjQutCw0YbQuNGPINGH0LXRgNGC0LXQttC10LkgLyAyNDQ8YnI+IDYuMi4xIEJpdG1hcERyYXdhYmxlIC8gMjQ0PGJyPiA2LjIuMiBTaGFwZURyYXdhYmxlIC8gMjQ3PGJyPiA2LjIuMyBMYXllckRyYXdhYmxlIC8gMjUxPGJyPiA2LjIuNCBTdGF0ZUxpc3REcmF3YWJsZSAvIDI1Mzxicj4gNi4yLjUgTGV2ZWxMaXN0RHJhd2FibGUgLyAyNTU8YnI+IDYuMi42IFRyYW5zaXRpb25EcmF3YWJsZSAvIDI1Njxicj4gNi4yLjcgSW5zZXREcmF3YWJsZSAvIDI1Nzxicj4gNi4yLjggU2NhbGVEcmF3YWJsZSAvIDI1ODxicj4gNi4yLjkgQ2xpcERyYXdhYmxlIC8gMjYwPGJyPjYuMyDQn9C+0LvRjNC30L7QstCw0YLQtdC70YzRgdC60L7QtSDRgNC40YHQvtCy0LDQvdC40LUgLyAyNjI8YnI+0JPQu9Cw0LLQsCA3INCQ0L3QuNC80LDRhtC40Y8gQW5kcm9pZCDQsiAtZGVwdGggLdCw0L3QsNC70LjQtyAvIDI2NTxicj43LjEg0J/RgNC+0YHQvNC+0YLRgCDQsNC90LjQvNCw0YbQuNC4IC8gMjY1PGJyPjcuMS4xINCi0LjQv9GLINCw0L3QuNC80LDRhtC40Lgg0L/RgNC+0YHQvNC+0YLRgNCwIC8gMjY1PGJyPjcuMS4yINCQ0L3QuNC80LDRhtC40Y8g0L/QvtC70YzQt9C+0LLQsNGC0LXQu9GM0YHQutC+0LPQviDQv9GA0L7RgdC80L7RgtGA0LAgLyAyNzA8YnI+Ny4xLjMg0JrQsNC00YDQvtCy0LDRjyDQsNC90LjQvNCw0YbQuNGPIC8gMjcyPGJyPjcuMiDQodC/0LXRhtC40LDQu9GM0L3Ri9C1INGB0YbQtdC90LDRgNC40Lgg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8g0LDQvdC40LzQsNGG0LjQuCDQv9GA0L7RgdC80L7RgtGA0LAgLyAyNzM8YnI+IDcuMi4xIExheW91dEFuaW1hdGlvbiAvIDI3Mzxicj43LjIuMiDQrdGE0YTQtdC60YIg0L/QtdGA0LXQutC70Y7Rh9C10L3QuNGPINCw0LrRgtC40LLQvdC+0YHRgtC4IC8gMjc1PGJyPjcuMyDQkNC90LjQvNCw0YbQuNGPINGB0LLQvtC50YHRgtCyIC8gMjc2PGJyPjcuMy4xINCY0YHQv9C+0LvRjNC30L7QstCw0L3QuNC1INCw0L3QuNC80LDRhtC40Lgg0YHQstC+0LnRgdGC0LIgLyAyNzY8YnI+Ny4zLjIg0J/QvtC90LjQvNCw0L3QuNC1INC40L3RgtC10YDQv9C+0LvRj9GC0L7RgNC+0LIg0Lgg0L7RhtC10L3QvtC6IDI4MDxicj43LjMuMyDQodC70YPRiNCw0YLQtdC70Lgg0LDQvdC40LzQsNGG0LjQuCDRgdCy0L7QudGB0YLQsiAvIDI4Mjxicj43LjMuNCDQkNC90LjQvNCw0YbQuNGPINC/0YDQvtC40LfQstC+0LvRjNC90YvRhSDRgdCy0L7QudGB0YLQsiAvIDI4Mjxicj43LjMuNSDQmtCw0Log0YDQsNCx0L7RgtCw0LXRgiDQsNC90LjQvNCw0YbQuNGPINGB0LLQvtC50YHRgtCyIDI4ODxicj43LjQg0J/RgNC40LzQtdGH0LDQvdC40Y8g0L/QviDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjRjiDQsNC90LjQvNCw0YbQuNC4IC8gMjkyPGJyPtCT0LvQsNCy0LAgOC4g0J/QvtC90LjQvNCw0L3QuNC1IFdpbmRvdyDQuCBXaW5kb3dNYW5hZ2VyIDI5NDxicj44LjEg0J7QutC90L4g0Lgg0JzQtdC90LXQtNC20LXRgCDQvtC60L7QvSAvIDI5NDxicj44LjIg0JLQvdGD0YLRgNC10L3QvdC10LUg0YPRgdGC0YDQvtC50YHRgtCy0L4gV2luZG93cyAyOTc8YnI+OC4yLjEg0J/RgNC+0YbQtdGB0YEg0LTQvtCx0LDQstC70LXQvdC40Y8g0L7QutC90LAgLyAyOTg8YnI+OC4yLjIg0J/RgNC+0YbQtdGB0YEg0YPQtNCw0LvQtdC90LjRjyDQvtC60L3QsCAvIDMwMTxicj44LjIuMyDQn9GA0L7RhtC10YHRgSDQvtCx0L3QvtCy0LvQtdC90LjRjyDQvtC60L3QsCAvIDMwMzxicj44LjMg0J/RgNC+0YbQtdGB0YEg0YHQvtC30LTQsNC90LjRjyDQvtC60L3QsCAvIDMwNDxicj44LjMuMSDQn9GA0L7RhtC10YHRgSDRgdC+0LfQtNCw0L3QuNGPINC+0LrQvdCwIEFjdGl2aXR5LzMwNDxicj44LjMuMiDQn9GA0L7RhtC10YHRgSDRgdC+0LfQtNCw0L3QuNGPINC+0LrQvdCwINC00LjQsNC70L7Qs9C+0LLQvtCz0L4g0L7QutC90LAgLyAzMDg8YnI+OC4zLjMg0J/RgNC+0YbQtdGB0YEg0YHQvtC30LTQsNC90LjRjyDQvtC60L3QsCBUb2FzdC8zMTE8YnI+0JPQu9Cw0LLQsCA5LiDQoNCw0LHQvtGH0LjQuSDQv9GA0L7RhtC10YHRgSDRh9C10YLRi9GA0LXRhSDQutC+0LzQv9C+0L3QtdC90YLQvtCyIDMxNjxicj45LjEg0KDQsNCx0L7Rh9C10LUg0YHQvtGB0YLQvtGP0L3QuNC1INGH0LXRgtGL0YDQtdGFINC+0YHQvdC+0LLQvdGL0YUg0LrQvtC80L/QvtC90LXQvdGC0L7QsiAvIDMxNjxicj45LjIg0KDQsNCx0L7Rh9C40Lkg0L/RgNC+0YbQtdGB0YEg0LTQtdGP0YLQtdC70YzQvdC+0YHRgtC4IC8gMzE4PGJyPjkuMyDQoNCw0LHQvtGH0LjQuSDQv9GA0L7RhtC10YHRgSDRgdC10YDQstC40YHQsCAvIDMzNjxicj45LjMuMSDQn9GA0L7RhtC10YHRgSDQt9Cw0L/Rg9GB0LrQsCDRgdC70YPQttCx0YsgLyAzMzY8YnI+OS4zLjIg0J/RgNC+0YbQtdGB0YEg0L/RgNC40LLRj9C30LrQuCDRgdC70YPQttCx0YsgLyAzNDQ8YnI+OS40INCg0LDQsdC+0YfQuNC5INC/0YDQvtGG0LXRgdGBIEJyb2FkY2FzdFJlY2VpdmVyIC8gMzUyPGJyPjkuNC4xINCf0YDQvtGG0LXRgdGBINGA0LXQs9C40YHRgtGA0LDRhtC40Lgg0LTQu9GPINCy0LXRidCw0L3QuNGPIDM1Mzxicj45LjQuMiDlub/mkq3nmoTlj5HpgIHlkozmjqXmlLbov4fnqIsgLyAzNTY8YnI+OS41INCg0LDQsdC+0YfQuNC5INC/0YDQvtGG0LXRgdGBIENvbnRlbnRQcm92aWRlciAvIDM2Mjxicj7Qk9C70LDQstCwIDEwLiDQnNC10YXQsNC90LjQt9C8INGB0L7QvtCx0YnQtdC90LjQuSBBbmRyb2lkIDM3Mjxicj4xMC4xINCe0LHQt9C+0YAg0LzQtdGF0LDQvdC40LfQvNCwINGB0L7QvtCx0YnQtdC90LjQuSBBbmRyb2lkIC8gMzczPGJyPjEwLjIg0JDQvdCw0LvQuNC3INC80LXRhdCw0L3QuNC30LzQsCDRgdC+0L7QsdGJ0LXQvdC40LkgQW5kcm9pZCAvIDM3NTxicj4xMC4yLjEg0JrQsNC6INGA0LDQsdC+0YLQsNC10YIgVGhyZWFkTG9jYWwgMzc1PGJyPjEwLjIuMiDQmtCw0Log0YDQsNCx0L7RgtCw0Y7RgiDQvtGH0LXRgNC10LTQuCDRgdC+0L7QsdGJ0LXQvdC40LkgMzgwPGJyPjEwLjIuMyDQmtCw0Log0YDQsNCx0L7RgtCw0Y7RgiDQv9C10YLQu9C40YLQtdC70LggMzgzPGJyPjEwLjIuNCDQmtCw0Log0YDQsNCx0L7RgtCw0Y7RgiDQvtCx0YDQsNCx0L7RgtGH0LjQutC4IDM4NTxicj4xMC4zLiDQptC40LrQuyDRgdC+0L7QsdGJ0LXQvdC40Lkg0LTQu9GPINC+0YHQvdC+0LLQvdC+0LPQviDQv9C+0YLQvtC60LAgMzg5PGJyPtCT0LvQsNCy0LAgMTEuINCf0L7RgtC+0LrQuCBBbmRyb2lkINC4INC/0YPQu9GLINC/0L7RgtC+0LrQvtCyIDM5MTxicj4xMS4xLiDQntGB0L3QvtCy0L3Ri9C1INC4INC00L7Rh9C10YDQvdC40LUg0L/QvtGC0L7QutC4IDM5Mjxicj4xMS4yINCk0L7RgNC80LAg0YDQtdC30YzQsdGLINCyIEFuZHJvaWQgMzkyPGJyPiAxMS4yLjEgQXN5bmNUYXNrIC8gMzkyPGJyPjExLjIuMiDQmtCw0Log0YDQsNCx0L7RgtCw0LXRgiBBc3luY1Rhc2sgMzk1PGJyPiAxMS4yLjMgSGFuZGxlclRocmVhZCAvIDQwMjxicj4gMTEuMi40IEludGVudFNlcnZpY2UgLyA0MDM8YnI+MTEuMyDQn9GD0LvRiyDQv9C+0YLQvtC60L7QsiDQsiBBbmRyb2lkLzQwNjxicj4gMTEuMy4xIFRocmVhZFBvb2xFeGVjdXRvciAvIDQwNzxicj4xMS4zLjIg0JrQu9Cw0YHRgdC40YTQuNC60LDRhtC40Y8g0L/Rg9C70L7QsiDQv9C+0YLQvtC60L7QsiAvIDQxMDxicj7Qk9C70LDQstCwIDEyLiDQl9Cw0LPRgNGD0LfQutCwINC4INC60Y3RiNC40YDQvtCy0LDQvdC40LUg0YDQsNGB0YLRgNC+0LLRi9GFINC40LfQvtCx0YDQsNC20LXQvdC40LkgLyA0MTM8YnI+MTIuMSBCaXRtYXDnmoTpq5jmlYjliqDovb0gLyA0MTQ8YnI+MTIuMiDQodGC0YDQsNGC0LXQs9C40Lgg0LrRjdGI0LjRgNC+0LLQsNC90LjRjyDQsiBBbmRyb2lkIDQxNzxicj4gMTIuMi4xIExydUNhY2hlIC8gNDE4PGJyPiAxMi4yLjIgRGlza0xydUNhY2hlIC8gNDE5PGJyPjEyLjIuMyDQoNC10LDQu9C40LfQsNGG0LjRjyBJbWFnZUxvYWRlci80MjQ8YnI+MTIuMyDQmNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtSBJbWFnZUxvYWRlciAvIDQ0MTxicj4xMi4zLjEg0K3RhNGE0LXQutGC0Ysg0YTQvtGC0L7RgdGC0LXQvdGLIC8gNDQxPGJyPjEyLjMuMiDQpNC10L3QvtC80LXQvSDQt9Cw0LLQuNGB0LDQvdC40Y8g0L7Qv9GC0LjQvNC40LfQuNGA0L7QstCw0L3QvdC+0LPQviDRgdC/0LjRgdC60LAgLyA0NDY8YnI+0JPQu9Cw0LLQsCAxMyDQmtC+0LzQv9C70LXQutGB0L3Ri9C1INGC0LXRhdC90L7Qu9C+0LPQuNC4IDQ0ODxicj4xMy4xINCY0YHQv9C+0LvRjNC30YPQudGC0LUgQ3Jhc2hIYW5kbGVyINC00LvRjyDQv9C+0LvRg9GH0LXQvdC40Y8g0LjQvdGE0L7RgNC80LDRhtC40Lgg0L4g0YHQsdC+0LUg0L/RgNC40LvQvtC20LXQvdC40Y8gLyA0NDk8YnI+MTMuMiDQmNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtSDQvNGD0LvRjNGC0LjQtNC10LrRgdCwINC00LvRjyDQvtC/0YDQtdC00LXQu9C10L3QuNGPINC60L7Qu9C40YfQtdGB0YLQstCwINC80LXRgtC+0LTQvtCyLCDQstGL0YXQvtC00Y/RidC40YUg0LfQsCDQv9GA0LXQtNC10LvRiyAvIDQ1NTxicj4xMy4zINCi0LXRhdC90L7Qu9C+0LPQuNGPINC00LjQvdCw0LzQuNGH0LXRgdC60L7QuSDQt9Cw0LPRgNGD0LfQutC4IEFuZHJvaWQgLyA0NjM8YnI+MTMuNCDQn9GA0LXQtNCy0LDRgNC40YLQtdC70YzQvdCw0Y8g0LTQtdC60L7QvNC/0LjQu9GP0YbQuNGPIDQ2OTxicj4xMy40LjEg0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LUgZGV4MmphciDQuCBqZC1ndWkg0LTQu9GPINC00LXQutC+0LzQv9C40LvRj9GG0LjQuCBhcGsvNDcwPGJyPjEzLjQuMiDkvb/nlKhhcGt0b29s5a+5YXBr6L+b6KGM5LqM5qyh5omT5YyFIC8gNDcwPGJyPtCT0LvQsNCy0LAgMTQuINCf0YDQvtCz0YDQsNC80LzQuNGA0L7QstCw0L3QuNC1IEpOSSDQuCBOREsgNDczPGJyPjE0LjEg0J/RgNC+0YbQtdGB0YEg0YDQsNC30YDQsNCx0L7RgtC60LggSk5JIC8gNDc0PGJyPjE0LjIg0J/RgNC+0YbQtdGB0YEg0YDQsNC30YDQsNCx0L7RgtC60Lgg0J3QlNCaIC8gNDc4PGJyPjE0LjMg0KLQuNC/0Ysg0LTQsNC90L3Ri9GFIEpOSSDQuCDRgdC40LPQvdCw0YLRg9GA0Ysg0YLQuNC/0L7QsiA0ODQ8YnI+MTQuNCDQn9GA0L7RhtC10YHRgSBKTkkt0LLRi9C30L7QstCwINC80LXRgtC+0LTQvtCyIEphdmEgLyA0ODY8YnI+0JPQu9Cw0LLQsCAxNS4g0J7Qv9GC0LjQvNC40LfQsNGG0LjRjyDQv9GA0L7QuNC30LLQvtC00LjRgtC10LvRjNC90L7RgdGC0LggQW5kcm9pZCA0ODk8YnI+MTUuMSDQnNC10YLQvtC0INC+0L/RgtC40LzQuNC30LDRhtC40Lgg0L/RgNC+0LjQt9Cy0L7QtNC40YLQtdC70YzQvdC+0YHRgtC4IEFuZHJvaWQgLyA0OTA8YnI+MTUuMS4xINCe0L/RgtC40LzQuNC30LDRhtC40Y8g0LzQsNC60LXRgtCwIC8gNDkwPGJyPjE1LjEuMiDQntC/0YLQuNC80LjQt9Cw0YbQuNGPINGH0LXRgNGC0LXQttCwIDQ5Mzxicj4xNS4xLjMg0J7Qv9GC0LjQvNC40LfQsNGG0LjRjyDRg9GC0LXRh9C60Lgg0L/QsNC80Y/RgtC4IDQ5Mzxicj4xNS4xLjQg0J7Qv9GC0LjQvNC40LfQsNGG0LjRjyDRgdC60L7RgNC+0YHRgtC4INC+0YLQstC10YLQsCDQuCDQsNC90LDQu9C40Lcg0LbRg9GA0L3QsNC70LAgQU5SIC8gNDk2PGJyPjE1LjEuNSDQntC/0YLQuNC80LjQt9Cw0YbQuNGPIExpc3RWaWV3INC4IEJpdG1hcCAvIDUwMTxicj4xNS4xLjYg0J7Qv9GC0LjQvNC40LfQsNGG0LjRjyDQv9C+0YLQvtC60LAgLyA1MDE8YnI+MTUuMS43INCd0LXQutC+0YLQvtGA0YvQtSDQv9GA0LXQtNC70L7QttC10L3QuNGPINC/0L4g0L7Qv9GC0LjQvNC40LfQsNGG0LjQuCDQv9GA0L7QuNC30LLQvtC00LjRgtC10LvRjNC90L7RgdGC0LggLyA1MDE8YnI+MTUuMiDQmNC90YHRgtGA0YPQvNC10L3RgiBNQVQg0LTQu9GPINCw0L3QsNC70LjQt9CwINGD0YLQtdGH0LXQuiDQv9Cw0LzRj9GC0LggLyA1MDI8YnI+MTUuMyDmj5Dpq5jnqIvluo/nmoTlj6/nu7TmiqTmgKcgLyA1MDY8aW1nIGNsYXNzPSJkZXNjX2FuY2hvciIgaWQ9ImRlc2MtbW9kdWxlLTMiIHNyYz0iaHR0cHM6Ly9hc3NldHMuYWxpY2RuLmNvbS9raXNzeS8xLjAuMC9idWlsZC9pbWdsYXp5bG9hZC9zcGFjZWJhbGwuZ2lmIj48YnI+PGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2VlZWVlZTtmb250LXNpemU6IDE1LjBweDtmb250LXdlaWdodDogYm9sZDtoZWlnaHQ6IDMwLjBweDtsaW5lLWhlaWdodDogMzAuMHB4OyI+0L7QsSDQsNCy0YLQvtGA0LU8L2Rpdj48YnI+5Lu7546J5Yia77yM55m+5bqm5YWs5Y+4QW5kcm9pZOmrmOe6p+W3peeoi+W4iO+8jOehleWjq+avleS4muS6juS4reWbveenkeWtpuaKgOacr+Wkp+Wtpu+8jOWcqENTRE7lj5HooajlpJrnr4fpq5jotKjph4/nmoTmioDmnK/mlofnq6Dlubblub/ojrflpb3or4TvvIzlubblpJrmrKHlnKhHaXRIdWLkuIrmj5DkuqTlvIDmupDpobnnm67vvIzlhYjlkI7lnKjohb7orq/jgIHliJvmlrDlt6XlnLrlkoznmb7luqbku47kuotBbmRyb2lk5byA5Y+R77yM55uu5YmN5Zyo55m+5bqm5YWs5Y+45Y+C5LiO55m+5bqm5omL5py65Y2r5aOr55qE5byA5Y+R5bel5L2c44CCPGltZyBjbGFzcz0iZGVzY19hbmNob3IiIGlkPSJkZXNjLW1vZHVsZS00IiBzcmM9Imh0dHBzOi8vYXNzZXRzLmFsaWNkbi5jb20va2lzc3kvMS4wLjAvYnVpbGQvaW1nbGF6eWxvYWQvc3BhY2ViYWxsLmdpZiI+PGJyPjxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNlZWVlZWU7Zm9udC1zaXplOiAxNS4wcHg7Zm9udC13ZWlnaHQ6IGJvbGQ7aGVpZ2h0OiAzMC4wcHg7bGluZS1oZWlnaHQ6IDMwLjBweDsiPtCg0LXQutC+0LzQtdC90LTRg9C10LzQsNGPINGA0LXQutC+0LzQtdC90LTQsNGG0LjRjzwvZGl2Pjxicj7mnKzkuabkvqfph43kuo5BbmRyb2lk55+l6K+G55qE5L2T57O75YyW5ZKM57O757uf5bel5L2c5py65Yi255qE5YiG5p6Q77yM6YCa6L+H5pys5Lmm55qE5a2m5Lmg5Y+v5Lul5p6B5aSn5Zyw5o+Q6auY5byA5Y+R6ICF55qEQW5kcm9pZOaKgOacr+awtOW5s++8jOS7juiAjOabtOWKoOmrmOaViOWcsOaIkOS4uumrmOe6p+W8gOWPkeiAheOAguiAjOWvueS6jumrmOe6p+W8gOWPkeiAheadpeivtO+8jOS7jeeEtuWPr+S7peS7juacrOS5pueahOefpeivhuS9k+ezu+S4reiOt+ebiuOAgjwvcD4=
Продавец:电子工业出版社旗舰店
Адрес:Пекин
Рейтинг:
Всего отзывов:0
Положительных:0
Добавить в корзину
- Информация о товаре
- Фотографии
|
Введение
Эта книга представляет собой расширенную книгу Android, которая использует комбинацию теории, исходного кода и практики, чтобы объяснить ключевые моменты разработки приложений Android с высоким уровнем уровня.本书从三个方面来组织内容。** , 介绍 Android 开发者不容易掌握的一些知识点;第二 结合 结合 Android 源代码和应用层开发过程 , 融会贯通 , 介绍一些比较深入的知识点;第三 , 介绍一些核心技术和 Android 的性能优化Мысль.
Оглавление
Глава 1 Жизненный цикл и режим запуска / 1
1.1 Анализ жизненного цикла активности / 1
1.1.1 Анализ жизненного цикла в типичных случаях / 2
1.1.2 Анализ жизненного цикла в ненормальных условиях / 8
1.2 Режим запуска активности / 16
1.2.1 Режим запуска активности / 16
1.2.2 Флаги активности / 27
1.3 Правила сопоставления IntentFilter / 28
Глава 2 Механизм МПК 35
2.1 Знакомство с Android IPC / 35
2.2 Многопроцессный режим в Android / 36
2.2.1 Включить многопроцессный режим / 36
2.2.2 Механизм работы многопроцессного режима / 39
2.3 Введение в основные понятия IPC / 42
2.3.1 Сериализуемый интерфейс / 42
2.3.2 Разделяемый интерфейс / 45
2.3.3 Binder / 47
2.4 Метод IPC в Android / 61
2.4.1 Использование Bundle/61
2.4.2 Использование общего доступа к файлам / 62
2.4.3 Использование Мессенджера / 65
2.4.4 Использование AIDL/71
2.4.5 Использование ContentProvider / 91
2.4.6 Использование Socket/103
2.5 Пул соединений Binder / 112
2.6. Выберите подходящий метод ПИИК / 121
Глава 3. Система событий View / 122
3.1 Основные сведения о просмотре / 122
3.1.1 Что такое просмотр / 123
3.1.2 Параметры позиции просмотра / 123
3.1.3 MotionEvent и TouchSlop / 125
3.1.4 VelocityTracker, детектор жестов и скроллер / 126
3.2 Слайд просмотра / 129
3.2.1 Использование ScrollTo/scrollBy / 129
3.2.2 Работа с анимацией / 131
3.2.3 Изменение параметров макета / 133
3.2.4 Сравнение различных методов скольжения / 133
3.3 Эластичный скользящий / 135
3.3.1 Использование скроллера / 136
3.3.2 Через анимацию / 138
3.3.3 Использование стратегий задержки / 139
3.4 Механизм распределения событий просмотра / 140
3.4.1 Правила доставки событий кликов / 140
3.4.2 Анализ исходного кода распределения событий / 144
3.5 Скользящий конфликт взглядов / 154
3.5.1 Распространенные сценарии скользящего конфликта / 155
3.5.2 Правила разрешения скользящих конфликтов / 156
3.5.3 Решение скользящего конфликта / 157
Глава 4. Как работает просмотр 174
4.1 Знакомство с ViewRoot и DecorView / 174
4.2 Понимание MeasureSpecs / 177
4.2.1 MeasureSpec / 177
4.2.2 Соответствие между MeasureSpec и LayoutParams / 178
4.3 Рабочий процесс просмотра / 183
4.3.1 процесс измерения / 183
4.3.2 Процесс верстки / 193
4.3.3 Процесс жеребьевки / 197
4.4 Пользовательский вид / 199
4.4.1 Классификация пользовательского представления / 200
4.4.2 Примечания к пользовательскому просмотру / 201
4.4.3 Пример пользовательского представления / 202
4.4.4 Мысли о настройке представления / 217
Глава 5. Общие сведения о RemoteViews 218
5.1 Применение RemoteViews / 218
5.1.1 Приложение RemoteViews в панели уведомлений / 219
5.1.2.
5.1.3 Обзор PendingIntent / 228
5.2 Внутреннее устройство RemoteViews / 230
5.3 Значение RemoteViews / 239
Глава 6. Рисуемые файлы Android 243
6.1 Введение в Drawables / 243
6.2 Классификация чертежей / 244
6.2.1 BitmapDrawable / 244
6.2.2 ShapeDrawable / 247
6.2.3 LayerDrawable / 251
6.2.4 StateListDrawable / 253
6.2.5 LevelListDrawable / 255
6.2.6 TransitionDrawable / 256
6.2.7 InsetDrawable / 257
6.2.8 ScaleDrawable / 258
6.2.9 ClipDrawable / 260
6.3 Пользовательское рисование / 262
Глава 7 Анимация Android в -depth -анализ / 265
7.1 Просмотр анимации / 265
7.1.1 Типы анимации просмотра / 265
7.1.2 Анимация пользовательского просмотра / 270
7.1.3 Кадровая анимация / 272
7.2 Специальные сценарии использования анимации просмотра / 273
7.2.1 LayoutAnimation / 273
7.2.2 Эффект переключения активности / 275
7.3 Анимация свойств / 276
7.3.1 Использование анимации свойств / 276
7.3.2 Понимание интерполяторов и оценок 280
7.3.3 Слушатели анимации свойств / 282
7.3.4 Анимация произвольных свойств / 282
7.3.5 Как работает анимация свойств 288
7.4 Примечания по использованию анимации / 292
Глава 8. Понимание Window и WindowManager 294
8.1 Окно и Менеджер окон / 294
8.2 Внутреннее устройство Windows 297
8.2.1 Процесс добавления окна / 298
8.2.2 Процесс удаления окна / 301
8.2.3 Процесс обновления окна / 303
8.3 Процесс создания окна / 304
8.3.1 Процесс создания окна Activity/304
8.3.2 Процесс создания окна диалогового окна / 308
8.3.3 Процесс создания окна Toast/311
Глава 9. Рабочий процесс четырех компонентов 316
9.1 Рабочее состояние четырех основных компонентов / 316
9.2 Рабочий процесс деятельности / 318
9.3 Рабочий процесс сервиса / 336
9.3.1 Процесс запуска службы / 336
9.3.2 Процесс привязки службы / 344
9.4 Рабочий процесс BroadcastReceiver / 352
9.4.1 Процесс регистрации для вещания 353
9.4.2 广播的发送和接收过程 / 356
9.5 Рабочий процесс ContentProvider / 362
Глава 10. Механизм сообщений Android 372
10.1 Обзор механизма сообщений Android / 373
10.2 Анализ механизма сообщений Android / 375
10.2.1 Как работает ThreadLocal 375
10.2.2 Как работают очереди сообщений 380
10.2.3 Как работают петлители 383
10.2.4 Как работают обработчики 385
10.3. Цикл сообщений для основного потока 389
Глава 11. Потоки Android и пулы потоков 391
11.1. Основные и дочерние потоки 392
11.2 Форма резьбы в Android 392
11.2.1 AsyncTask / 392
11.2.2 Как работает AsyncTask 395
11.2.3 HandlerThread / 402
11.2.4 IntentService / 403
11.3 Пулы потоков в Android/406
11.3.1 ThreadPoolExecutor / 407
11.3.2 Классификация пулов потоков / 410
Глава 12. Загрузка и кэширование растровых изображений / 413
12.1 Bitmap的高效加载 / 414
12.2 Стратегии кэширования в Android 417
12.2.1 LruCache / 418
12.2.2 DiskLruCache / 419
12.2.3 Реализация ImageLoader/424
12.3 Использование ImageLoader / 441
12.3.1 Эффекты фотостены / 441
12.3.2 Феномен зависания оптимизированного списка / 446
Глава 13 Комплексные технологии 448
13.1 Используйте CrashHandler для получения информации о сбое приложения / 449
13.2 Использование мультидекса для определения количества методов, выходящих за пределы / 455
13.3 Технология динамической загрузки Android / 463
13.4 Предварительная декомпиляция 469
13.4.1 Использование dex2jar и jd-gui для декомпиляции apk/470
13.4.2 使用apktool对apk进行二次打包 / 470
Глава 14. Программирование JNI и NDK 473
14.1 Процесс разработки JNI / 474
14.2 Процесс разработки НДК / 478
14.3 Типы данных JNI и сигнатуры типов 484
14.4 Процесс JNI-вызова методов Java / 486
Глава 15. Оптимизация производительности Android 489
15.1 Метод оптимизации производительности Android / 490
15.1.1 Оптимизация макета / 490
15.1.2 Оптимизация чертежа 493
15.1.3 Оптимизация утечки памяти 493
15.1.4 Оптимизация скорости ответа и анализ журнала ANR / 496
15.1.5 Оптимизация ListView и Bitmap / 501
15.1.6 Оптимизация потока / 501
15.1.7 Некоторые предложения по оптимизации производительности / 501
15.2 Инструмент MAT для анализа утечек памяти / 502
15.3 提高程序的可维护性 / 506
об авторе
任玉刚,百度公司Android高级工程师,硕士毕业于中国科学技术大学,在CSDN发表多篇高质量的技术文章并广获好评,并多次在GitHub上提交开源项目,先后在腾讯、创新工场和百度从事Android开发,目前在百度公司参与百度手机卫士的开发工作。
Рекомендуемая рекомендация
本书侧重于Android知识的体系化和系统工作机制的分析,通过本书的学习可以极大地提高开发者的Android技术水平,从而更加高效地成为高级开发者。而对于高级开发者来说,仍然可以从本书的知识体系中获益。