Ik had er misschien iets aan als ik em zelf niet was tegengekomenquote:Op woensdag 3 februari 2016 20:16 schreef robin007bond het volgende:
[..]
https://stackoverflow.com(...)upload-with-symfony2
Heb je hier wat aan?
1 | The class 'Symfony\Component\HttpFoundation\File\UploadedFile' was not found in the chain configured namespaces UserBundle\Entity, BlogBundle\Entity, |
Waarvan akte.quote:Op donderdag 4 februari 2016 00:05 schreef robin007bond het volgende:
PHP is een smerige taal. Dat moest ik toch nog even kwijt.
Ongeacht symfony zou ik sowieso de ontvanger niet meerdere files tegelijk laten opvangen, maar gewoon 1 route die 1 bestand ontvangt en dat verwerkt. Hetzij direct, of beter, in een queue/worker. Laat de voorkant dan maar lekker bestanden er in pompen.quote:Op zondag 31 januari 2016 14:19 schreef henrivo het volgende:
Hey guys! Even een vraagje voor de mensen die werken met Symfony(2/3).
Ik heb onlangs een UploadBundle gemaakt, so far so good. Voor single files. Nu wil ik echter de mogelijkheid om _meerdere_ files tegelijk te uploaden, en dat lijkt in de praktijk net een stuk lastiger te zijn. Mijn vraag is, voor degenen die eerder in deze situatie hebben gezeten, hebben jullie tips of advies mbt de Entity/Controller? Ik loop hier nu op vast en de officiële documentatie is gebaseerd op het uploaden van _single_ files.
Bedankt alvast!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | Host: 127.0.0.1 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Accept-Encoding: gzip, deflate, sdch Accept-Language: nl-NL,nl;q=0.8,en-US;q=0.6,en;q=0.4 Cookie: PHPSESSID=u0gn1n80b3v6ipkbstoi0fct41 DNT: 1 Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.109 Safari/537.36 X-CookiesOK: I explicitly accept all cookies HTTP/1.1 200 OK Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Connection: Keep-Alive Content-Type: image/png Date: Tue, 16 Feb 2016 18:16:18 GMT Expires: Thu, 19 Nov 1981 08:52:00 GMT Keep-Alive: timeout=5, max=100 Pragma: no-cache Server: Apache/2.4.6 (Win32) PHP/5.4.17 Transfer-Encoding: chunked X-Powered-By: PHP/5.4.17 |
1 2 3 4 5 6 7 8 9 10 11 12 | <?php $fp = fopen($foto_origineel, 'rb'); header("Cache-Control: no-cache, must-revalidate"); header("Pragma: no-cache"); //keeps ie happy header('Content-Transfer-Encoding: binary'); header("Content-type: " . $headertype); header('Content-Length: ' . filesize($foto_origineel)); ob_end_clean();//required here or large files will not work fpassthru($fp); fclose($fp); exit; ?> |
De PHP binary + dll's vervangen?quote:Op dinsdag 16 februari 2016 19:21 schreef Chandler het volgende:
En weet iemand hoe ik gemakkelijk USBWEBSERVER van een nieuwe versie van PHP kan voorzien? zit nu met versie 5.2.nogwat maar wil graag ietsje hoger ivm password_hash functie...
quote:Op woensdag 17 februari 2016 08:34 schreef Chandler het volgende:
Dank robin007bond, ik ga het proberen!
En niemand een andere oplossing voor mijn probleem? zie niets raars aan de headers!
-edit-
Ik had al zo'n gevoel dat er een BOM in mijn bestanden moest zitten en ja hoor, 1 van mijn php bestanden bevatte BOM... nu werkt alles naar behoren!
Ik laat ze altijd weg als ik met headers e.d. werk, dan kan dat iig nooit gebeuren.quote:Many older text editors always inject a trailing newline. And trailing whitespace led to "headers already sent" errors. The PHP interpreter actually circumvents this problem, and eats up a SINGLE trailing \r and \n newline after the ?> closing tag. Some unpracticed programmers however errornously added two or more trailing newlines or spaces, tabs after ?>. That's why it's considered good newbie guidance to omit the PHP close marker. It's however not indicative of good coding style.
Dit. Gewoon standaard UTF-8. Geen gezeik.quote:Op woensdag 17 februari 2016 13:34 schreef KomtTijd... het volgende:
Ik laat ze sowieso altijd weg. Waarom zou je sluittags plaatsen die geen enkel nut hebben en mogelijk wel problemen veroorzaken?
omdat het voor sommige mensen nooit problemen zal veroorzaken, waardoor het dus puur een esthetische afweging wordt. vooral als je richting ocd neigt is het irritant als html en php vol met open+sluiten zit en er vervolgens geheel overbodig een uitzondering wordt gemaaktquote:Op woensdag 17 februari 2016 13:34 schreef KomtTijd... het volgende:
Ik laat ze sowieso altijd weg. Waarom zou je sluittags plaatsen die geen enkel nut hebben en mogelijk wel problemen veroorzaken?
Het gaat om de volgende code:quote:Status Code: 400
This error indicates that a required parameter is missing or a parameter has a value that is out of bounds or otherwise incorrect. This status code is also returned when image uploads fail due to images that are corrupt or do not meet the format requirements.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | <?php $client_id = "2bc14449"; $search = array('/', '+', '='); $replace= array('%2F', '%2B', '%3D'); $imgtest = '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'; $imgconv = str_replace($search, $replace, $imgtest); echo "$imgtest<br>"; echo $imgconv; $data = array( 'image' => $imgconv, 'type' => 'base64' ); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'https://api.imgur.com/3/image.json'); curl_setopt($ch, CURLOPT_POST, TRUE); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Client-ID ' . $client_id )); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $reply = curl_exec($ch); curl_close($ch); $reply = json_decode($reply); echo "<h3>API Debug</h3><pre>"; var_dump($reply); ?> |
Heb even snel gekeken, maar ik krijg een foutmelding door de manier waarop ik de client_id erin zet, maar zodra ik thuis ben kan ik het beter testen.quote:Op donderdag 25 februari 2016 18:30 schreef KomtTijd... het volgende:
Wat heb je zelf al getest? Werkt je request met dezelfde data wel als je een api-tester gebruikt?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | <?php $imgtest = 'iVBORw0KGgoAAAANSUhEUgAAAYgAAAFACAYAAACm+Ov/AAAgAElEQVR4Xu2dCZgcRfn/v2/P7ObObrLZTbgDGJLNBsKZkGQ3Cbcgh/o3CJuAiArqjwAiCCpqPACRSwGVw5+gQhDiT8RwCATYJLsJR1CuHBCBQAI5995NsjvT9f6fntmZnZmdme6eme653nkeJUlXvVX1qer3229VdTVBfkJACAgBISAE4hAgoSIEhIAQEAJCIB4BEQgZF0JACAgBIRCXgAiEDAwhIASEgBAQgZAxIASEgBAQAtYJSARhnZWkFAJCQAgUFQERiKLqbmmsEBACQsA6AREI66wkpRAQAkKgqAiIQBRVd0tjhYAQEALWCYhAWGclKYWAEBACRUVABKKoulsaKwSEgBCwTkAEwjorSSkEhIAQKCoCIhBF1d3SWCEgBISAdQIiENZZSUohIASEQFEREIEoqu6WxgoBISAErBMQgbDOSlIKASEgBIqKgAhEUXW3NFYICAEhYJ2ACIR1VpJSCAgBIVBUBEQgiqq7pbFCQAgIAesERCCss5KUQkAICIGiIiACUVTdLY0VAkJACFgnIAJhnZWkFAJCQAgUFQERiKLqbmmsEBACQsA6AREI66wkpRAQAkKgqAiIQBRVd0tjhYAQEALWCYhAWGclKYWAEBACRUVABKKoulsaKwSEgBCwTkAEwjorSSkEhIAQKCoCIhBF1d3SWCEgBISAdQIiENZZSUohIASEQFEREIEoqu6WxgoBISAErBMQgbDOSlIKASEgBIqKgAhEUXW3NFYICAEhYJ2ACIR1VpJSCAgBIVBUBEQgiqq7pbFCQAgIAesERCCss5KUOUaAF8317j2oex9mtS8DlSCMg45KaBhDoNGsUEagcgBlTDwcShtExCPB8DJjBBAx/Nlo3IC/d4LgZ6CDFPUwuIuI2pmpDUA7AS1gbReId0LnbUSenUT06eAd2lZa1ODPMVxSHSFgm4AIhG1kksFNAnv+fMyBxPqhYDpEgQ8F6FACDgJwAIPGgVkDB4dxwMf3/bn/HyKdvqkg9DeNDXux6SNEJFBYvL8bOkMKoG1QvJmAj5jwPil6nz38gcdH7w+5ovFjNxlKWUIgVQIiEKmSk3wZJbD7kaP3ZeWfqjFNZebJBKpmpklgHh509pFDlfrUoK8KuSYQIeEIi0i0mBCji0EbAF5PwDoAbxLxm0Mva/o0o1DFmBBIk4AIRJoAJbt9ArsfmbQvuGSapngaA8cRDFFAZdCfRjr/iD8XkEAEQ53IYCV4GxJoJ3NALF5j4FUPqVdFNOyPL8mROQIiEJljKZbiEODH4Nntqznco6EOjFow1TJ433hCUOwCESscQZz0KQiNxFojKawcum/l23TuEl0GmxBwg4AIhBuUi6gMZpBvyaQpfqaTiOlkgOrAgYXhxNFBX9QgApFooPRHUgTqALASxMug0QvD/mf5O0TxpaWIhp001SECIhAOgS0msx2PV1cM9uFUZj6dQacxoyrQ/sidQSIQ/bukEkwxJXbzMWsuUYOLdgD8LGnaM4q8z428bFlzMY09aauzBEQgnOVbsNZ7/m/iJOj4PIjOZGAGFLSwJoTWC0QgYvq/73bLqEBEFqEpAq9m0JPQ8I8RCxs2FOwAlIa5QkAEwhXMhVFI72OHHqM82hfB2hfAXB0dIcTZaioC4a5ARC3kG7ttaT0YjxPR34dd8dLrhTEKpRVuEhCBcJN2HpbV8/hh1cyqHkzngnFYcOoo8kk49GcRiOjujTct5HAEESMQkfUhovcAfowZi0dcuXx9Hg5FqXIWCIhAZAF6rhfZ9fdDq0qAeia6CApTg/WNs+U0KkIQgchlgYgZc28S6EH4excPv3rVjlwfj1K/7BEQgcge+5wqmRvmenvbtpxJzBczcDozvFHRgghEX3/FRgHxo4Lobbyhrs5eBDFgsBniTvCTomdYwx+Ht+FJOR4kp27JnKiMCEROdEP2KrHnqYMP8vjo6yB8jRX2CUULHFpIDU9bSAQRjqQC02zJnX5eCERkO5i2Evh/fez5w6irX/woeyNSSs4lAiIQudQbLtXFeFeh58mDT9EUL2RonwOHzqoIDQeCCEQaZzHFTsmF+zXHIogogQhWkpmYwE8p5rtGXr3ieXnHwqWbMkeLEYHI0Y5xolr83Lhh/p7BX2E2hME458goJd5xFiIQBpuUD+vLa4HoG3nBCGkDMe7q1gb9adzVz3U7MSbFZm4TEIHI7f7JSO34uUOrfL2+hczatwEeHS0MIhDBR+c+sQwRF4HoCykCZ0S1MPPvNI/vLlnUzsgtmTdGRCDypqvsV3TvMwcequl8DUBfYcbg8PcOoiIHEQgRiP41lf6pxahIwph7MobPXij6E3s8t5Rd8+L79kek5Mg3AiIQ+dZjFurb8+T+EzSNfsigBVDsMe7s4I0f8/6CTDH105QIIqiT4c0JcQQiHGlBJ9BDrOGGkd9bvtHCkJQkeUpABCJPOy5etfc+e8BnPIp/wYGX2oyF51B0IAIR9H4Rwz3+F+SiBEPWICJ2a4WUI0pAiMF4jImuL/t+w38L6FaSpvQREIEogKGw5/l9D/T6tUVMuBAKnqgpkz5HKBGECETUUE8QKViMIMLbfAPpGcbx43/WPWrR6Ovka3kF4FLCTRCByOPe5IZ9x/j20o8B/iaYSqKekmPWGUQgRCAcFIigaSYfEd9DPu1nIxY17MrjW0uqLhFE/o4BXn3AEH+HfjkD3wejLFoY4q8ziECIQDgvEMESiNGuQDeVDeu9k65avSd/7zSpuUQQeTQGjBfc1LKx5ynQzazogPjCIAIR7tIB6wyyBhHNJnKNoS8IsLZIHTvF1Je5z3qfDWLazEzXjvxxw1/lhbs8cjQRVRWByJN+611WeZTGnjvZ+Gxn8I3XUFif4L+BZ7nw/n6JIMIRxF4Ag+O99xDe5RUAHH5RLiJ9H9O+633Py9HOMTyecus01wHDPLNrEHEFIuIDSI1MdHn5j5b/J09uN6lmHwERiBwfCvzsAaN1r+8mVvhGwOP33dgiEKERTF1Q2AKiLQBvAWufgrEZhF1KoV1T1OYhavf5e9qG+Xa30+Ube/bcP71OsVoRKwixf1eM2SO+9cpKvvP0Qd0l7WXK6y/3+rxlSlPlrGtlHuIxCnQACPuSov1B2B/g/ZkxPP/OYsp8BBEWiGAkx8S4j9H7g7JFq1ty/LaT6olA5PYYCEwnvVB1oSLcAqbK2GMxiksgqJuY3mPi9cT0LkjboIM3DPOUbKIFrxjfaLb9677vuMCbX+FfnG2vw775SkoPUM13Th85yFs6HsyTiHkSCBMZVA3gMDCGxX5aNLydNuZLc/2VS/bJ0YimJ/keRFYjiOitsTsV8zXlP13xZ4utst23kiFzBFK6ATJXvFiKR6CnYcwkj67dw8CcRMdiFKpAELTtYF4D0KtKo9c15Xl7yIWvf5zpkeKkQCSr657f1B6oNO1wEB/D4GkEOlYxxgbyFIVA9L2UTbRcA31zxCL5LGqmx3Ym7YlAZJJmmra4AV4/V14L4EdQGBS5hlCoEQSBdoHoD8RYreva60O/8sYnaWK0lD1bAhGvcrvvmbGf3196jKbUDBC+zowx0eksPmvnRQQR8bY20EOgn48kulm+RWFp2LqeSATCdeTxC+xdbixC8wMc+IJb/+JyoUcQpOHbg+vf+b3b3ZBLAhHZ9s47674F4HdFIRCh3U6gN5nx1fKfyyK22/eBWXkiEGaEHL5uRA06xlwP4HpmeOILQqxgFM4uJgJuGrzgnR84jHmA+VwViK676m5kxveLSSACY56gQ+EXZV7tFxJNuH03JC5PBCKLfcHLK6oV+C/MdEx4W2Xck1bzSSACu1WaAHqBGecBmNg/vx45VRL8MxHWDJ7/znFud0OuCkTnnbNfA/jYZAJBwAYQHgVwEjPNCh8ylW9TTAO22hp7i+l1D2sLRtwoaxNu3xPxyhOByEIvBHYorRh1OZN2MxSH1xoCu1nyVCAI9ApAj+o6Pzr0/A2fGlj3Pjr5ZFZ4PplAgEj1lqjKsnPXurr1MRcFov32GaM1b8mu6FMFDXrRaxCk4aThC1e8aFzZffesfZXynAvQeaww3fJwdvM9iJiykp73FIwmelhp15bfuPxOi6svlpstCe0REIGwxyvt1LxyRKWC90FWOCN2rSEPBWINkfZXxZ4lQ85dO2CnET9WU7pXRxvAQwZ8vS7C6TG0eUMXvPW3tOHaMJCLAtF5Z92XACwZ2IyoyGv38NZdo2jR2t7YdMYOKR2eeQycB0ZMFBKTOpcFwqhqUCie9jAuGnHjyp02ulaSZpCACEQGYZqZ8jeWnQLW/gzGuHiRQl4IBKEFSntIY/pD6bkb3jZr855Hap4G+PRkAgHQfUMWvH2pma1MXs9Fgei6c/Z9DDZeiIz5RT1HPzPiihVnmLHoun3O4eyhrxOwgJlHD0ifDwIRrPQ2gnZh2Y3Lg5Go/FwlIALhAm5+DB59n/JFAP0w/KHjOFNJuSsQxER4kXT6Q8lwfpxO39hjFduev9ZcBebbkgoE0YdD5r99iFWbmUiXmwJR9wEDBycTCCL67vDLl99ulUHgLXDe8wVm/jpAJ/avV/RZsDP9E3qyj/hv33HfQWMJz3GKLst0iinWFhnfneAbyv47bhEtWWIcLS4/lwiIQDgMmhuGjVNe78PMxs0ZcaJoPggEUTsU3Q9d+93gc9/9MBVUvY8cfoQO/U2TCMJYrD508Py3P0iljFTy5JpAtP2u9hCPnxJ8xrM/giAPHTH8suWmkVs8Jm13zT7Yo9O3ifANVqFTgG0472wJROhLd4QXfX7P/KpbGral0ueSxz4BEQj7zCzn4MYRtTp5HgPzPuGvmYUP2TPMRC9K50oEQaAPmfHrUv/gP9K5a7ssNzhOQmNBvufRyVtZGW8LD9zFFMxCxhHRlw6+4O370inLTt5cE4jOu2ZfCuZ74rehjxth+/CFK/ZJ92TUHb+dO3yojy8G05XMHIxYwmd8RQtGf1QQShBHUCxGDpbKMJn6IsZWBT539M2NjXb6W9KmRkAEIjVuprn0VWXfBuPXzIj5kE/i70JnXSBATWC6vfTN9/9Bi6BMG2kxwd5HJj/EjPlJBQL4v8EL3jYWaV355ZpAdN1V9zdm/L/kAkEPjbh8+QWZAsSLoHWVz/k8KVzFjFkBncjgcd+JppxsTzHF1ovIB8VXjvrVypgXCjNFRuyECIhAZHgs8DMYxOUjfseKLg7ecImO5c6dCIJAzxKpRSVnb3o5wzgC5vY8UvMVMD9oEkG0Dnr/7TGZFKZkbcklgeDH5nm6t2/fycyjkgmEBlw07IoVf3Kijzpun3s8gRexwmmREUWuRRBRokP0x/I9w75Ndz5jeU3MCXaFbFMEIoO9yy8PH6sUPQFgemhKKZcFgoBnCXBMGEJodz922H7k925JJhCBFwWJpw1d8M5rGeyShKZySSB2/27OcbquXjU7rM+jl+w/9KoXHD2rKiAUihcxxwpFbkwxDYhKQK+UeEvOGX7jC9vdGDfFVoYIRIZ6nF8ZNlWx9k8oHBh8AguizUWBIDaEgRwXhki0exZPXgfjyOvwiaVx1iOIfjhkwVs3ZqhLkprJJYHovKvOOGrkhmQCQcD64ZevmOwGG6OMgFDokUKRowIROLSdPmbwWaNuWfmWW3yKpRwRiAz0tH/1yLOI1GIYH4qJmVLKOYFgnDXo7I+ezECzbZnYs3jynQAtTCYQDHpp6AVvBXd7Ofzrvu+4zQDtHy5mwPcgaMuwb74c/Kyrw7/Ou+teBOMEkwjizhFXrLjC4aoMMN/xq7lnArw0vDgRb1usi4vUidY1COhi5vpRtzYudZtRIZcnApFm7+qvDP8fKLoTYC0ycsjJCII0VQo1hs78uDXNZtvO3rN4ylkK/E8Tgegdsrt0FF26ZrftAmxm2HvP8eN1jetA7OnPGuxCMOseRSsHf/PlTTbN2k7O9x47tMs3tBXMpckEgkFnj7x8uevOr+2m2lGax9sMVn0hcV8TI3c95YBA9G2jVmBcPuq2Fb+13RGSIS4BEYgUB4axfZNfHn4TA8b3G/p/OR5BEHBb6VkfXZ1is1POxv87acTeIZ5WGCfWBn4Dp5gMP8OsfXbYhW8+m3JBeZax++7ZpynmfwWFKUHlifw9e/TRY77X1Ol28zp/Nfc2BhsvO/aJZy4LRIgh3Vx+24rvyzlO6Y8WEYgUGPJalHLniAeMkHZA9hwXCAA+eDxTBp3xwXspND2tLHsfmbKSFdcmEwgQ3TR0wVuuH/+dVsPSyBw43ht9x3snEAgiahy+cEVdGsWklLXjVydOBNTbAJfkl0AYX8DGw2UjWy6Od2ZVSjCKNJMIhM2O59cxlH0j/s7Mwe2Asb/cFwjj5nm69OyPPmez6Wkn3/NIzU+gsCihQBDtZaJ5w+a/6foaSdqNS9FA9911ZyoOHNA3OHEEoS0asXD5T1MsIuVsnbfOfYoVB899yqsIIhyNPbune88X973X+SnLlCHneEYRCBsdxGtGlSm/7xkwZiTMljWB0LoAXgOmucEb2vi//je1g/d3/0t6DDp98NmbglMbLv32/HXKTOjcFC0QtBaEZRp4WWkJN6T75rZLTcloMcabzYOVmkPMpwB0MsA1kQWwps0cedny1Rkt1MRYx61zjAMWn7byHgQBDQCOZYXh/WMv8dlMab8oFx7fyc9/MsohwmouGXT66JuXtbvJr1DKEoGw2JO8aniV0rQXwGpK0ixZEAgClvr8nm8NPXPzJ71P738LgKvNBIKgbSjZWnEEXbrGZxFB2skCx248MuUGBvYB8JJS+vPDFqzfmrbhAjPQfcfsfeBVpzDTCSBsHXbZyh+me7yGHUR877ElXZ3D3mbGRHOBoFvLfrD8mt03nLSfj33Gp2PPMju0z02B6Hsseser48QRd8qx4XbGQcQjpd1sxZWeXxm6v4KnAYxD+88iSMDAXYHYBaUtLD39k7+GasNPjBnhKx28EVFnH1FftWOO+QC+M+jsTb8urt6U1poR6Lhl7pUA3xEdDcRZpCZs79X0CZGL5+031p0HRXeBMcaxozZsRBDhNhC9z7o2t+LOhi1m7Zfr/QQkgjAZDVHiEBiYibaa9BlySSAAesKr4xt0+tYBH1PpffqAr4L5j8mmmPqmm9pLS0om0Okb5YMs4hUCBDrvrKuET9s48LTXuALx1ZHXrXgwFl3njXWVStfuB/M50SITTOl2BBGxtfp9ViISdoa6CEQSWry67DOK1HOIPKM/6wJB7RphoeeUrX9JVHXjEDbfcfsbnwA9NjTVFLsGERYP0u4ddPYH37QzaCRt4RLouHXuvQBfMvDpP1ogiLFmeM+K6cnOzur46dwLQOou5uijxbMmEMF1uA88Ht9pZbev/m/h9mLmWiYCkWim6JWK/RV6V4IxPipJFgWCiJo8Gs2nE7d+ZDYEfE/tN5OhNVkQCEV+Prr0ix++aWZTrhc2ge7bT5yqs/q38TKKmUCAMGvktStWmRFp/cWJB2m6/jDAszJx3LfZ+kbk9YRCBP6Q2TtbppvMei+8rcU8YTGl4IA4+BrAfOiAdmdDIEhTUPwzb+v2X9C5sPxFLd9TBz4cfFcjwRpEeGcTLR90zgfB3U/yK1oCXbfNaVCMOfGmhSK3uRKweMR1K+ZbBWWcVtuxfsf1AH5siE92I4i+OS5jTYI9siZh0okSQcQA4jXD9lG6ZyWQYEHabYEAbYXSzi85ZetyqzdkKN3uZ/bf36u0d8EYmnCKKbQVlmjeoHM++JvdMiR9YRDovG3uPIAfM/seBIF2e0ATh15rf7G382d1c5TSHmHjA1rGb8ARHcaRvn08LX8KNX76wOnApt+2oPd1L9VV3rFCdtIlGMYiEBFgeGXZKFWKFQAHt7LGEwM3BYLoea9fW0CnbtuRqhvyPXnAjxj0MzOBIKJNJT2+yXTu5j2pliX58pMA3z5jSDeXrmNgvJlTJeDHI65d8fNUW9q1aGaVH96HwDgl+wIROAn2HfLz7PLfN7p+PlmqDN3MJwIRegB5fd+hyr/7JUBNC3dAFgWCmH7had6xyM6UUryBw48dMMQ/lNYrxkGRL8rFfu40KIh0/aAvfHCDmwNQyso+gc7b514P5oDTTyYQBHw0vMRXTVetTushgufN87RP3rEIzMa0U0TU4HYEEWRPjFf3+PaeIG9cDxyLIhDG+DTOVtpd9jQrnBR1Ylo2BALUQdAu9J6w3fjwUEZ+vU8deC4rPGouENpun4cPGX72B/LxlYyQz30jXb85aSzr+gdgHmomEBroy8OvXf5YplrVumjO2ZrCX5h5ZDhid3WKKfR0GDhk4IVRFa1nyNlN0b1b9AIROJX1tfJHGPzlYMgb8Z6DywIB0EadcPagubs2ZOomDNnpWXqQsYYxu/+Jrf8Yjv5Qn6BpdFzJOe+vyXT5Yi83Cey+Y+6xOvNrpjuMgBUjv7c8uICdwV/normTdKWMY+AnBMKXbAlE8ONej47+7crz5RTY/g4ueoFQr426jVld1e84syMQBLygefzzqK7dkbnQ3qfGH8kK/w586i7mnKa+m3IXMX5Q+oUP78/g/S+m8oBA5x1zv07MNzFjTPwpJmIP4ehh1zS84URz2q6rHUUlniXM6qTsCkSgdbdX/Lbxu060Mx9tFrVA6K+VXwngjuiTKrMgEET3eLY3X5bueoPZAOxZOj7iJahwBOEn0N0lrH5Kn9/UZmZDrhcmgbZfzy336PwTBi4DwxvlqInuG3lNw6VOtjywLjFx291gBF/adGUXU8QUU+T6C+E7FXc3yhE0/cd7Otn1uWnb/3r550nR34NP1JFvibopEBoT87WeuS3GAXuO/7r+fmhVSYn/PQTebCUQ078YuHLQOR++63jhUkBeEDC+AUGa/mtmfNaoMAHtRL7Dhl+9KuWddHYa3vbD2deAcDNU6KPuwdyJF8+jnbylF+WSHV0eKIwUA/9vzO9W/sNO3QsxbVFGELym/GjFtBIILsxlRSBAPSBa4K1rdvXdg56nDvoc6XQRE/446KxNzxTioJY2pU+g77jvi0HagyOvfump9C1at9D2o7ovQcHYCjvIdG0kyedOzbbsJotSiGi3TlRXefeKf1uveeGlLDqB4Dcq9lN+9SoY+4bjWPcjiA4mnF1S12r75bfCG4LSIiEwkEDrD+rmaKB/hnY4uRtBBOtDTJ8y+6dV3LP6k2Lto6ISCF59wBBV0m1EDsdE7VhyVSC0HUrjU0trW+Xso2K966Tdlgi0Xlc7lTTtOTBXZUMgDB9BjNe7h+p1B9ye3rsflhqcg4mKSiDU6xXGnusFgcghckuriwJBrH3LM7vlnhwcC1IlIZBzBNq/P/ubDP59tgSibxrqoYp7Gi/IOTguVKhoBEJfM+a7IHVrWBiyJxAvaBUtZ1ANel3oXylCCOQtAV5UU9rRU/E0g0/KskCAFK4efV/jbXkLM8WKF4VA+F8fcyIBzwOq7xjj7EUQxqYpAi3VKlq+JCKR4qiVbAVPICAOvRV/Y+azjMZmWyACO5sUnTLm/hUvFjz8iAYWvEAEFqUV/gNGZdTUUpYiCEMgAgtgIhLFdJ9JW20QCIsDOPx96+wLRKABO0H6UcW0aF3QAsGvo0R5xjRA8cwBU0tZFojAAhhpS7WKZokkbDgPSVrYBALi4K/4G6tg5JCtba7hsiO30Rp/Zqware2dS/eu8RV2TwRbV9ACof5TdTtDfaf/jJeIqaUcEIi+l9WWapUiEsVws0kbkxMIi4MxrZTNN6ljRSEkVEGBMJzmHaPvbwwez1Pgv4IVCP+blWeSwtLgtFIcYcgRgQgOOFqq7Wj+Ep0rC9cFfr9J8xIQCIiDPjByyMEIIuBSFNFZlfevfLLQO7QgBSKw7kDam1CocF0goO0g4AFmuhDM+3DfmkNo7aH/v30BXN/BecRYqu0UkSj0G07aN5BAWBziRA6JBIIYW5joYSi+CMDYeIf8pfMmdZIppr6lTGomn39qxZ8K+yW6ghMIfgweNXHsC2A1p3/dwbUIokMDamlG19u8uuwzSqGBGfsFB1sf6vB/owUi+GqGttS7c6dEEuJFi4ZAWByAsywf9030vmJtbsXNDVtarp1zuMbcyCr0TYk+dJY+OdqfNnCLxju2Y+AaRPiZk5gaRneOO5mWLLH8nfh869iCEwj9zXHXgdVN0TuWXBAIor0a4VSa3ml8zzqoCatGHaQrfgHgQ60JhNEdJCKRb3eR1DclAgFxYGNaCX0L0ha+B4F+cQgV2vq9OXXE/CwzD8nMYX0RwpFEIAJlKXx/zIONv0wJQB5kKiiB4LX7Hal0/VUoVeKuQJBx9uQ87/Gdf4/tc36lYn/dpzeAcWh0JBEvgug7gpuMSGKHRBJ5cANJFVMjEBYHNiKHkEM2EQgjclDByCG21Lar53yRwUvArIWmhxydYupbsIYin4KaVvVgkyPfykiNbuZyFYxA8Kbxg1XH3tfBPDkYK0ZGDY5HEFd5ZnTdkahbAiLRqxqiI4kkAhHYXEZLvbsqv0TnrpU3rjM33sWSBQI8D562wVOmjPrLO46cFxYQB0RGDhYEwogcEohDqElt18y+khUH70MXppj6IgijrHVd5D1m/IMNey3gzaskBSMQ6u1xtzDj6uA8pnsCQUR3a8d3LjTrdW6o2F/3qIhIwkQgjCYQLfVqO75Ic+E3sy/XhUCmCLQtqP5C2ZaxS6mhIePjjhfN9XZA/Z2jIgczgaD3dRNxCIvEd+vu6vvoUZK3ryO//2LyroX5FFNw6yvTrRV/XnlNpvogV+wUhEDwW2OPZ9Ka2AgvXRQIIvoXfdx5ptUvwQVEQuO+SMKCQBgbYEGnek/a/nyuDBipR2ET6Jg/+XS/wsejH1m31omWtv9szims83Ohp/zo/8abYrIuDoHAwfgy3YHblzLz6e5MMfUJDJMixbMqHmp82Qlu2bKZ9wJhTC1xV88bYJ4YDBxciiAI70cvFssAACAASURBVGrekul0bGu7nc4LiwTzoYFXbiK+D80xfydo73t6/UfT6c0ddsqQtEIgFQIdCyZNZN1zatkja+9KJb+VPG2L5pYDak1gTW7ArqFYgaD3dT3+mkOyslquPbmM/L2vsOKJCYWobxoq8rrdXUwRU0yhF+je7dS8RxbSVFPeC4Rau++voPgao4dcEwhCmwZtGh3fsdHKTRGbpl8kQjdJUCgiBYJAGz2afiLNbR6wIJdKmZJHCCQjsGNezfDSEvW7sk/HXuzE1FJk2c2L5u7vgWqACm3ciDfFlJo4hMrp+N6cCf7gh8HK4wqRAwJhOCAC3VLxl8bvFcpoy2uBMHYtMbAGSnncEwgwk/qc9/jutD7XGRQJGOdEhSOJkEAQ6B1PifdEqtu6s1AGmrQjdwkYU+jt9ZMfUh6+afRf1r/jRk0NkfAy/4uZawbuYqL3db/9yCG23i1X1p4OTXsq9vvW0Z8YzswaRKANwRBEVwrHVj1cGLua8lYgmOHh9fu9DMXHhhal3Ykg8BPPjM6fZeImCogEIbhw3RdBEIs4ZIKt2LBOoK1+8jUElJYtXneD9Vzpp+z8QV2l8tKLzJgSnOoxbgJ6Xy/R5lYsGriVNZUSW6+q+zEr/DR6qinzi9RhgQguWL82unefGYXwAl3+CsS6/S9n5t9Erjk4LRAEPEXTO88iCj/zpDJmo/KERSIQbmvveLwSOaQNVQxYJtB2fs2JIL6h7NOqOqenluJVKiASHnqRERCJ93VP5sShbxaJWq+sWwrgc1GRikNTTEGhMFYX+YqKh1fdabkjcjRhXgoErz9oH2b1LliNcE8gaLPGdCTNaG/JdF/yC2PHKtLP0Xy+v9Fpmbef6fqKvcIg0HJhzYEev2rSoE4ZsfjdDdlqVfuiGaNZL/2SV/c+MfzGF7Znuh7tV80YrZT3DWYcEI5UnBYIpk6laRMrH1qxNdPtcdNeXgqEWn/gw2BVHxaHvvceHIsgiPwaYTZN61jtZudIWULAKQJ8+oRB7aNLGsF4rHzxulucKidX7LZcOWcGWK0A4HV0DSL0hnXwWPDFFYub5ucKg1TqkXcCwesOmM2E5VHi4LhA4FrP9M5fpQJY8giBXCTQXl/9v0yoKetdP4uWoGAPm4tk33JFnbG76Ga3BCKwrqh4TuWjqwxhystfXgkEN8DLYw96HVBHuCUQBHqRpnecQgSVlz0slRYCMQTa5ld/A6C7PKwfmc2pJbc7hhdBa22tex7MJwanmvpqEFqztnmaa+x7EOHTaCOiCDDeqthWckw21ncywTe/BGLDwZcy6/f0f+Mh9DGgYI9kfIoJ3KIp/QiasfuTTMAWG0Ig2wQ6zp88XWm8AkzXF8PUUizv5qtm7Ed+71sAj3ZDIAyfREzfHPNo473Z7vtUys8bgeCNE0ay3rsRzFUuCsS5numdS1IBK3mEQK4R6LpgapWu977OhE+KaWppgEhcWTePFD/mokDsoBLfhIqHXsm7ExHyRiDUe+N/CcXX9h/EFxE9OLAGQYRHtGkd9bl2k0t9hEAqBIwTWjtKJi9jwoxim1qKx6v1itrFrHB+5FRTukdtxJtiCp0baqx9VD7adF0qfZfNPHkhEPz+IQeyn41trYPdEQjaqhEfTtM6mrPZOVK2EMgUgfb5k29j5qtAfHX5wxtuy5TdfLXTcdm0Cl0b9BYz75v0u9cWT3ONfFEu9C5E+MjxwDQT9mpME0cvafw4n5jlhUCojYc8AKUuij6Iz7kIgsGf907vfCKfOlLqKgQSEWg/f/K5TPwoERpHTlg/hxbJhguDVevls89hVv9wQyCCL8/RA2Mea7w4n0ZqzgsEb5wwmVl/G6xijvJ2RiAI/Jg2vePL+dSJUlchkIhAywXVUzw6XgaRRoypIxevS+mAyUIl3Lqw7lFmPtdon6NTTMF9NLoG7YiKJSvX5QvPnBcItfGQf4D5nNiX4hzZ5gq0an59Es3s2pEvHSj1FAIJxWHeIWVa6aDXwJgADd8pf2j9r4VWNIGub82s6vVqG8AY5YJAGF8Be6JySePn86UfclogeOOEoxj6v+OJgRMCQcAD2rT2vAoB82WgST3dJWDMaHTUV/+DgbNlaik5+5bLah8AcJErAhFY0+CjK/+26j/ujojUSstpgVDvH/oPqJjoIfw5UQemmIBOAF/3TGt/LDWckksI5AaB9vrqHzHwMyLaI1NLifukZeGsLxNr9zN4hGsCwfRE5f/lRxSRswLBHx42nXX95QGRgpMCEVR341vQKzXQ5TSt7Y3cuN2lFkLAOoH282s+y8RPAazJ1FJ8bm2XzzlKQRmnQde5tUgdubtJU2p6xeOrX7Xeq9lJmbMCoT6Y8BSUOiMrAhHoC2IC/4F0db2sSWRncEqp9gm01R92COBZA2CUTC0N5Nd19cwqn0+7gUFfi/2QkHsRBECKnhrzeOOZ9nvY3Rw5KRD84WFTWSnjO9P935iO/HNog3HMv2X8qI3giOkA6GfaiI67qAa97naPlCYErBPYPO+AISNLhq9mYCoB3VCeqWV/fed96xYKNyUvqiltbam4nDT8iJUaGWipC2cxhV+Uiz6fCcZGY6VrU8f+c+VbuUw9JwVCfTDhr2D+co4IRLD/CBsZ9B3v9I6ncrlDpW7FS6CtvvrPAC4IDFfCZWUPr/9t8dLob3nrFXVnsobboTAhKAzOflEu3otykf8WOuSPQI+OebzxvFzuo5wTCN78mc+wz9h2pjw5JRB9vUiM54hwJR3fuT6XO1bqVlwE2s+vWcikAl8wI1DDyMXrTqT+Z+TigtHX2uYr51Rrmvo1K5waHTHkhkAY70WwUpOq/rn6v7naQTknEOqjib+Hrr6ZUBzcWKQO9VZ4UjKi+wLHM5JOjN+SX1tEde2tudq5Uq/iINA5f+IsnbWXAJQYU0vsUYeX/+XdD4uj9QNb2XZd7Sj4tEWK+X/A8MROJeVKBBGMKuj3lU80fjtX+yqnBII/qa5gn9oMpYbktECEepPQAtD12t7O+2ku/LnayVKvwiXQvaB6Hx/j32CMK/apJV4019vaqX+DiH4BxaPjLjrn0BRTYMMk055SrfeAkY+/mpPnvuWWQHw86YeslNG58RenQ4vSGVikZmjzPIQtrNSNzOqE/hA0tHIV+e59TAQR62+I3tE0+n80reO9wnVF0rJcI8CXHlvS3rn7JYBnFfvUUsd36w5TGv6PFaaE7uVUBIKIXmKdfwCN9ofiJVHRR8RCc3jx2fiMWPjfDb8V+fe+5Y7YBWrj75H5gOsrn2i6IdfGV3BM5ciP19aU8gj/Jijex2mBIMIT2jEt4dfd/a+Vf5HAt0Lh4Khp20RTTHGYEehWbUbnNTmCU6pRBATa5k++C8yX9d3IRT211Hp1nfFd7asjHbpNgfiQFa6u+F3j30NDp+Vbtf9gxjnhh0eHBIIYWysGtY2nJWtzbpdk7gjE5urzWanFgaklhyMIjdXRdFxb1Kvu3IDBakjZd0D8AzCGBwdFRDQRGjXx/g3EGuvTaebu14rAL0kTc4BAx/zJFyhmY9dS4Ffsu5bar55znCJ+JfLdBisCQYQuKNzY3uW9Y/yDDXsju7btW3OO0ln/t9MCERQ1rb7ynysfyYGhFVWFnBEItXlyI5Q+y2mBIERHD7Edwk1D92VvyY0M/opVgSCiP2nHd16Ua50r9SlMAq0XTJmqKbWamYf0qcPzZQ+vO63Ydy21XVP3ICt8JeTQzQWC/qRY/WDM3U2fJhop4Sgi0dRRJqaYgrabKpc21ebaiM0JgeAtU6ay0t8Aq+BTu4MRhKYGRg/xOoXXlE1TfvUbAMdHXY+NIAhdmpcPo2O7t+Za50p9Co9A+7ya0SjhNQw+ODi1RJ26l6aM/vPavPoQjRM9s/M7s/cp8fB7bMwA9C1jhp/+AzMCfdEW8LJSdEXFXStMj7oIRxEOC0RwTYOOrHqy8U0n2KRqMycEQm2efC+YL3FaIAgctfZgBo0ZpF4uq4fGv4Lx5anAIIuZdiL6vuf4zl+a2ZLrQiBdArwIWvvG6qfA+GzYFuGS8ofX35+u7ULJ3/Ld2dcR+KZ4AkGgT0H4XvkdKxbbibYCUYTCOXFfgMtQBNHnVu6rWtp0aS71RdYFgrdNHcY+/1awGuG0QGhKH7D2YKUz+M1xw3jv7uvYWARTanBEng+0tq7JdDp6rNiRNEIgHQJt9dU/B3B9vziQTC3FAOXLTx/UVtK1HoyDQ89yxuc+mXBrr2fIL8fd+ly33T4IRBHK+OxA/w6ljO5iCkU7TJ2qd+g+456zX0e7bbKaPvsC8UnNV1nxH4PvPTg3xUTA09rRzZ+zCiZeOn65fDxD/xUzzwsEExrJp0nTASp5LRNoXVBzNikV/gyuTC0lRtd6zexzoLOxA8mYgltCrH2v/NcNmyzDjpOw+dK6p8B8RkgknBGIwBmhF1ctXWV8nyInflkXCLWlphHMwcVpBwWCCad4j2pelgnqvLpsms76CO/MrhcyYU9sCIFkBDrqJ09gwmvMXNYfPcjUUjJmbd+tO0ln6qy43Xydwcroa76k9mQAzzstEAQ0VT6ZO4vVWRUI/uSIicz6hv63ph2KIIC3PUftOsLKQJA0QiCXCOyYVzN8UKl6mRk1MrWU3Z5pvqT2LTAOD69vxL7wFnjITeFFufAUUzCvpmPSmH81vZvd1gZLz6pAqE8P/wWU+qHjAsF8sefo5pwJ23Kh46UO+UGgbX71o2CcG6qtTC1lr9+aL637KgLT4RFvSGdykTosLnRD1dON/WtN2Wty9gTC2CHEn075AMzjHRaIHdrwUQfShI2ykJzFgSZF2yfQNn/Sd8F0a1RO4q+WP7zhQfvWJEe6BIwF8NY9XR8zc5VjaxDBdZNNY55qPMTOTqt025Yof9YiCP70iDpmtSL6UD4nppjwE89RO3/mFECxKwScINA2f9IJgPY8mD0R6w5Plz+8Pq2NFk7UtZhsNl9S92Mo/qmTAhE4xE9hduW/mlZmm23WBEJtO+Ie6OpSRwUC5NNI25+mbtuRbdBSvhCwSqDlvCkHaJpufDa0Kjy1RNTu9/prKv703idW7Ui6zBPY9q2ZVSU+zxZmLgl9+Cftw/pi1iD6Xui7t+rppm9mvgX2LGZFIJjneXj7u1uhq0onBYIYf9eO2vn/7CGR1EIgewT49AmD2kd7V4AxTaaWstcPyUpu+Ubd/ynFX3RSIAjYOWbYvvvQkiV6NilkRyC2H3ESKyyD6ptSCh3jneFtrsw4w3vUzmeyCVjKFgJ2CLTVT74X4EuixQEytWQHosNpWy6pPV3peNpJgQgshINPHvvMqqxupc+KQKhtU+8B86XOCgS2aO/tGE/nIqsK7PBYFfMFRKBt/uSvgfkPkU0imVrKuR7mefM8zSO3bgJj/6jvOmRom2t4ygq4t+qZ7E4zuS4QzNB4x5FboVSVkwJBhF9oU3f8KOdGl1RICMQh0L5gynHMaiWYB8nUUu4PkV1fr/s5FF/vpEAQsGPM9KZ9aFGglKz83BeIHUfOYsXG29NwTiCMUzDoUJq6rWi/y5uV0SSFpkSgc96ESlXiXcPAgdHiQE+VP7zuzJSMSiZHCbR9Y/bBfsXvQ2dyZJE68E5E4GTr2qrnVjc52pgkxt0XiO1H/YpZXeOkQBDzC9qRO4xX4+UnBHKaAM+Dp6O0+jlmnBgtDmgp6dVqhi1Zuy2nG1DElWu+uHYZK5zkpEAQ45bKZ1d9L1uYsyEQ7zKrw5wUCIC+7pm67X+zBVXKFQJWCbTXV9/MwAAHQNAWlC1e+7BVO5LOfQLNF9d+jRX+4KRAgPFe1bOrJrrfumCJrgoE7zj6M2C1kUO7lpzYxQT4NU/JWKrZ3JItqFKuELBCoG1BzZeg1JLYtMZXD8sWrw9/M92KLUnjPoH2r88Y7fN7toPhDYpEZs5iGiA44AlVz67+r/stdFsgdh5zOZT+GycFgoBntSO29X9QJRtUpUwhYEKgc0HNZMXqlcDXzyJ/JFNL+TR4dl1U+y8wTnNSIIhxReVzq+7MBhd3I4hdRz8JXX3OSYEAQ6aXsjGSpEzLBJoXTBjpUSWvAjxg6kCmlixjzImEzRfVfo05NM3kUATB9FTVc01Z2azgmkDwprmDMbyjBboa4phAgPya5pXppZy4daQS8QgYx+x0zK/+OzMGTCHJ1FL+jZnwNJMyppmcEQgC7enuKRk9vqFhr9uE3BOIXcecCOYXjK2tTgkEjOmlw2V6ye1BJOVZJ9A+v/r7zLhxQA6ZWrIOMcdSBqaZlDHN5IxABL4RAZw05rlVL7rddDcF4hdg/qGTAsHA5Z7Dt93lNkQpTwhYIdC+oPpUVvSM8bHa2PQEnF+2eP1frdiRNLlFoPmiuoWs+E4nBQIKN1QtW+X6NyJcFIhjV4HVDCcFAqAXiNUldMT2D3JrCEltip1A23mTxsNDr4MxOo44/K1s8frAd87ll18Etl9ce4hXx33MxvsQzkUQxFhd+fyqmW7TcUUgeEfNcGiD2wJn2zs4xRQ8oz1wdu4HRHhe6XjeM6jnJapply2vbo8sKS9MYPO8A4aMLBnRyOCjB04t0S5Pr2/yiCUbdwqy3CdgrDn4tZIToKtTAZzMOg5x+D2I4GdMFXT4S8urGhq63KTkjkA0Tz8V7H829HKcU2sQEQIR/LirAdZAC/VvYnpeKTzvKdu1iiZAvi7n5igr8rLa6yc/yOCvxMNAoHPLFq8b8C5EkSPLmeYbX5Fr9nfM1HTtFDBOYcbRYNac/mDQgG2zxmlMik6rerHpOTfhuCMQLdN+CqX/ODsC0fc1joBYBP5vD4FXsqLnNcXPY1rrWxQ8TUV+QiDjBNrrq7/NwG/jiwNkainjxNMzaOwya1tYewTrOAVMhijUMXhIf5TQ9+wZ+n60I9+k7nNVkVNWweP6fla1bNVP0muhvdwuCcRxxu4lYxdT4IA+dyOIGIEICUVYMGgnMS9jwjJNeZ6j6c1b7CGU1EIgPoGO+uoZClgOoESmlnJ3lDRfPnd/wH8qFE4GB/5XGahtSAQi/9z3b1mJIEAvVi1rOslNko4LBPNcL1p3t0Hpw3JTIPrWLQKDgIzu/7JnepuE/G6OwgIsq3tezTh/Kb/OzPvK1FLudnDzwrp5BDwKZgo4/ZAY5KBAEKN7jF5aTg0NfreIOi8QrccfAaW/ifDX4nItgogUiMDpVN/3TGv/pVsdIOUUHgG+9NiSjs7uZQzMlqml3O7floW114FxU0APclwggsuqaurYF15+yy2qzgtE27RvQOf78kUgNI1n0XEdq9zqACmn8Ai0z6/+NTOuiNsywnZPr/9w2bWUG/3ecvnsmVAq8L2FvBAIpkvGvth0v1v0nBeI1mn3QvEleSEQQIe2u72C5sK1EM6tjpZy3CHQPn9SPTMlOaabvlC+eN0/3KmNlGJGgBfN9bbt0psZPDIfBAKg+6peaLrUrF2Zuu6CQEz/N5Q6yjmBwC4C38FQ1azoZLAaF3wUCG1zNVuk7n90IOCf2rT2czIFV+wUF4HW8yceoZG2moGh8VtOi8sXr5tfXFRyv7UtC+ueAPPZqQoEMbaBsQyK1zPhO1AYE1rgDi9mhxa84+5+6oteYtPE7mIKuDL6z9gXmwa+T+MQZkcFgvnYErR5uqFUiVMCQeDvU82n4TUDfnPcFMV8ChGfzIrnABxcHI/dvdS/7bU/tmQs9Exvv9sh1mK2gAm01R8+CuR/DYxDE00taR7UjPzz+uYCxpCXTWtdWHsZM+6yKhAEdLOi5YYoEOnPj/7fVe+EGr5rgbGmwTc5JhAgX1V7zzBas8bnBmxnBaJ1+lSA34AyHLTq+8ZqZhepSam5dPhWYyvhgB+vRSl6Ko9n8MkMY18zTzNecomKLiImHzXiSXRcx7tugJcyCocAL4LWvnHyP8H8ucStkqmlXO3xXVfOmqj5aUNigSBFjFeDgkDPl7c0v0xL1vbGa8+uBbVzwfySYwJhvKgB7ciqFxvfdIOnswLRMf0C6Pxn5wQCTJ69ZTRpV6cVWLxmVJlOnhM0VqcEBUNNCOQLjoyPPNPax1uxI2mEQCSBtvrJiwBO8gKTTC3l+ohpWVi3iRUfFPQHABE2ssLzTPS85h/00uj7lrVbacOur80agR5qh+LA67eZn2IKfOXtwqoXV/3FSn3STeOsQLTPuBVK/66DAvGuVrNlUqoQeM2oAxXzycQ8XTE96p3e5vpxuqnWXfLlBoGO+dVnKpARPcS/lwjbZWopN/oqWS3a/qfuJJ34y2C8TD4sG31f48ep1rp5fu0GZp7onEDQbVUvNl2dav3s5HNWINpmPA3WT3dMIMCLtcmfyKKfnR6XtBkj0H5BzWegq9cYKJeppYxhzXtDzQtmPcwK9U4JBBjPjH1p1RlugHJWINpnfAilj3dKIIj5u1Tzye1ugJIyhEAkgW0XTB02RPetZvDhicgQ0Z/LHl4X95A+oVm4BFoWzLpKKdzmlEAQaFPVi00Hu0HQMYHgT48diqElXWCdHBMIpWppyqeBl1zkJwTcJNA2f/JiMJ+fRBw+5ZLSmvIH32hzs15SVvYJtNTX1irwSqcEAiDWh/UM33fpmt1Ot9Y5gWibdSSg/yewe8mhXUyk7R1pdYHaaZBiv3gItC2ovhIKdyRrscY4c+Qj658qHirS0hCBwEL1HnQ4JhDGIjrTUVUNTW84Td05gWifOQ+sHnNQID7RJm/Z32lAYl8IRBJora+eQ4RlYHgTRg+gP5UtXneRkCteArvqa7eAeT8ndjEFvlHNOLeyYZXjh4o6JxBtM68F1C+dEwi8pE3efGLxDkFpudsEmr9y2H4ev8f4bOhYmVpym35+lddcX/siM5/glEAQcF3VS6tudpqKcwLRMeM+KP6GYwIB/r1WveXbTgMS+0LAIMDzakrbS3g5wMfL1JKMCTMCzfNrf8eKv+WgQNxf9dKqS8zqke51JwXiBSg+0SmBIOYrafKW36QLQPILASsE2uqrfw/gm8nSkkwtWUFZFGma62uvYGbjVN/+Dw9F/jnqS3R2zmLqe5GP6cWqBuc/HuSgQMzcCKU+45hAED5LkzY/WxSjTRqZVQJt8yddBKYHkooDkexaymov5VbhLfUzT1NM/3JKIAD679iXmoInQTj4c04g2mfsBfMg5wTCczBN2rTJQTZiWgigrX7SMYDWCPDg5NEDf7Zs8QZ5YJExEyDQdt7x4/3k+dApgSBGT1XDqqRjMhNd4YhAcGddJZR/R/AUVQe2uRL8NPHjQUQIfspbfkLAJgFugHd3y0GVXh5cRr2eIcbRmOwv8Xn8pe2Dvb0tdMGb3R0XVlewH68zEDyjJ8GPiP5Q9vC6b9isgiQvYALGAY7N783qYQVv+NvWGZxiMmwq3VO1z8qVO53E6IxAdM88Cn7+t4MCsVmb9PGBToIR24VHgFcfMMS3p+c8+DzzoXvr2OcpZb8X8HvBfg+MPwf/7gF83rW+/3QOxh5//OO7+/AQYbOf/FMqHtrYUXjEpEXpENhVP+tjVjjAKYHQGEdXLl/1n3TqaJbXIYGoPR1+/WkHBeJlbdLHM8waJ9eFgEGAGZpaVXYJ69pP2OcdFysK8QRCf98HtWWvKUDScFrZQ+ufM00oCYqOwK7zZ61mxvHOCYR2RuXyxmecBOuMQHTMugisHnBMIMB/06o3z3MSjNguDAKBE3v9vr9C12ZERwn9UUOsQKhtDH3tHlMAMrVkiqioE+yqr13Cir/klEAQ6KtVDU0POgnZGYHorL0WSv+lgwJxp1a9Of5H4Z2kJbbzigD/e8yxyud7BkofA6XFTCPFFwjVrsH/Wg+gB74RkvAnU0t5NRSyUtld9bW/YcWXOyYQjOuqljv7spxDAjHrFih1tVMCYbxFSNUfO/4WYVZGlRSaEQL8TtVU1etfAZ9/JJSxUSK+QKjOEnCnB6x7APLA/4YO7jbf+yBTSxnppoI2squ+9lpW/EunBAJMt45d3nSNkxCdEog/QakLHRMI4vk0afNiJ8GI7fwlwO9OHMO+9je4p3c/+P2IFQjVWgrf2iHQP/aC99i/BXjwYPCgYWeM/r2z87/52wNSc4PArvNq6xn8sGMCAfrz2IYmR4+Tt393WOh77qp9Arp+tmMCwXQyTf7oBQtVkSRFSEBtPOTv2Lv7C9zbiyiB6PWg57WR8L05NPh2ayo/jweqvAzsp13eXfrEsiWrW1IxI3kKn8Cu8+pOYijjYMeBb1On+SZ14LOowD+rGlad4yRJpwRiOXR9tmMCQTiOJn28xkkwYjs/CfCnU07l7u5nsXcPIgWCez3Y8+QY6J+UptUwrigDkxdsfLK+C7+veKhRzgNLi2jhZt51/qxjmfGaUwIB0IqxDU1znCTojEB0znoTSh3hmECwOowmb9noJBixnZ8E1KeHv4zurumxArFnaSX8m9J88XTEYPCI4eBeDggEd8GndWmHjv7His35SUtq7SSBnfVzJkD533NKIAj0VlVD01Qn2+CQQNRugtIPckwg/N5xdPgH250EI7bzjwC3zTqSu9v/g93diBQIY0ppb8Oo9BqkEbD/aGNqKUIgGNyNRZWPN/00PeOSuxAJbD//+LEae7Y5JhBMH1UtbxrvJDtnBKJr1k7oaoxjAjFEG0LjN5m/xeQkObGdcwS4Y+aN3Nnx/UiB4D06uv84DrxXS1xf45IHgHHeRrLfuDKwVhIrEOsqH2+qyTkYUqGsE9h00dzBw/b69jgnENhVtXxVpZMNdUggajug6yMcEQiwT5v0cXoTyU4SFdtZI8DtM1/mro7pkQLhe7sUe5+LHz3QMEbJVB3amOA2V9XmgX+DAjfr8dswbBC4bES0QHQB+u5hw8c991x31houBecsgZ3n1faCuWSASGRgkRpA59iGVSOdbLwzAtE5iwNbC504rA9o1iZ9NMZJKGI7Pwlwx8xu7uwYGikQe/45Ev6NQwY0iAYxBp3als7LdgAAFVdJREFUA5R6os9i8nnhf6MX3OIfCEEj8LiKAQLh6aKDRi9r/Dg/qUmtnSSw87zaXWCucEQgGBi7fJUjPjzExBHj3FmroHRyRCCYN2jVH1c72aliO/8IMM/zoGOLn7s6ESkQ3X+sgGod+Pnokqm98E7S+w7niz6sj9sJ/jXxAwKuGgU2XroLLFKzsVANfTcfPu65Ve/kHzWpsdMEdp5Xux7MkxwRCBCPbWhKMneafuucEYiO2rPA+pRA9QJvsRrxVN/bqXro75HX+v4cSK/3JTXSBf6h/78MBqtlssU1/Y4vNAvMc73o6PHFCkTX3ZXgnoH30KCT9kAbYxzxHf80V1+j4fkHvizBY8rAxgnOEQKBLj66cpmzp2oWWn8VS3uMra4w3tti9H+cIMIdom82M/Cf0Av88f4b598U451xyxuXOsnSEYFwssJiWwjEI5BQIH5fCd4dRyDm7oU2luMLhM8D38rOuC/T8ZhyMDwiEDIMi4KACERRdHPhN9I40hsdM/TYCGL3Q6Ogbx+4p8F7iA8lx/njCkSy01x57GiwMXsaEUHQHq4e8+yqDYVPWVpYbAREIIqtxwu4vdw+Yzt3dVZFrkH0LBuO3jeHDWw1AaUze6GNo6hFatXlgb5mL7gnzlkcXg1cNXrAIjX2evat/NeKrQWMVppWpAREIIq04wux2dw+40nu6vxcpED4P/Bgz+MJNr0R4DlAwbOPsZ9Cg2rWoH+sAF+Cg5pGDgEPHxYlEOhGT0VryXBqaIiz7akQKUubiomACEQx9XaBt5XbZ1zGXZ13RW1zfbwM/g/SPGLD4GbcKfsZO5iM9YfQURuBN6mXVT7edEqBo5XmFSkBEYgi7fhCbDZ31lVyZ+sn6O4uMY7a6FlRgp6m4ZlpasVQYMTQ4NpDhEBQN11U8XjjnzJTiFgRArlFQAQit/pDapMmAfXplAfQ3X2Rf60fux/LkDgMLwXtW9YvDH0CgS7e1tI8cvyEZ57pSbPakl0I5CQBEYic7BapVKoEeNvUg/WPu9Z131MymPemP7ypfBCw7wgg8pC+PoFQ3bi08i+N96VaV8knBHKdQPp3UK63UOpXVAQ+vfTYocO467/cRfuk1fBSDdp+w4BRQwKRAyKnlgyB8FHj6LEr59Ci8OtNaRUnmYVALhIQgcjFXpE6pUygbX71X8BYYNUAGa9IlAAw9iCVEmiYBzTKCyofDFYlhhAMEAj0Yrva4zm24v6GLVbLkXRCIB8JiEDkY69JneMSaD+/ZiGTutMyHuNdiLl+aCM9YL/xP+NMJuPojf4/DxAIH9rIp04o/3XTG5bLkYRCIE8JiEDkacdJtaMJtNTX1GqkXgoclGTx553kh7eGo09zTSIQ8PEm3c9njr65ca3FIiSZEMhrAiIQed19UnmDQPeC6n18jH+DMc4qEW2kChz3zRz/sL5QNBGKIKgXj6i96n/Kf9nYarUMSScE8p2ACES+92CR15/n1ZS2l/JLYJ5pGQUBg0/dAypPfJprWCD81EA9atGIH6xcbtm+JBQCBUJABKJAOrJYm9E2f/JdYL7MTvs9++rPDj5hbxfr2jTl8x6AwNpDcN0B/pI26Nob7CtpUD7vYyOuXL7ejm1JKwQKiYAIRCH1ZpG1pbW++kICbL3FTIS1I1v8x9AzGwMvt7FxTv8SaKiaS2hoULJttcgGkTQ3KQERCBkgeUmgbX7NkWBeDbD1g5aIdFLq+LJHNqzJy0ZLpYWAywREIFwGLsWlT6B9Xs1olPAaBh9syxrhxvKH1//QVh5JLASKmIAIRBF3fj42nefB0146+Skwn2an/rFTS3bySlohUKwERCCKtefztN1t9dU/B3C9rerL1JItXJJYCIQIiEDIWMgbAsEtreoNMGlEvBugDga6iFln0CyAK+I2RqaW8qaPpaK5RUAEIrf6Q2qTIoG2+sMOAXnfA7Mn0oRMLaUIVLIJgb7vZAkIIVAQBNrrq1cwUBduDMEPRdPKH1n3n4JooDRCCLhMQCIIl4FLcc4RaJ8/+XpmNtYo+n700/LF6xY5V6JYFgKFTUAEorD7t6ha175gynGs9FeNRhPw5sgRw46je9f4igqCNFYIZJCACEQGYYqp7BLgRdDa35u8A8RlgHZc+cNr5Uju7HaJlJ7nBEQg8rwDpfrRBNrrJz8AYGPZ4nU3ChshIATSIyACkR4/yS0EhIAQKFgCIhAF27XSMCEgBIRAegREINLjJ7mFgBAQAgVLQASiYLtWGiYEhIAQSI+ACER6/CS3EBACQqBgCYhAFGzXSsOEgBAQAukREIFIj5/kFgJCQAgULAERiILtWmmYEBACQiA9AiIQ6fGT3EJACAiBgiUgAlGwXSsNEwJCQAikR0AEIj1+klsICAEhULAERCAKtmulYUJACAiB9AiIQKTHT3ILASEgBAqWgAhEwXatNEwICAEhkB4BEYj0+EluISAEhEDBEhCBKNiulYYJASEgBNIjIAKRHj/JLQSEgBAoWAIiEAXbtdIwISAEhEB6BEQg0uMnuYWAEBACBUtABKJgu1YaJgSEgBBIj4AIRHr8JLcQEAJCoGAJiEAUbNdKw4SAEBAC6REQgUiPn+QWAkJACBQsARGIgu1aaZgQEAJCID0CIhDp8ZPcQkAICIGCJSACUbBdKw0TAkJACKRHQAQiPX6SWwgIASFQsAREIAq2a6VhQkAICIH0CIhApMdPcgsBISAECpaACISzXSt8neUr1oUACwLnCOSjA8vHOjvXg2JZCAiBfCCQl0LmtrN1u7x8GDhW6ijcrFCSNPlCIC+dZQ7BdY2f247H7fKMPs1GmZkcS8nqb2eg5DuHTDIVW+kTsDL2MjV2069t5i1YaX/mSw1adK1sJ5xGvtiM7Dwn6pyJwRGqV6IBkYv1zsU6ZaIvct2Ga07DBgizcZuLdY5snlP1c8KuEzZtP11n8uZP1Vaq+ZKN63RsppPXxr0WN2k2y0637pK/8Ak44rQsYstE2ZmwEapuqrZSzRcPk21biRxMJhyPXRtW01tJZyVNonGWTl43bVq8T8LJnGiX3TpI+sIhYNvZZLDpTpSdCZvJbFi1bzVdusJjSUAMp5GO47CbN1n6VK8ZDc1kPeKBs2vfqWgllwXIaW4Z9C8FY8quM3Gr4U7UK9M27dqzm95gbZYn3nWzPFbsxvazFZtxBcOOQJg5SbPrkRWITJuOMJiJg9U6WU0XaoNT6e3atXPDO2k734TLDrdcTpvqjZ+JNjlVthW7VtJEttFueqtP51bsppomVfEwq7uV+kRNO2RimimejdC/mTkmqwJhNV3s4DcrP1ZkrKS3KxQhm6HOsVOGmQhavdntlmnVbiq8U7Ut+RITsHXjZwBkOuXZzRt731jNbzWd2VN5Ks7aap5EdbRS91CaTNiIOyRiI4hUnLCZwBjX4znGZKKSKNpI5izNohIzB2l2PVHZVvKlKih272M7dUnk2FMVMbt1TdbH6dgqhLxWnEOm25mqE3bjSd3sqTgei2QMjWuxD21WyzCzm4hHOoJhJgBm1+32UdheMoGwIxZmzj72ejJnbicaSWY3mVM2E7VEN59ZO1N9mrbj2O2kddIJp1qPTDu2TEVYTtQrG47errNMtd2pts1qPqvpEj3923HkVsQh1p5V+4mEwUwwzMqLvG4mEFZYxrVn3ORaghFi5kTNnLNVEYhnJ1HedMqMJxhm9sye/M2cpNl1O87Nii2rgmDXVrwhkgkbdoQ4VUeWT/ms3MiptCddu2b5za7H1tlOeqtpzRyulTqk6miTOfNE16z8u1W7ydoeumbGMa6NRAJh9SneamRg5vBD183SxTpUKyKULE08B20ncjJz8FYFKJXIw66DtpveTBxTcVRmvFK1WUz5zG50qyzStWM3v9Un7mT1N3PgVkTATsRh9Sk+FUeeKAKIdeiJHLxZ/njtNIs6BvCNFYhUHH7kTW/m4JMJQby8dgTArOxEzslMQGIdpR2nn0xok90IVpy5lTRmDtmqjXTratVpOSVKdsvPVnq7TtdKPdOxaSWvlTSJnHKo/lZs2BUYMzExu25FSMyctJ3rkeXFEwXj38zsxbORrB2mDCIFIp7jM3OGZk459roVgYhNk0w4rAhIMgdvJ3+y6CXejWpXHKwKlV0nalUErKZLJdqx4sgi06RaF7vl5Fp6K47Sbp1TsWknj9W0mXDwTtiIZzORg45kn+xpPFEUYEUEzJx8IqGIV5/YtiX6e8J0IYFIJATxHLoVh2smDHaFwk79EtXZ+HczJ2wmeFaco50yrNizk8aOYzXSRg4MK3mtpDFzYLliw6yembxu1YlaKTMdW3byGmljx4hZ/azYt5smmQMPjaVkzjreE7RVx5ksr5lDNhOZSEefiqCkKhTJ2j6gTbECkSxiSPZkH3q6tvK0n8iOXVGxU1YyUYuNDKxECnYjDytP/cnYJ7oxzZyt2XWrT+127KRaVzPnE8swkaPJRF2t1iU2Xbw6xXNiqdoP5bPiZJOVYZbf7LqVdsdzrvHqZFZWMoGwUo9YR5qIoS3HGVFwIueeTEAi8yQTEjPb8a4n4mWlfY4LRKRzjXxiN4sY4omGWZ7YspKJQDJb8QTCTCTiOSErDj6Z87JiM94NZuYQrdQrmTMxs+9U3lSFJvZGSKf+dp1ssrLMHGGqopGq3VTy2XHWVsTMSh2slhnPIUcyTWbHivOM1554jj5SGK2KRLw8kcJmJiKJhCRRXWLFO6F9Y0B7IihaeTK26myTCYRZFGFHXBI582QRhpkAxBONeO2OFaXIAZmMZaJ0sU7CrqAkErtk9TRzTKk42FTymNUjnTZYte1kOivOMNXyU7GdSp5Yx2LmgM2uW6lDKgKRqNxEIpKueEQ680wKRCLhiP13MwGJFbdEgjjg340b2XgPIpHzS+ZkEz2ZRtpKJASRjiyZWCQSIyvO36x+mRaJZKKSjiBYcbZW0litXzInFVlOaDBZLTuRg0/Vjh1nareOZratODYzG8muJ2Nip+xYO3byJhIDKzbM0lh1+rGMkj3pxzrBeCJhVm46kUSqTjpZpGA1MrCazkw4BwhorEDE3sSJnoLtRBEhx5SqWFgRKStp7AqClQggWVQRzyEn+rdEzjOeE4nn7Ow6QCfT27Vt5kgzbc+sPDevmzlSO3WxY8tO2kRCYUXg4qWxUraZIzcTjtg6mwlLOsIQWZYVkUjkzM2cvFm+UD0GOPk+WFaihoQCkejpMtFTeGR6qyJiJhBWnHwyYTKrR6I62xWOVJy8FbExs5tMRMycaOi6naf1yDxm9q04skzYSMQgcmBnshwr7Ur0VBbZn1acop2y0rVnN7KIN26S1SHVayEGZgKRin07IpBMYMwccLzryf4tkajYyZOsTlbanTBNKIKId+Mlezq26qjjOWUreZOJRTKbZs7ebpsSOaRkTijVJ3wzx5ZMrJM5FzO7yYTHitOyat+KrXTrYqeMXEybruOP16ZUbNrJYzWtmdNP1B9281lNn8ipJhOH2GuRf0/2hG7n6T2RYITKMhOoeOns1DsqbTKBSCYa8Z52kzn+RI7bah470UE8AYlX39j2JXJ0Zg7frljE3gjp5k/WNjtlZUJksuXgnRCpTAiIVeeZbll2y7GbPlQ/q/kymc6KLTNRMLseyd8srVUHHY+Z3egikQCZ1SGeyMS2MRnX8LVYgUh2gyebJrHrwM0EI9H1ZP+eqWtWnGqqTt2qI0vVfmTdrZaVaadut9x0naMdgcxEWXZsWHFuduwlS5vJsuzasps+0vHFa1Mie1bKMXPwseVZTZ/M6SaKEGLbaebYrQhCOjZtc08kEGY3nZWpmniOJ9k0SaJrVsTHqrCZOUOrUUSqDtyq88x0Oiuil6qjiqxr5A1gtQ3xxpoVR5COGKbaVrv5Um2HnXxmzO3YStS+VG1YzZfJdHYdfmSbzeph9mQespVICOIJgFl9UxGfeG2y2raovMZNnCwysCoUidLZnZ4xSx9bTjLBMRMDO3VOxcFadZBW2mzVMVkt04q9TNpKVp5b5Vhpcy6lMbuhM13XTJSXqg0r+czSJLtultf2k7XJ96ZjBcJORGRVEOKJUSKxMxOh2LEUTh8rEGZPZVZuZqtTUWYO3Irzt1Nfu47YSlvNBDTeTWzVrlnb7DqIVMq1W0YqPFIpI5Fgx7sRnGp3MqcTKtOKY8pE+80cXKbKSOSA7NpPhYvdPFbTW0mXKCJIJ68dB5/QgfcJVWQ9ko09u0IRiB7MbiCz66k8iVt11k6UbeZ4Uy3TyadkK3Uyu0nj2Yg3sMzsmF3PRF3NypDrAwlYcVZ2uBn2kvVlOuWlkzcVMbRSXroRSKJ62bXrdHozYYoaI1YEwsyhJhp0Zo4iExFCoidJsxvBrG6p2k2VRabrG8+e3Tab1SmT13O5bplsp1VbVhyaVVtOpUunjunkTUUg4jGwWwc76c3SWhUBMzt2WVixF8mKYwUiZCCVG9ZOHjtpU4lQMu0g7dbXyWgi1Rs+k21ItQ5O5cvVttm9IZ3i44Rdt9uW6fJStWc3n1UxsNJHVsu2mi62zFj/HxCITDvTTDrHVG98u/nsprfSmZFpnLZvpT65UAcr9ZQ0+UEgVSeUida5VbbdcuymD7Gwm89ueqvMB9i16zTsprdasURRgp38kTYiG+pknTMphnbbmilmqZQreYSAFQJOObJ4ZbtZllF+vPJCviaduqST16xPbNt2wnk6YTMfnaFTHMwGQbavF2u7s83d9s2f7QpnuPx8ar8TdXXCpukOpgz3oevlpVL/RA4uF6KSVNrjdh4RCLeJB8tzxEFkpykZLzXZ036q0zwZr6QNg671db7czPlSTxt9nJGkwiUjGMWICwRcc2outCVTReQ8E3Ew1rpaOFnjJKmEQL4QyHnnnAsgxfE52wtO85VB7mz/ifXMEXDqXpB7IHN9NMCSU53mYJXFtBAQAkJACLhBQATCDcpShhAQAkIgDwmIQORhp0mVhYAQEAJuEBCBcIOylCEEhIAQyEMCIhB52GlSZSEgBISAGwREINygLGUIASEgBPKQgAhEHnaaVFkICAEh4AYBEQg3KEsZQkAICIE8JCACkYedJlUWAkJACLhBQATCDcpShhAQAkIgDwmIQORhp0mVhYAQEAJuEBCBcIOylCEEhIAQyEMCIhB52GlSZSEgBISAGwREINygLGUIASEgBPKQgAhEHnaaVFkICAEh4AYBEQg3KEsZQkAICIE8JCACkYedJlUWAkJACLhBQATCDcpShhAQAkIgDwmIQORhp0mVhYAQEAJuEBCBcIOylCEEhIAQyEMC/x+vK9VRfXeGLQAAAABJRU5ErkJggg=='; $pvars = array('image' => $imgtest, 'type' => 'base64'); $timeout = 30; $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, 'https://api.imgur.com/3/image.json'); curl_setopt($curl, CURLOPT_TIMEOUT, $timeout); curl_setopt($curl, CURLOPT_HTTPHEADER, array('Authorization: Client-ID ' . $client_id)); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $pvars); $out = curl_exec($curl); curl_close ($curl); $output = json_decode($out,true); $url=$output['data']['link']; if($url!=""){ echo "<img src='$url'/><br/>$url"; }else{ echo 'Nope, errorrrr; '.$output['data']['error']; } ?> |
Dus doel je op het gebruiken van ACL. Op zich niet een groot probleem om in te bouwen hoor, alleen zit veel meer werk aan dan een simpeler rechten systeem En vroeg mij af of er niet meer soorten rechten systemen zijn... oh en met bitwise hoef ik in de database per gebruiker maar 1 'getal' in te voeren die daarmee gelijk alle rechten aan de gebruiker geeft.quote:Op maandag 14 maart 2016 22:58 schreef KomtTijd... het volgende:
Bitvelden zou ik per definitie met een zo groot mogelijke boog omheen werken, tenzij je écht niet anders kan (maar gezien dit het PHP topic is lijkt me niet dat je op een microcontroller met een paar kB geheugen zit).
Wat ik zelf een handige structuur vindt:
- gebuikers kunnen tot 1 of meerdere groepen behoren
- groepen kunnen verschillende rechten hebben
Op die manier hoef je niet per user tig vinkjes door te werken maar heb je wel alle flexibiliteit om iedereen precies de juiste rechten te geven, door een gebruiker aan een combinatie van groepen te hangen.
Ik zit er al een tijdje niet meer in, maar een beetje PHP framework heeft toch wel gewoon standaard een ACL-achtig systeem?quote:Op dinsdag 15 maart 2016 18:43 schreef Igen het volgende:
Zó ingewikkeld is het maken van een ACL toch ook weer niet.
(Nou ja, ik weet niet wat de prestaties zijn van wat ik heb gemaakt als je miljoenen diep in elkaar geneste objecten hebt...)
Vast wel. Nou weet ik niet wat Chandler wil maar misschien kan die ook wel gewoon WordPress gebruiken o.i.d.quote:Op dinsdag 15 maart 2016 18:48 schreef Monolith het volgende:
[..]
Ik zit er al een tijdje niet meer in, maar een beetje PHP framework heeft toch wel gewoon standaard een ACL-achtig systeem?
1 2 3 | <?php /* niet relevant meer */ ?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |