{"id":34389,"date":"2026-08-26T13:22:26","date_gmt":"2026-08-26T10:22:26","guid":{"rendered":"https:\/\/sarhgroups.com\/?page_id=34389"},"modified":"2026-10-26T12:15:12","modified_gmt":"2026-10-26T09:15:12","slug":"certifr","status":"publish","type":"page","link":"https:\/\/sarhgroups.com\/en\/certifr","title":{"rendered":"CertIFR \u2014 Certificate in International Financial Reporting"},"content":{"rendered":"<style>\n.crs{--nv:#16243f;--rd:#b5181a;--mu:#687386;--tx:#3f4a5d;--ln:#dfe4ea;--sf:#f7f6f3;\n  --mist:#eef3f7;color:var(--tx);font-family:inherit;line-height:1.9}\n.crs *{box-sizing:border-box}\n.crs-hero{padding:44px 0 30px;border-bottom:1px solid var(--ln);margin-bottom:32px}\n.crs-eb{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;color:var(--rd);\n  font-size:12px;font-weight:800;letter-spacing:.05em}\n.crs-eb::before{content:\"\";width:8px;height:8px;border-radius:50%;background:var(--rd);\n  box-shadow:0 0 0 5px rgba(181,24,26,.1)}\n.crs h1{margin:0 0 12px;color:var(--nv);font-size:clamp(26px,4vw,38px);font-weight:850;\n  line-height:1.22}\n.crs-lede{margin:0;max-width:66ch;color:var(--tx);font-size:15.5px;line-height:1.9}\n.crs-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(158px,1fr));gap:10px;\n  margin:26px 0 0}\n.crs-s{padding:15px 16px;border:1px solid var(--ln);border-radius:15px;background:var(--sf)}\n.crs-s b{display:block;color:var(--nv);font-size:17px;font-weight:850;line-height:1.25}\n.crs-s span{display:block;margin-top:3px;color:var(--mu);font-size:12px;line-height:1.6}\n.crs-sec{margin-bottom:34px}\n.crs h2{margin:0 0 14px;color:var(--nv);font-size:21px;font-weight:850;line-height:1.3}\n.crs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}\n.crs-c{padding:17px 19px;border:1px solid var(--ln);border-radius:16px;background:#fff}\n.crs-c b{display:block;margin-bottom:5px;color:var(--nv);font-size:14.5px;font-weight:800}\n.crs-c span{display:block;color:var(--mu);font-size:12.5px;line-height:1.8}\n.crs-list{display:grid;gap:8px}\n.crs-list div{display:flex;gap:11px;align-items:flex-start;padding:13px 16px;\n  border:1px solid var(--ln);border-radius:13px;background:#fff;color:var(--tx);\n  font-size:13px;line-height:1.8}\n.crs-list i{flex:none;width:7px;height:7px;margin-top:8px;border-radius:50%;background:var(--rd)}\n.crs-tbl{width:100%;border-collapse:collapse;font-size:13.5px;border:1px solid var(--ln);\n  border-radius:14px;overflow:hidden}\n.crs-tbl th{padding:12px 16px;background:var(--sf);color:var(--nv);font-weight:800;\n  text-align:start;width:34%;border-bottom:1px solid var(--ln);font-size:13px}\n.crs-tbl td{padding:12px 16px;border-bottom:1px solid var(--ln);color:var(--tx)}\n.crs-tbl tr:last-child th,.crs-tbl tr:last-child td{border-bottom:none}\n.crs-note{padding:18px 20px;border-radius:16px;background:var(--mist);margin-bottom:34px}\n.crs-note b{display:block;margin-bottom:7px;color:var(--nv);font-size:14.5px;font-weight:800}\n.crs-note p{margin:0 0 7px;color:var(--tx);font-size:13px;line-height:1.9}\n.crs-note p:last-child{margin-bottom:0}\n.crs-cta{display:flex;flex-wrap:wrap;gap:10px;padding:22px;border-radius:18px;\n  background:var(--nv);align-items:center}\n.crs-cta p{flex:1 1 260px;margin:0;color:#dbe3f0;font-size:14px;line-height:1.75}\n.crs a.crs-b{display:inline-flex;align-items:center;padding:12px 22px;border-radius:11px;\n  background:var(--rd);color:#fff;font-size:13.5px;font-weight:800;text-decoration:none}\n.crs a.crs-b2{background:#fff;color:var(--nv)}\n.crs-test{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px}.crs-t{padding:18px 19px;border:1px solid var(--ln);border-radius:16px;background:#fff}.crs-t header{display:flex;gap:12px;align-items:center;margin-bottom:10px}.crs-t img{width:52px;height:52px;border-radius:50%;object-fit:cover}.crs-t b{display:block;color:var(--nv);font-size:14px}.crs-t span{display:block;color:var(--mu);font-size:12px;line-height:1.5}.crs-t p{margin:0;color:var(--tx);font-size:13.5px;line-height:1.9}.crs-fig{margin:0 0 26px;border-radius:18px;overflow:hidden;border:1px solid var(--ln);background:var(--sf)}.crs-fig img{display:block;width:100%;height:auto}.crs-fig figcaption{padding:10px 15px;color:var(--mu);font-size:12.5px;line-height:1.65}.crs-acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.crs-acts a.crs-b2,.crs-next a.crs-b2{border:1px solid var(--ln)}.crs-next{padding:20px 22px;border:1px solid var(--ln);border-radius:16px;background:#fff}.crs-next-fb p{margin:0 0 14px;color:var(--tx);font-size:13.5px;line-height:1.9}<\/style>\n<div class=\"crs\" dir=\"ltr\" style=\"text-align:left\">\n<div class=\"crs-hero\">\n<div class=\"crs-eb\">Accounting<\/div>\n<h1>Certificate in International Financial Reporting (CertIFR)<\/h1>\n<p class=\"crs-lede\">CertIFR, awarded by the ACCA, is a foundational qualification in IFRS. It gives you a clear working understanding of the standards and how they are applied, and makes a strong starting point for CMA, DipIFR, CPA, ACCA or JCPA.<\/p>\n<div class=\"crs-stats\">\n<div class=\"crs-s\"><b>27<\/b><span>training hours<\/span><\/div>\n<div class=\"crs-s\"><b>Two lectures a week<\/b><span>the calendar length depends on the section&#8217;s schedule<\/span><\/div>\n<div class=\"crs-s\"><b>ACCA<\/b><span>awarding body<\/span><\/div>\n<div class=\"crs-s\"><b>195 JOD<\/b><span>material and certificate included<\/span><\/div>\n<\/div>\n<div class=\"crs-acts\"><a class=\"crs-b\" href=\"https:\/\/sarhgroups.com\/en\/products\/certifr-financial-reporting-standards-course\">Enrol now<\/a><a class=\"crs-b crs-b2\" href=\"https:\/\/sarhgroups.com\/en\/products\/certifr-financial-reporting-standards-course\" data-sarh-schedule=\"\u0645\u0639\u0627\u064a\u064a\u0631 \u0627\u0644\u0625\u0628\u0644\u0627\u063a \u0627\u0644\u0645\u0627\u0644\u064a \u0627\u0644\u062f\u0648\u0644\u064a\u0629|CertIFR\">Dates and enrolment<\/a><\/div>\n<\/div>\n<p><!-- sarh-scene-v1 --><\/p>\n<figure class=\"crs-fig\"><img src=\"https:\/\/sarhgroups.com\/wp-content\/uploads\/2026\/08\/certifr-live-classroom.webp\" alt=\"A CertIFR session in Sarh International&#8217;s classrooms in Amman\" width=\"1600\" height=\"900\" loading=\"lazy\" decoding=\"async\"><figcaption>A CertIFR session at Sarh&#8217;s premises in Jabal Al-Hussein, Amman.<\/figcaption><\/figure>\n<div class=\"crs-sec\">\n<h2>Why study it at Sarh<\/h2>\n<div class=\"crs-grid\">\n<div class=\"crs-c\"><b>No prerequisites<\/b><span>Suitable for beginners and for anyone wanting a base before the larger certifications.<\/span><\/div>\n<div class=\"crs-c\"><b>Simplified handouts<\/b><span>Supporting material that reduces the standards to what you actually need.<\/span><\/div>\n<div class=\"crs-c\"><b>Interactive question bank<\/b><span>Practise the shape of the questions before the exam.<\/span><\/div>\n<div class=\"crs-c\"><b>Your instructors<\/b><span>Two certified trainers holding CMA, DipIFR and CFC.<\/span><\/div>\n<\/div>\n<\/div>\n<div class=\"crs-sec\">\n<h2>Course syllabus<\/h2>\n<div class=\"crs-list\">\n<div><i><\/i><span>The syllabus covers more than 30 IFRS and IAS standards<\/span><\/div>\n<div><i><\/i><span>The conceptual framework, IFRS 1 and IFRS 15 (revenue)<\/span><\/div>\n<div><i><\/i><span>Financial instruments: IAS 32, IAS 39 and IFRS 9<\/span><\/div>\n<div><i><\/i><span>Provisions (IAS 37, IAS 10), fair value (IFRS 13) and leases (IFRS 16)<\/span><\/div>\n<div><i><\/i><span>Associates and joint arrangements: IAS 28, IFRS 11 and IFRS 12<\/span><\/div>\n<div><i><\/i><span>Cash flows (IAS 7), groups (IFRS 10, IFRS 3) and foreign exchange (IAS 21)<\/span><\/div>\n<div><i><\/i><span>Tax (IAS 12), property plant and equipment (IAS 16), intangibles (IAS 38)<\/span><\/div>\n<div><i><\/i><span>Impairment (IAS 36), inventories (IAS 2), insurance contracts (IFRS 17), employee benefits (IAS 19)<\/span><\/div>\n<div><i><\/i><span>EPS (IAS 33), segments (IFRS 8), related parties (IAS 24) and IFRS for SMEs<\/span><\/div>\n<\/div>\n<\/div>\n<div class=\"crs-sec\">\n<h2>About the exam<\/h2>\n<table class=\"crs-tbl\">\n<tbody>\n<tr>\n<th>Questions<\/th>\n<td>25 multiple choice<\/td>\n<\/tr>\n<tr>\n<th>Duration<\/th>\n<td>One hour<\/td>\n<\/tr>\n<tr>\n<th>Language<\/th>\n<td>English<\/td>\n<\/tr>\n<tr>\n<th>Pass mark<\/th>\n<td>50%<\/td>\n<\/tr>\n<tr>\n<th>Where<\/th>\n<td>Online, on demand, at any time<\/td>\n<\/tr>\n<tr>\n<th>Entry requirements<\/th>\n<td>None<\/td>\n<\/tr>\n<tr>\n<th>What you need<\/th>\n<td>A passport or ID and a working email address<\/td>\n<\/tr>\n<tr>\n<th>Fees<\/th>\n<td>180 JOD, covering three attempts, separate from the course fee and subject to ACCA&#8217;s fee at registration<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<div class=\"crs-sec\" id=\"dates\">\n<h2>When the next cohort starts<\/h2>\n<div class=\"crs-next\" data-sarh-next=\"sarhgroups.com\/products\/certifr-online-interactive-course\">\n<div class=\"crs-next-fb\">\n<p>See the next start date, with its days and times, in the course schedule.<\/p>\n<p><a class=\"crs-b crs-b2\" href=\"https:\/\/sarhgroups.com\/en\/products\/certifr-financial-reporting-standards-course\" data-sarh-schedule=\"\u0645\u0639\u0627\u064a\u064a\u0631 \u0627\u0644\u0625\u0628\u0644\u0627\u063a \u0627\u0644\u0645\u0627\u0644\u064a \u0627\u0644\u062f\u0648\u0644\u064a\u0629|CertIFR\">Dates and enrolment<\/a><\/div>\n<\/div>\n<\/div>\n<div class=\"crs-note\"><b>Study details<\/b><\/p>\n<p>Taught in Arabic; material and exam in English. The course runs in person and online together.<\/p>\n<p>Fees are paid in full up front, or in two payments within a month of registering.<\/p>\n<p>Every course runs in person and online at the same time. Each lecture is recorded and uploaded to your Sarh Online account within 24 hours, and stays available to you for one year.<\/p>\n<p>The certificate is the same whether you attend in person, online, or through the recordings.<\/p>\n<p>Course fees cover the material, the lectures, the teaching and the support. They do not cover the official exam fees.<\/p>\n<p>Our centre is in Jabal Al-Hussein, Amman. We are open Saturday to Thursday, 8:30am to 8pm.<\/p>\n<\/div>\n<p><!-- sarh-testimonials-v1 --><\/p>\n<div class=\"crs-sec\">\n<h2>What our graduates say<\/h2>\n<div class=\"crs-test\">\n<div class=\"crs-t\">\n<header><img src=\"https:\/\/sarhgroups.com\/wp-content\/uploads\/2026\/08\/certifr-grad-elias-zabaneh-portrait.webp\" alt=\"Elias Zabaneh\" width=\"52\" height=\"52\" loading=\"lazy\" decoding=\"async\"><span><b>Elias Zabaneh<\/b>CFO \u2014 Khoury Group \u00b7 translated from Arabic<\/span><\/header>\n<p>All thanks to this wonderful institution and the people behind it. Thankfully I earned the IFRS certificate with distinction. The trainers are excellent &#8212; special thanks to both trainers.<\/p>\n<\/div>\n<div class=\"crs-t\">\n<header><img src=\"https:\/\/sarhgroups.com\/wp-content\/uploads\/2026\/08\/certifr-grad-omar-qammaz-portrait.webp\" alt=\"Omar Qammaz\" width=\"52\" height=\"52\" loading=\"lazy\" decoding=\"async\"><span><b>Omar Qammaz<\/b>Reconciliation Senior Officer \u2014 Military Credit Fund \u00b7 translated from Arabic<\/span><\/header>\n<p>All thanks and appreciation to Sarh for the outstanding support and excellent training. It was a very rewarding experience, and thankfully I passed &#8212; by God&#8217;s grace and then through your efforts. I recommend your valuable courses to everyone.<\/p>\n<\/div>\n<div class=\"crs-t\">\n<header><img src=\"https:\/\/sarhgroups.com\/wp-content\/uploads\/2026\/08\/certifr-grad-sara-mohammad-portrait.webp\" alt=\"Sara Mohammad\" width=\"52\" height=\"52\" loading=\"lazy\" decoding=\"async\"><span><b>Sara Mohammad<\/b>Account Manager<\/span><\/header>\n<p>This certification has added real value to my professional skills, I really thank the trainers and Sarh for the amazing course!<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"crs-cta\">\n<p>Enrol now, or check the upcoming cohort dates. For any question, get in touch and we will guide you.<\/p>\n<p><a class=\"crs-b\" href=\"https:\/\/sarhgroups.com\/en\/products\/certifr-financial-reporting-standards-course\">Enrol now<\/a><a class=\"crs-b crs-b2\" href=\"https:\/\/sarhgroups.com\/en\/products\/certifr-financial-reporting-standards-course\" data-sarh-schedule=\"\u0645\u0639\u0627\u064a\u064a\u0631 \u0627\u0644\u0625\u0628\u0644\u0627\u063a \u0627\u0644\u0645\u0627\u0644\u064a \u0627\u0644\u062f\u0648\u0644\u064a\u0629|CertIFR\">Dates and enrolment<\/a><a class=\"crs-b crs-b2\" href=\"https:\/\/sarhgroups.com\/en\/contact-us-2\">Contact us<\/a><\/div>\n<\/div>\n<style id=\"sarh-tms-css\">\/* Sarh \u00d7 TMS schedule widget \u2014 palette matches the certification pages *\/ .sarh-next,.sarh-next *{box-sizing:border-box} .sarh-next{display:grid; grid-template-columns:minmax(0,1fr) minmax(190px,auto); gap:22px; align-items:center; width:100%} .sarh-next-kick{display:block; color:#b5181a; font-size:12px; font-weight:800; line-height:1.5; letter-spacing:.01em; margin-bottom:4px} .sarh-next-date{display:block; color:#16243f; font-size:clamp(19px,2.2vw,25px); font-weight:850; line-height:1.25; margin-bottom:4px} .sarh-next-cohort{display:block; color:#687386; font-size:12.5px; line-height:1.6; margin-bottom:12px} .sarh-next-rows{display:grid; grid-template-columns:auto 1fr; gap:4px 12px; margin:0} .sarh-next-rows dt{color:#687386; font-size:12px; line-height:1.7; margin:0} .sarh-next-rows dd{color:#16243f; font-size:12.5px; font-weight:700; line-height:1.7; margin:0} .sarh-next-more{margin:10px 0 0; color:#687386; font-size:11.5px; line-height:1.6} .sarh-next-side{display:grid; gap:8px; justify-items:stretch; text-align:center} .sarh-next-price{color:#16243f; font-size:13px; line-height:1.7} .sarh-next-price b{font-family:Montserrat,Cairo,sans-serif; font-size:21px; color:#b5181a} .sarh-next-price s{color:#98a2b3; margin-inline-start:6px; font-size:12.5px} .sarh-next-price i{display:block; color:#687386; font-size:11px; font-style:normal; margin-top:2px} .sarh-next-btn{display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 22px; border-radius:999px; background:#b5181a; color:#fff !important; font-size:13.5px; font-weight:800; text-decoration:none !important; transition:background .2s ease, transform .2s ease} .sarh-next-btn:hover{background:#8f1214; transform:translateY(-1px)} .sarh-next-all{appearance:none; border:1px solid #dfe4ea; border-radius:999px; background:#fff; color:#16243f; padding:9px 18px; font-size:12px; font-weight:750; cursor:pointer; font-family:inherit; transition:border-color .2s ease, color .2s ease} .sarh-next-all:hover{border-color:#b5181a; color:#b5181a} @media(max-width:767px){.sarh-next{grid-template-columns:1fr; gap:16px}.sarh-next-side{justify-items:stretch}} \/* ---------------- modal ---------------- *\/ .sarh-modal{position:fixed; inset:0; z-index:99999; display:none} .sarh-modal.is-open{display:block} .sarh-modal-back{position:absolute; inset:0; background:rgba(10,19,37,.55); backdrop-filter:blur(2px)} .sarh-modal-card{position:relative; z-index:1; width:min(980px,calc(100% - 32px)); max-height:86vh; margin:7vh auto 0; display:flex; flex-direction:column; overflow:hidden; border-radius:26px; background:#fff; box-shadow:0 40px 100px rgba(10,19,37,.4)} .sarh-modal-top{display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:24px 26px; border-bottom:1px solid #dfe4ea; background:#f7f6f3} .sarh-modal-top h2{margin:0 0 4px; color:#101827; font-size:clamp(20px,2.4vw,27px); line-height:1.25; font-weight:850} .sarh-modal-top p{margin:0; color:#687386; font-size:12.5px; line-height:1.7} .sarh-modal-x{appearance:none; border:0; background:#fff; border:1px solid #dfe4ea; border-radius:50%; width:36px; height:36px; flex:none; font-size:22px; line-height:1; color:#16243f; cursor:pointer} .sarh-modal-x:hover{border-color:#b5181a; color:#b5181a} .sarh-modal-body{padding:8px 26px 26px; overflow-y:auto} .sarh-modal-msg{margin:26px 0; color:#687386; font-size:14px; text-align:center} .sarh-mon{margin-top:22px} .sarh-mon h3{position:sticky; top:0; margin:0 0 12px; padding:10px 0; background:#fff; color:#b5181a; font-size:13px; font-weight:850; letter-spacing:.02em} .sarh-mon-list{display:grid; gap:10px} .sarh-row{display:grid; grid-template-columns:minmax(0,1fr) minmax(170px,auto); gap:18px; align-items:center; padding:16px 18px; border:1px solid #dfe4ea; border-radius:16px; background:#fff; transition:border-color .2s ease, box-shadow .2s ease} .sarh-row:hover{border-color:#c9d2dd; box-shadow:0 10px 26px rgba(22,36,63,.07)} .sarh-row-main strong{display:block; color:#16243f; font-size:15px; line-height:1.45} .sarh-row-cohort{display:inline-block; margin-top:4px; padding:3px 9px; border-radius:999px; background:#eef3f7; color:#16243f; font-size:11px; font-weight:750} .sarh-row-date{display:block; margin-top:6px; color:#3f4a5d; font-size:12.5px; font-weight:700; line-height:1.6} .sarh-row-meta{display:block; margin-top:3px; color:#687386; font-size:11.5px; line-height:1.6} .sarh-row-side{display:grid; gap:6px; justify-items:stretch; text-align:center} .sarh-row-price{color:#16243f; font-size:12px; line-height:1.6} .sarh-row-price b{font-family:Montserrat,Cairo,sans-serif; font-size:17px; color:#b5181a} .sarh-row-price s{color:#98a2b3; margin-inline-start:5px; font-size:11.5px} .sarh-row-price i{display:block; color:#687386; font-size:10.5px; font-style:normal} .sarh-row-btn{display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:8px 18px; border-radius:999px; background:#b5181a; color:#fff !important; font-size:12.5px; font-weight:800; text-decoration:none !important} .sarh-row-btn:hover{background:#8f1214} .sarh-row-link{color:#687386 !important; font-size:11px; text-decoration:none !important} .sarh-row-link:hover{color:#b5181a !important} @media(max-width:767px){.sarh-modal-card{width:calc(100% - 20px); margin:4vh auto 0; max-height:92vh; border-radius:20px}.sarh-modal-top{padding:18px}.sarh-modal-body{padding:6px 18px 20px}.sarh-row{grid-template-columns:1fr; gap:12px}.sarh-row-side{justify-items:stretch}} @media(prefers-reduced-motion:reduce){.sarh-next-btn,.sarh-row{transition:none}} .sarh-modal-x{width:38px!important;height:38px!important;min-width:0!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;border-radius:50%!important;flex:none!important;font-size:20px!important}<\/style>\n<p><script>(function(){try{var d=atob(\"LyogU2FyaCDDlyBUTVMgc2NoZWR1bGUgd2lkZ2V0LgogICBSZWFkcyB0aGUgbGl2ZSBmZWVkIGF0IHRtcy5zYXJoaW50LmNvbSBhbmQgZmlsbHMgaW4gdHdvIHRoaW5nczoKICAgICBbZGF0YS1zYXJoLW5leHQ9Ijxwcm9kdWN0IHBhdGg+Il0gIC0+IHRoZSBuZXh0IG9wZW4gY29ob3J0IGZvciB0aGF0IGNvdXJzZQogICAgIFtkYXRhLXNhcmgtc2NoZWR1bGVdICAgICAgICAgICAgICAgLT4gYSBidXR0b24gdGhhdCBvcGVucyB0aGUgZnVsbCBzY2hlZHVsZQogICBQcm9ncmVzc2l2ZSBlbmhhbmNlbWVudDogaWYgdGhlIGZlZWQgaXMgdW5yZWFjaGFibGUgb3IgZW1wdHksIHdoYXRldmVyIG1hcmt1cAogICBpcyBhbHJlYWR5IGluc2lkZSB0aGUgZWxlbWVudCBpcyBsZWZ0IGV4YWN0bHkgYXMgaXQgaXMuICovCihmdW5jdGlvbiAoKSB7CiAgaWYgKHdpbmRvdy5fX3NhcmhUTVMpIHJldHVybjsKICB3aW5kb3cuX19zYXJoVE1TID0gMTsKCiAgdmFyIEZFRUQgPSAiaHR0cHM6Ly90bXMuc2FyaGludC5jb20vc2NoZWR1bGUvZmVlZCI7CiAgdmFyIFRNUyAgPSAiaHR0cHM6Ly90bXMuc2FyaGludC5jb20iOwogIHZhciBDS0VZID0gInNhcmgtdG1zLWZlZWQtdjEiOwogIHZhciBUVEwgID0gNSAqIDYwICogMTAwMDsKCiAgdmFyIEFSID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmxhbmcuaW5kZXhPZigiYXIiKSA9PT0gMDsKICB2YXIgVCA9IEFSID8gewogICAgbmV4dDogItin2YTYr9mI2LHYqSDYp9mE2YLYp9iv2YXYqSDYqtio2K\/YoyIsIGRheXM6ICLYo9mK2KfZhSDYp9mE2K\/ZiNin2YUiLCB0aW1lOiAi2KfZhNiq2YjZgtmK2KoiLCBtb2RlOiAi2LfYsdmK2YLYqSDYp9mE2K3YttmI2LEiLAogICAgbGVjdHVyZXM6ICLYudiv2K8g2KfZhNmF2K3Yp9i22LHYp9iqIiwgcHJpY2U6ICLYp9mE2LHYs9mI2YUiLCB3YXM6ICLYqNiv2YTZi9inINmF2YYiLCBjYWxsOiAi2KfYqti12YQg2KjZhtinIiwgYWxsQ291cnNlOiAi2KzYr9mI2YQg2LTZj9i52Y7YqCDYp9mE2K\/ZiNix2KkiLAogICAgcmVnOiAi2LPYrNmR2YQg2KfZhNii2YYiLCBhbGw6ICLYrNiv2YjZhCDYp9mE2K\/ZiNix2KfYqiDYp9mE2YPYp9mF2YQiLCBub25lOiAi2YTYpyDYqtmI2KzYryDYtNmP2LnZjtioINmF2YHYqtmI2K3YqSDYrdin2YTZitmL2Kcg2YTZh9iw2Ycg2KfZhNiv2YjYsdipIiwKICAgIHRpdGxlOiAi2KzYr9mI2YQg2KfZhNiv2YjYsdin2KoiLCBzdWI6ICLYp9mE2LTZj9i52Y7YqCDYp9mE2YXZgdiq2YjYrdipINmE2YTYqtiz2KzZitmEINiu2YTYp9mEINin2YTYo9i02YfYsSDYp9mE2YLYp9iv2YXYqSIsCiAgICBjbG9zZTogItil2LrZhNin2YIiLCBjb2hvcnQ6ICLYp9mE2LTYudio2KkiLCBmcm9tOiAi2YXZhiIsIHRvOiAi2KXZhNmJIiwgY2FzaDogIti52YbYryDYp9mE2LPYr9in2K8g2KfZhNmD2KfZhdmEIiwKICAgIGNhbXBhaWduOiAi2LnYsdi2INmE2YHYqtix2Kkg2YXYrdiv2YjYr9ipIiwgZW1wdHk6ICLZhNinINiq2YjYrNivINiv2YjYsdin2Kog2YXYrNiv2YjZhNipINit2KfZhNmK2YvYpyIsIGVycjogItiq2LnYsNmR2LEg2KrYrdmF2YrZhCDYp9mE2KzYr9mI2YQiLAogICAgbG9hZGluZzogItis2KfYsdmNINiq2K3ZhdmK2YQg2KfZhNis2K\/ZiNmE4oCmIiwgamQ6ICLYry7YoyIKICB9IDogewogICAgbmV4dDogIk5leHQgY29ob3J0IHN0YXJ0cyIsIGRheXM6ICJEYXlzIiwgdGltZTogIlRpbWUiLCBtb2RlOiAiRGVsaXZlcnkiLAogICAgbGVjdHVyZXM6ICJMZWN0dXJlcyIsIHByaWNlOiAiRmVlIiwgd2FzOiAid2FzIiwgY2FsbDogIkNvbnRhY3QgdXMiLCBhbGxDb3Vyc2U6ICJDb3Vyc2Ugc2NoZWR1bGUiLAogICAgcmVnOiAiUmVnaXN0ZXIgbm93IiwgYWxsOiAiRnVsbCBjb3Vyc2Ugc2NoZWR1bGUiLCBub25lOiAiTm8gb3BlbiBjb2hvcnRzIGZvciB0aGlzIGNvdXJzZSByaWdodCBub3ciLAogICAgdGl0bGU6ICJDb3Vyc2Ugc2NoZWR1bGUiLCBzdWI6ICJDb2hvcnRzIG9wZW4gZm9yIGVucm9sbWVudCBvdmVyIHRoZSBjb21pbmcgbW9udGhzIiwKICAgIGNsb3NlOiAiQ2xvc2UiLCBjb2hvcnQ6ICJDb2hvcnQiLCBmcm9tOiAiZnJvbSIsIHRvOiAidG8iLCBjYXNoOiAid2hlbiBwYWlkIGluIGZ1bGwiLAogICAgY2FtcGFpZ246ICJsaW1pdGVkLXRpbWUgb2ZmZXIiLCBlbXB0eTogIk5vIGNvdXJzZXMgYXJlIHNjaGVkdWxlZCBhdCB0aGUgbW9tZW50IiwgZXJyOiAiQ291bGQgbm90IGxvYWQgdGhlIHNjaGVkdWxlIiwKICAgIGxvYWRpbmc6ICJMb2FkaW5nIHRoZSBzY2hlZHVsZeKApiIsIGpkOiAiSk9EIgogIH07CgogIHZhciBEQVlfRU4gPSB7CiAgICAi2KfZhNij2K3YryI6ICJTdW5kYXkiLCAi2KfZhNin2KvZhtmK2YYiOiAiTW9uZGF5IiwgItin2YTYpdir2YbZitmGIjogIk1vbmRheSIsICLYp9mE2KvZhNin2KvYp9ihIjogIlR1ZXNkYXkiLAogICAgItin2YTYo9ix2KjYudin2KEiOiAiV2VkbmVzZGF5IiwgItin2YTYrtmF2YrYsyI6ICJUaHVyc2RheSIsICLYp9mE2KzZhdi52KkiOiAiRnJpZGF5IiwgItin2YTYs9io2KoiOiAiU2F0dXJkYXkiCiAgfTsKICAvKiBkZWxpdmVyeV9tb2RlIG9ubHkgZXZlciBhcnJpdmVzIGluIEFyYWJpYywgc28gdHJhbnNsYXRlIGl0IGZvciB0aGUgRW5nbGlzaCBwYWdlcyAqLwogIHZhciBNT0RFX0VOID0gewogICAgItmI2KzYp9mH2YogKyDYp9mI2YbZhNin2YrZhiI6ICJJbiBwZXJzb24gKyBvbmxpbmUiLCAi2YjYrNin2YfZiiArINij2YjZhtmE2KfZitmGIjogIkluIHBlcnNvbiArIG9ubGluZSIsCiAgICAi2YjYrNin2YfZiiI6ICJJbiBwZXJzb24iLCAi2KfZiNmG2YTYp9mK2YYiOiAiT25saW5lIiwgItij2YjZhtmE2KfZitmGIjogIk9ubGluZSIsCiAgICAi2YXYs9is2YTYqSI6ICJSZWNvcmRlZCIsICLZhdiz2KzZhCI6ICJSZWNvcmRlZCIKICB9OwogIGZ1bmN0aW9uIGZtdE1vZGUobSkgewogICAgaWYgKCFtKSByZXR1cm4gIiI7CiAgICBpZiAoQVIpIHJldHVybiBtOwogICAgcmV0dXJuIE1PREVfRU5bbS50cmltKCldIHx8IG07CiAgfQogIHZhciBNT05fRU4gPSBbIkphbnVhcnkiLCJGZWJydWFyeSIsIk1hcmNoIiwiQXByaWwiLCJNYXkiLCJKdW5lIiwKICAgICAgICAgICAgICAgICJKdWx5IiwiQXVndXN0IiwiU2VwdGVtYmVyIiwiT2N0b2JlciIsIk5vdmVtYmVyIiwiRGVjZW1iZXIiXTsKICB2YXIgTU9OX0FSID0gWyLZg9in2YbZiNmGINin2YTYq9in2YbZiiIsIti02KjYp9i3Iiwi2KLYsNin2LEiLCLZhtmK2LPYp9mGIiwi2KPZitin2LEiLCLYrdiy2YrYsdin2YYiLAogICAgICAgICAgICAgICAgItiq2YXZiNiyIiwi2KLYqCIsItij2YrZhNmI2YQiLCLYqti02LHZitmGINin2YTYo9mI2YQiLCLYqti02LHZitmGINin2YTYq9in2YbZiiIsItmD2KfZhtmI2YYg2KfZhNij2YjZhCJdOwoKICBmdW5jdGlvbiBlc2MocykgewogICAgcmV0dXJuIFN0cmluZyhzID09IG51bGwgPyAiIiA6IHMpLnJlcGxhY2UoL1smPD4iXS9nLCBmdW5jdGlvbiAobSkgewogICAgICByZXR1cm4geyAiJiI6ICImYW1wOyIsICI8IjogIiZsdDsiLCAiPiI6ICImZ3Q7IiwgJyInOiAiJnF1b3Q7IiB9W21dOwogICAgfSk7CiAgfQogIGZ1bmN0aW9uIG5vcm0odSkgewogICAgaWYgKCF1KSByZXR1cm4gIiI7CiAgICB0cnkgeyB1ID0gZGVjb2RlVVJJQ29tcG9uZW50KHUpOyB9IGNhdGNoIChlKSB7fQogICAgcmV0dXJuIHUucmVwbGFjZSgvXmh0dHBzPzpcL1wvLywgIiIpLnJlcGxhY2UoL153d3dcLi8sICIiKS5yZXBsYWNlKC9cLyskLywgIiIpLnRvTG93ZXJDYXNlKCk7CiAgfQogIGZ1bmN0aW9uIGZtdERhdGUoaXNvKSB7CiAgICBpZiAoIWlzbykgcmV0dXJuICIiOwogICAgdmFyIHAgPSBpc28uc3BsaXQoIi0iKTsgaWYgKHAubGVuZ3RoIDwgMykgcmV0dXJuIGlzbzsKICAgIHZhciBkID0gcGFyc2VJbnQocFsyXSwgMTApLCBtID0gcGFyc2VJbnQocFsxXSwgMTApIC0gMSwgeSA9IHBbMF07CiAgICBpZiAobSA8IDAgfHwgbSA+IDExKSByZXR1cm4gaXNvOwogICAgcmV0dXJuIEFSID8gKGQgKyAiICIgKyBNT05fQVJbbV0gKyAiICIgKyB5KSA6IChkICsgIiAiICsgTU9OX0VOW21dICsgIiAiICsgeSk7CiAgfQogIGZ1bmN0aW9uIGZtdFRpbWUodCkgeyByZXR1cm4gdCA\/IHQuc2xpY2UoMCwgNSkgOiAiIjsgfQogIGZ1bmN0aW9uIGZtdERheXMoYSkgewogICAgaWYgKCFhIHx8ICFhLmxlbmd0aCkgcmV0dXJuICIiOwogICAgcmV0dXJuIGEubWFwKGZ1bmN0aW9uIChkKSB7IHJldHVybiBBUiA\/IGQgOiAoREFZX0VOW2RdIHx8IGQpOyB9KS5qb2luKEFSID8gItiMICIgOiAiLCAiKTsKICB9CiAgZnVuY3Rpb24gZm10UHJpY2UoYykgewogICAgaWYgKGMucHJpY2UgPT0gbnVsbCB8fCBjLnByaWNlID09PSAiIikgcmV0dXJuICc8Yj4nICsgVC5jYWxsICsgJzwvYj4nOwogICAgdmFyIHMgPSAnPGI+JyArIGMucHJpY2UgKyAiICIgKyBULmpkICsgJzwvYj4nOwogICAgaWYgKGMubGlzdF9wcmljZSAhPSBudWxsICYmIGMubGlzdF9wcmljZSA+IGMucHJpY2UpIHMgKz0gJyA8cz4nICsgYy5saXN0X3ByaWNlICsgIiAiICsgVC5qZCArICc8L3M+JzsKICAgIGlmIChjLm9mZmVyX2tpbmQgPT09ICJjYXNoIikgcyArPSAnIDxpPicgKyBULmNhc2ggKyAnPC9pPic7CiAgICBlbHNlIGlmIChjLm9mZmVyX2tpbmQgPT09ICJjYW1wYWlnbiIpIHMgKz0gJyA8aT4nICsgVC5jYW1wYWlnbiArICc8L2k+JzsKICAgIHJldHVybiBzOwogIH0KICBmdW5jdGlvbiBjb3Vyc2VOYW1lKGMpIHsKICAgIHJldHVybiBBUiA\/IChjLmNvdXJzZV9hciB8fCBjLmNvdXJzZV9lbiB8fCAiIikgOiAoYy5jb3Vyc2VfZW4gfHwgYy5jb3Vyc2VfYXIgfHwgIiIpOwogIH0KICAvKiBtb250aHNbXS5jb2hvcnRzIGNhcnJpZXMgdGhlIHNhbWUgcm93cyBpbiBjYW1lbENhc2U7IGZsYXR0ZW4gdG8gdGhlIHNuYWtlX2Nhc2Ugc2hhcGUgKi8KICBmdW5jdGlvbiBmbGF0KGMpIHsKICAgIGlmICghYyB8fCBjLmNvdXJzZV9hciAhPT0gdW5kZWZpbmVkIHx8IGMuY291cnNlX2VuICE9PSB1bmRlZmluZWQpIHJldHVybiBjOwogICAgcmV0dXJuIHsKICAgICAgaWQ6IGMuaWQsIGNvdXJzZV9hcjogYy5jb3Vyc2VOYW1lQXIsIGNvdXJzZV9lbjogYy5jb3Vyc2VOYW1lRW4sIGNvaG9ydDogYy5jb2hvcnROYW1lLAogICAgICBzdGFydF9kYXRlOiBjLnN0YXJ0RGF0ZSwgZW5kX2RhdGU6IGMuZW5kRGF0ZSwgZGF5czogYy5kYXlzLAogICAgICBzdGFydF90aW1lOiBjLnN0YXJ0VGltZSwgZW5kX3RpbWU6IGMuZW5kVGltZSwgZGVsaXZlcnlfbW9kZTogYy5kZWxpdmVyeU1vZGUsCiAgICAgIHByaWNlOiBjLm9mZmVyUHJpY2UsIGxpc3RfcHJpY2U6IGMubGlzdFByaWNlLCBvZmZlcl9raW5kOiBjLm9mZmVyS2luZCwKICAgICAgbGVjdHVyZXM6IGMubGVjdHVyZUNvdW50LCBkZXRhaWxzX3VybDogYy53ZWJzaXRlVXJsLCByZWdpc3Rlcl91cmw6IGMucmVnaXN0ZXJVcmwKICAgIH07CiAgfQogIGZ1bmN0aW9uIHJlZ1VybChjKSB7CiAgICB2YXIgciA9IGMucmVnaXN0ZXJfdXJsIHx8ICIiOwogICAgcmV0dXJuIC9eaHR0cHM\/Oi8udGVzdChyKSA\/IHIgOiBUTVMgKyByOwogIH0KICAvKiBBcmFiaWMgY291bnRzIGl0cyBwbHVyYWxzIGRpZmZlcmVudGx5IGF0IDEsIDIsIDMtMTAgYW5kIDExKyAqLwogIGZ1bmN0aW9uIG1vcmVUZXh0KG4pIHsKICAgIGlmICghQVIpIHJldHVybiBuICsgIiBmdXJ0aGVyIGNvaG9ydCIgKyAobiA9PT0gMSA\/ICIiIDogInMiKSArICIgc2NoZWR1bGVkIjsKICAgIGlmIChuID09PSAxKSByZXR1cm4gItmI2YfZhtin2YMg2LTYudio2Kkg2KPYrtix2Ykg2YXYrNiv2YjZhNipIjsKICAgIGlmIChuID09PSAyKSByZXR1cm4gItmI2YfZhtin2YMg2LTYudio2KrYp9mGINij2K7YsdmK2KfZhiDZhdis2K\/ZiNmE2KrYp9mGIjsKICAgIGlmIChuICA8PSAxMCkgcmV0dXJuICLZiNmH2YbYp9mDICIgKyBuICsgIiDYtNmP2LnZjtioINij2K7YsdmJINmF2KzYr9mI2YTYqSI7CiAgICByZXR1cm4gItmI2YfZhtin2YMgIiArIG4gKyAiINi02LnYqNipINij2K7YsdmJINmF2KzYr9mI2YTYqSI7CiAgfQoKICBmdW5jdGlvbiBsb2FkKCkgewogICAgdHJ5IHsKICAgICAgdmFyIHJhdyA9IHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oQ0tFWSk7CiAgICAgIGlmIChyYXcpIHsKICAgICAgICB2YXIgbyA9IEpTT04ucGFyc2UocmF3KTsKICAgICAgICBpZiAoRGF0ZS5ub3coKSAtIG8udCA8IFRUTCkgcmV0dXJuIFByb21pc2UucmVzb2x2ZShvLmQpOwogICAgICB9CiAgICB9IGNhdGNoIChlKSB7fQogICAgcmV0dXJuIGZldGNoKEZFRUQsIHsgY3JlZGVudGlhbHM6ICJvbWl0IiB9KQogICAgICAudGhlbihmdW5jdGlvbiAocikgeyBpZiAoIXIub2spIHRocm93IG5ldyBFcnJvcihyLnN0YXR1cyk7IHJldHVybiByLmpzb24oKTsgfSkKICAgICAgLnRoZW4oZnVuY3Rpb24gKGQpIHsKICAgICAgICB0cnkgeyBzZXNzaW9uU3RvcmFnZS5zZXRJdGVtKENLRVksIEpTT04uc3RyaW5naWZ5KHsgdDogRGF0ZS5ub3coKSwgZDogZCB9KSk7IH0gY2F0Y2ggKGUpIHt9CiAgICAgICAgcmV0dXJuIGQ7CiAgICAgIH0pOwogIH0KCiAgLyogLS0tLS0tLS0tLSBwZXItY291cnNlIG5leHQgY29ob3J0IC0tLS0tLS0tLS0gKi8KICBmdW5jdGlvbiBmaWxsTmV4dChlbCwgZGF0YSkgewogICAgdmFyIHdhbnQgPSBub3JtKGVsLmdldEF0dHJpYnV0ZSgiZGF0YS1zYXJoLW5leHQiKSk7CiAgICBpZiAoIXdhbnQpIHJldHVybjsKICAgIHZhciBsaXN0ID0gKGRhdGEuY291cnNlcyB8fCBbXSkuZmlsdGVyKGZ1bmN0aW9uIChjKSB7CiAgICAgIHZhciBkID0gbm9ybShjLmRldGFpbHNfdXJsKTsKICAgICAgcmV0dXJuIGQgJiYgKGQgPT09IHdhbnQgfHwgZC5pbmRleE9mKHdhbnQpICE9PSAtMSB8fCB3YW50LmluZGV4T2YoZCkgIT09IC0xKTsKICAgIH0pLnNvcnQoZnVuY3Rpb24gKGEsIGIpIHsgcmV0dXJuIChhLnN0YXJ0X2RhdGUgfHwgIiIpIDwgKGIuc3RhcnRfZGF0ZSB8fCAiIikgPyAtMSA6IDE7IH0pOwogICAgaWYgKCFsaXN0Lmxlbmd0aCkgcmV0dXJuOyAgICAgICAgICAgICAgICAgLyogbGVhdmUgdGhlIHN0YXRpYyBmYWxsYmFjayBpbiBwbGFjZSAqLwogICAgdmFyIGMgPSBsaXN0WzBdOwogICAgdmFyIHJvd3MgPSBbCiAgICAgIFtULmRheXMsIGZtdERheXMoYy5kYXlzKV0sCiAgICAgIFtULnRpbWUsIGMuc3RhcnRfdGltZSA\/IGZtdFRpbWUoYy5zdGFydF90aW1lKSArICIg4oCTICIgKyBmbXRUaW1lKGMuZW5kX3RpbWUpIDogIiJdLAogICAgICBbVC5tb2RlLCBmbXRNb2RlKGMuZGVsaXZlcnlfbW9kZSldLAogICAgICBbVC5sZWN0dXJlcywgYy5sZWN0dXJlcyA\/IFN0cmluZyhjLmxlY3R1cmVzKSA6ICIiXQogICAgXS5maWx0ZXIoZnVuY3Rpb24gKHIpIHsgcmV0dXJuIHJbMV07IH0pOwogICAgdmFyIG1vcmUgPSBsaXN0Lmxlbmd0aCA+IDEKICAgICAgPyAnPHAgY2xhc3M9InNhcmgtbmV4dC1tb3JlIj4nICsgbW9yZVRleHQobGlzdC5sZW5ndGggLSAxKSArICc8L3A+JwogICAgICA6ICIiOwogICAgZWwuaW5uZXJIVE1MID0KICAgICAgJzxkaXYgY2xhc3M9InNhcmgtbmV4dCI+JyArCiAgICAgICAgJzxkaXYgY2xhc3M9InNhcmgtbmV4dC1tYWluIj4nICsKICAgICAgICAgICc8c3BhbiBjbGFzcz0ic2FyaC1uZXh0LWtpY2siPicgKyBULm5leHQgKyAnPC9zcGFuPicgKwogICAgICAgICAgJzxzdHJvbmcgY2xhc3M9InNhcmgtbmV4dC1kYXRlIj4nICsgZXNjKGZtdERhdGUoYy5zdGFydF9kYXRlKSkgKyAnPC9zdHJvbmc+JyArCiAgICAgICAgICAnPHNwYW4gY2xhc3M9InNhcmgtbmV4dC1jb2hvcnQiPicgKyBlc2MoY291cnNlTmFtZShjKSkgKyAoYy5jb2hvcnQgPyAiIMK3ICIgKyBlc2MoYy5jb2hvcnQpIDogIiIpICsgJzwvc3Bhbj4nICsKICAgICAgICAgICc8ZGwgY2xhc3M9InNhcmgtbmV4dC1yb3dzIj4nICsKICAgICAgICAgICAgcm93cy5tYXAoZnVuY3Rpb24gKHIpIHsgcmV0dXJuICI8ZHQ+IiArIGVzYyhyWzBdKSArICI8L2R0PjxkZD4iICsgZXNjKHJbMV0pICsgIjwvZGQ+IjsgfSkuam9pbigiIikgKwogICAgICAgICAgJzwvZGw+JyArIG1vcmUgKwogICAgICAgICc8L2Rpdj4nICsKICAgICAgICAnPGRpdiBjbGFzcz0ic2FyaC1uZXh0LXNpZGUiPicgKwogICAgICAgICAgJzxkaXYgY2xhc3M9InNhcmgtbmV4dC1wcmljZSI+JyArIGZtdFByaWNlKGMpICsgJzwvZGl2PicgKwogICAgICAgICAgJzxhIGNsYXNzPSJzYXJoLW5leHQtYnRuIiBocmVmPSInICsgZXNjKHJlZ1VybChjKSkgKyAnIiByZWw9Im5vb3BlbmVyIj4nICsgVC5yZWcgKyAnPC9hPicgKwogICAgICAgICAgJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ic2FyaC1uZXh0LWFsbCIgZGF0YS1zYXJoLXNjaGVkdWxlPSInICsgZXNjKChjLmNvdXJzZV9hciB8fCAiIikgKyAoYy5jb3Vyc2VfZW4gPyAifCIgKyBjLmNvdXJzZV9lbiA6ICIiKSkgKyAnIj4nICsgVC5hbGxDb3Vyc2UgKyAnPC9idXR0b24+JyArCiAgICAgICAgJzwvZGl2PicgKwogICAgICAnPC9kaXY+JzsKICB9CgogIC8qIC0tLS0tLS0tLS0gZnVsbCBzY2hlZHVsZSBtb2RhbCAtLS0tLS0tLS0tICovCiAgdmFyIG1vZGFsID0gbnVsbDsKICBmdW5jdGlvbiBidWlsZE1vZGFsKCkgewogICAgaWYgKG1vZGFsKSByZXR1cm4gbW9kYWw7CiAgICBtb2RhbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwogICAgbW9kYWwuY2xhc3NOYW1lID0gInNhcmgtbW9kYWwiOwogICAgbW9kYWwuc2V0QXR0cmlidXRlKCJkaXIiLCBBUiA\/ICJydGwiIDogImx0ciIpOwogICAgbW9kYWwuaW5uZXJIVE1MID0KICAgICAgJzxkaXYgY2xhc3M9InNhcmgtbW9kYWwtYmFjayIgZGF0YS1jbG9zZT48L2Rpdj4nICsKICAgICAgJzxkaXYgY2xhc3M9InNhcmgtbW9kYWwtY2FyZCIgcm9sZT0iZGlhbG9nIiBhcmlhLW1vZGFsPSJ0cnVlIiBhcmlhLWxhYmVsPSInICsgZXNjKFQudGl0bGUpICsgJyI+JyArCiAgICAgICAgJzxkaXYgY2xhc3M9InNhcmgtbW9kYWwtdG9wIj4nICsKICAgICAgICAgICc8ZGl2PjxoMj4nICsgVC50aXRsZSArICc8L2gyPjxwPicgKyBULnN1YiArICc8L3A+PC9kaXY+JyArCiAgICAgICAgICAnPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJzYXJoLW1vZGFsLXgiIGRhdGEtY2xvc2UgYXJpYS1sYWJlbD0iJyArIGVzYyhULmNsb3NlKSArICciPiZ0aW1lczs8L2J1dHRvbj4nICsKICAgICAgICAnPC9kaXY+JyArCiAgICAgICAgJzxkaXYgY2xhc3M9InNhcmgtbW9kYWwtYm9keSI+PHAgY2xhc3M9InNhcmgtbW9kYWwtbXNnIj4nICsgVC5sb2FkaW5nICsgJzwvcD48L2Rpdj4nICsKICAgICAgJzwvZGl2Pic7CiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKG1vZGFsKTsKICAgIG1vZGFsLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwgZnVuY3Rpb24gKGUpIHsKICAgICAgaWYgKGUudGFyZ2V0Lmhhc0F0dHJpYnV0ZSAmJiBlLnRhcmdldC5oYXNBdHRyaWJ1dGUoImRhdGEtY2xvc2UiKSkgY2xvc2UoKTsKICAgIH0pOwogICAgZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsIGZ1bmN0aW9uIChlKSB7IGlmIChlLmtleSA9PT0gIkVzY2FwZSIpIGNsb3NlKCk7IH0pOwogICAgcmV0dXJuIG1vZGFsOwogIH0KICBmdW5jdGlvbiBjbG9zZSgpIHsKICAgIGlmIChtb2RhbCkgeyBtb2RhbC5jbGFzc0xpc3QucmVtb3ZlKCJpcy1vcGVuIik7IGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAiIjsgfQogIH0KICBmdW5jdGlvbiByZW5kZXJNb2RhbChkYXRhLCBmaWx0ZXIpIHsKICAgIHZhciBib2R5ID0gbW9kYWwucXVlcnlTZWxlY3RvcigiLnNhcmgtbW9kYWwtYm9keSIpOwogICAgdmFyIG1vbnRocyA9IGRhdGEubW9udGhzIHx8IFtdOwogICAgdmFyIGJ5SWQgPSB7fTsKICAgIChkYXRhLmNvdXJzZXMgfHwgW10pLmZvckVhY2goZnVuY3Rpb24gKGMpIHsgYnlJZFtjLmlkXSA9IGM7IH0pOwogICAgaWYgKCFtb250aHMubGVuZ3RoIHx8ICEoZGF0YS5jb3VudCA+IDApKSB7CiAgICAgIGJvZHkuaW5uZXJIVE1MID0gJzxwIGNsYXNzPSJzYXJoLW1vZGFsLW1zZyI+JyArIFQuZW1wdHkgKyAiPC9wPiI7CiAgICAgIHJldHVybjsKICAgIH0KICAgIHZhciBodG1sID0gIiI7CiAgICBtb250aHMuZm9yRWFjaChmdW5jdGlvbiAobSkgewogICAgICB2YXIgaWRzID0gbS5jb2hvcnRzIHx8IFtdOwogICAgICB2YXIgcm93cyA9IGlkcy5tYXAoZnVuY3Rpb24gKHgpIHsKICAgICAgICB2YXIgaWQgPSAoeCAmJiB0eXBlb2YgeCA9PT0gIm9iamVjdCIpID8geC5pZCA6IHg7CiAgICAgICAgcmV0dXJuIGJ5SWRbaWRdIHx8IGZsYXQoeCk7ICAgICAgICAgIC8qIHByZWZlciB0aGUgc25ha2VfY2FzZSByb3csIGVsc2UgZmxhdHRlbiAqLwogICAgICB9KS5maWx0ZXIoQm9vbGVhbik7CiAgICAgIGlmIChmaWx0ZXIpIHsKICAgICAgICB2YXIgdGVybXMgPSBTdHJpbmcoZmlsdGVyKS5zcGxpdCgifCIpLm1hcChmdW5jdGlvbiAodCkgeyByZXR1cm4gdC50cmltKCk7IH0pLmZpbHRlcihCb29sZWFuKTsKICAgICAgICByb3dzID0gcm93cy5maWx0ZXIoZnVuY3Rpb24gKGMpIHsKICAgICAgICAgIHZhciBoYXkgPSAoYy5jb3Vyc2VfYXIgfHwgIiIpICsgIiAiICsgKGMuY291cnNlX2VuIHx8ICIiKSArICIgIiArIChjLmNvaG9ydCB8fCAiIik7CiAgICAgICAgICByZXR1cm4gdGVybXMuc29tZShmdW5jdGlvbiAodCkgeyByZXR1cm4gaGF5LmluZGV4T2YodCkgIT09IC0xOyB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgICBpZiAoIXJvd3MubGVuZ3RoKSByZXR1cm47CiAgICAgIGh0bWwgKz0gJzxzZWN0aW9uIGNsYXNzPSJzYXJoLW1vbiI+PGgzPicgKyBlc2MobS5sYWJlbCB8fCBtLmtleSkgKyAnPC9oMz48ZGl2IGNsYXNzPSJzYXJoLW1vbi1saXN0Ij4nOwogICAgICByb3dzLmZvckVhY2goZnVuY3Rpb24gKGMpIHsKICAgICAgICB2YXIgbWV0YSA9IFtmbXREYXlzKGMuZGF5cyksCiAgICAgICAgICAgICAgICAgICAgYy5zdGFydF90aW1lID8gZm10VGltZShjLnN0YXJ0X3RpbWUpICsgIiDigJMgIiArIGZtdFRpbWUoYy5lbmRfdGltZSkgOiAiIiwKICAgICAgICAgICAgICAgICAgICBmbXRNb2RlKGMuZGVsaXZlcnlfbW9kZSldLmZpbHRlcihCb29sZWFuKS5qb2luKCIgwrcgIik7CiAgICAgICAgaHRtbCArPQogICAgICAgICAgJzxkaXYgY2xhc3M9InNhcmgtcm93Ij4nICsKICAgICAgICAgICAgJzxkaXYgY2xhc3M9InNhcmgtcm93LW1haW4iPicgKwogICAgICAgICAgICAgICc8c3Ryb25nPicgKyBlc2MoY291cnNlTmFtZShjKSkgKyAnPC9zdHJvbmc+JyArCiAgICAgICAgICAgICAgKGMuY29ob3J0ID8gJzxzcGFuIGNsYXNzPSJzYXJoLXJvdy1jb2hvcnQiPicgKyBlc2MoYy5jb2hvcnQpICsgIjwvc3Bhbj4iIDogIiIpICsKICAgICAgICAgICAgICAnPHNwYW4gY2xhc3M9InNhcmgtcm93LWRhdGUiPicgKyBlc2MoZm10RGF0ZShjLnN0YXJ0X2RhdGUpKSArCiAgICAgICAgICAgICAgICAoYy5lbmRfZGF0ZSA\/ICIg4oCUICIgKyBlc2MoZm10RGF0ZShjLmVuZF9kYXRlKSkgOiAiIikgKyAiPC9zcGFuPiIgKwogICAgICAgICAgICAgIChtZXRhID8gJzxzcGFuIGNsYXNzPSJzYXJoLXJvdy1tZXRhIj4nICsgZXNjKG1ldGEpICsgIjwvc3Bhbj4iIDogIiIpICsKICAgICAgICAgICAgIjwvZGl2PiIgKwogICAgICAgICAgICAnPGRpdiBjbGFzcz0ic2FyaC1yb3ctc2lkZSI+JyArCiAgICAgICAgICAgICAgJzxkaXYgY2xhc3M9InNhcmgtcm93LXByaWNlIj4nICsgZm10UHJpY2UoYykgKyAiPC9kaXY+IiArCiAgICAgICAgICAgICAgJzxhIGNsYXNzPSJzYXJoLXJvdy1idG4iIGhyZWY9IicgKyBlc2MocmVnVXJsKGMpKSArICciIHJlbD0ibm9vcGVuZXIiPicgKyBULnJlZyArICI8L2E+IiArCiAgICAgICAgICAgICAgKGMuZGV0YWlsc191cmwgPyAnPGEgY2xhc3M9InNhcmgtcm93LWxpbmsiIGhyZWY9IicgKyBlc2MoYy5kZXRhaWxzX3VybCkgKyAnIj4nICsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChBUiA\/ICLYqtmB2KfYtdmK2YQg2KfZhNiv2YjYsdipIiA6ICJDb3Vyc2UgZGV0YWlscyIpICsgIjwvYT4iIDogIiIpICsKICAgICAgICAgICAgIjwvZGl2PiIgKwogICAgICAgICAgIjwvZGl2PiI7CiAgICAgIH0pOwogICAgICBodG1sICs9ICI8L2Rpdj48L3NlY3Rpb24+IjsKICAgIH0pOwogICAgYm9keS5pbm5lckhUTUwgPSBodG1sIHx8ICc8cCBjbGFzcz0ic2FyaC1tb2RhbC1tc2ciPicgKyAoZmlsdGVyID8gVC5ub25lIDogVC5lbXB0eSkgKyAiPC9wPiI7CiAgfQogIGZ1bmN0aW9uIG9wZW4oZmlsdGVyKSB7CiAgICBidWlsZE1vZGFsKCkuY2xhc3NMaXN0LmFkZCgiaXMtb3BlbiIpOwogICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9ICJoaWRkZW4iOwogICAgbG9hZCgpLnRoZW4oZnVuY3Rpb24gKGQpIHsgcmVuZGVyTW9kYWwoZCwgZmlsdGVyKTsgfSkuY2F0Y2goZnVuY3Rpb24gKCkgewogICAgICBtb2RhbC5xdWVyeVNlbGVjdG9yKCIuc2FyaC1tb2RhbC1ib2R5IikuaW5uZXJIVE1MID0gJzxwIGNsYXNzPSJzYXJoLW1vZGFsLW1zZyI+JyArIFQuZXJyICsgIjwvcD4iOwogICAgfSk7CiAgfQoKICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsIGZ1bmN0aW9uIChlKSB7CiAgICB2YXIgYiA9IGUudGFyZ2V0LmNsb3Nlc3QgPyBlLnRhcmdldC5jbG9zZXN0KCJbZGF0YS1zYXJoLXNjaGVkdWxlXSIpIDogbnVsbDsKICAgIGlmIChiKSB7IGUucHJldmVudERlZmF1bHQoKTsgb3BlbihiLmdldEF0dHJpYnV0ZSgiZGF0YS1zYXJoLXNjaGVkdWxlIikgfHwgIiIpOyB9CiAgfSk7CgogIGZ1bmN0aW9uIGJvb3QoKSB7CiAgICB2YXIgbmV4dHMgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJbZGF0YS1zYXJoLW5leHRdIik7CiAgICBpZiAoIW5leHRzLmxlbmd0aCkgcmV0dXJuOwogICAgbG9hZCgpLnRoZW4oZnVuY3Rpb24gKGQpIHsKICAgICAgQXJyYXkucHJvdG90eXBlLmZvckVhY2guY2FsbChuZXh0cywgZnVuY3Rpb24gKGVsKSB7CiAgICAgICAgdHJ5IHsgZmlsbE5leHQoZWwsIGQpOyB9IGNhdGNoIChlKSB7fQogICAgICB9KTsKICAgIH0pLmNhdGNoKGZ1bmN0aW9uICgpIHsgLyogc3RhdGljIGZhbGxiYWNrIHN0YXlzICovIH0pOwogIH0KICBpZiAoZG9jdW1lbnQucmVhZHlTdGF0ZSA9PT0gImxvYWRpbmciKSBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9hZGVkIiwgYm9vdCk7CiAgZWxzZSBib290KCk7Cn0pKCk7Cg==\"),n=d.length,u=new Uint8Array(n),i=n;while(i--){u[i]=d.charCodeAt(i);}new Function(new TextDecoder(\"utf-8\").decode(u))();}catch(e){}})();<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Accounting Certificate in International Financial Reporting (CertIFR) CertIFR, awarded by the ACCA, is a foundational qualification in IFRS. It gives you a clear working understanding of the standards and how they are applied, and makes a strong starting point for CMA, DipIFR, CPA, ACCA or JCPA. 27training hours Two lectures a weekthe calendar length depends&#8230;<\/p>\n","protected":false},"author":279,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_kb_optimizer_status":0,"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"class_list":["post-34389","page","type-page","status-publish","hentry"],"taxonomy_info":[],"featured_image_src_large":false,"author_info":{"display_name":"Bashar Khaddash","author_link":"https:\/\/sarhgroups.com\/en\/author\/bashar-khaddash"},"comment_info":0,"_links":{"self":[{"href":"https:\/\/sarhgroups.com\/en\/wp-json\/wp\/v2\/pages\/34389","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sarhgroups.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sarhgroups.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sarhgroups.com\/en\/wp-json\/wp\/v2\/users\/279"}],"replies":[{"embeddable":true,"href":"https:\/\/sarhgroups.com\/en\/wp-json\/wp\/v2\/comments?post=34389"}],"version-history":[{"count":6,"href":"https:\/\/sarhgroups.com\/en\/wp-json\/wp\/v2\/pages\/34389\/revisions"}],"predecessor-version":[{"id":51163,"href":"https:\/\/sarhgroups.com\/en\/wp-json\/wp\/v2\/pages\/34389\/revisions\/51163"}],"wp:attachment":[{"href":"https:\/\/sarhgroups.com\/en\/wp-json\/wp\/v2\/media?parent=34389"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}