gXbfB#) ۻbis_IIߪ ۻbis_IIߪ ۻbis_IIߪ ۻbis_II4&D.5;Aϳކ:}Wۻp%7ޔ_#5L@?ss\,fa\eChɛ+MMX,-\_[6Eq_uC^avh ->]+/Wg׿>|"d2D^1=]mwgFN5K]OElf5F \wgFN5K]OwgFN5K]OwgFN5K]O[_׮|S 6 iS&XVŰįwgFN5K]OwgFN5K]OwgFN5K]O?CKٺPi1 Ć g@i?ӓi |zSL='NwgFN5K]OQ+RŞԲ&M.x ۻbis_IIߪ ۻbis_IIߪ ۻbis_II߄}BkH1зcl\qɃGugEr&ޣ~iBbwhAf1y"*"a2׺xl޾ݙs#ELQK>0eeKW EQFVUfY$%@I0E|yhֱar^]c[S '6=[<ܤš d@7ˆS%셞LЌB FL{e,*Z)JZ->&/,[?߸ĔZ?40ctmضuORUKn38ͥD#;"`G>JmʚOV}VXR(X۾` 'YGsd@'-+r?"KV #w >'!x:{{o UKyĶ9fQH?"vJ)?VZx/&zɼorbFqܲ=vu']0 H?5J e>GcIqC ˄^=0eK4'nh1.m&$ `]}!A"ގ-?o,c'r'~>W/B["u;qWynޜ_X 2 Luŗ&6ynnXCXB|TaK~im | oŠx#]^]~TjC~ò"x:)@9 9[pUlS/Ϋ4On͜M܆F%ux#2ebs'Rh.HóeCe|he$N~,\z,[O gVC=MmopʲɃsUP#1ȫdfV|K{T\BLm\wgʄ RA}b1su集'9‚/D݈xdٚ.]܊U"EnMIH뛓$ ߢҕk! '7dG1;F4сOy>Y;T'i(k.AAuŬ3Ш# Zy])Q@5}4z /f&XaYaү9+ ۸q&^?P'!"j1%8)/_(T 8ĀŖU:(ZUX[Qk m5|@Z{@ˡ-5 \?gNmXL. TΕ8jy,Ŀv-V8ix$L?j~=| ,-בWE@IV ~a# T+ڌ;!Kvv[HyT@? ]# C~yۿiOeWwQxzBf_>TNq.`vb<ʂyJ$ / fɮñ9]"hcĄ-E+ai z ~e0u'~aՖ26R 7lN?!߶r>h|\u<&I<+AyL$BuQ! k>pدװwQl!/wlTK &'2y j?kh4[CZwu~5&t0^vFKt`?uG">', 'xhtml-strict' => '', ]; if (!empty($doctypes[$type])) { self::$doctype = preg_replace('/-\w+$/', '', $type); return $doctypes[$type]; } return ''; } /** * Derived method for
containers * * @param mixed $attr Hash array with tag attributes or string with class name * @param string $cont Div content * * @return string HTML code * @see html::tag() */ public static function div($attr = null, $cont = null) { if (is_string($attr)) { $attr = ['class' => $attr]; } return self::tag('div', $attr, $cont, array_merge(self::$common_attrib, ['onclick'])); } /** * Derived method for

blocks * * @param mixed $attr Hash array with tag attributes or string with class name * @param string $cont Paragraph content * * @return string HTML code * @see html::tag() */ public static function p($attr = null, $cont = null) { if (is_string($attr)) { $attr = ['class' => $attr]; } return self::tag('p', $attr, $cont, self::$common_attrib); } /** * Derived method to create * * @param string|array $attr Hash array with tag attributes or string with image source (src) * * @return string HTML code * @see html::tag() */ public static function img($attr = null) { if (is_string($attr)) { $attr = ['src' => $attr]; } $allowed = ['src','alt','width','height','border','usemap','onclick','onerror','onload']; return self::tag('img', $attr + ['alt' => ''], null, array_merge(self::$common_attrib, $allowed)); } /** * Derived method for link tags * * @param string|array $attr Hash array with tag attributes or string with link location (href) * @param string $cont Link content * * @return string HTML code * @see html::tag() */ public static function a($attr, $cont) { if (is_string($attr)) { $attr = ['href' => $attr]; } $allowed = ['href','target','name','rel','onclick','onmouseover','onmouseout','onmousedown','onmouseup']; return self::tag('a', $attr, $cont, array_merge(self::$common_attrib, $allowed)); } /** * Derived method for inline span tags * * @param string|array $attr Hash array with tag attributes or string with class name * @param string $cont Tag content * * @return string HTML code * @see html::tag() */ public static function span($attr, $cont) { if (is_string($attr)) { $attr = ['class' => $attr]; } return self::tag('span', $attr, $cont, self::$common_attrib); } /** * Derived method for form element labels * * @param string|array $attr Hash array with tag attributes or string with 'for' attrib * @param string $cont Tag content * * @return string HTML code * @see html::tag() */ public static function label($attr, $cont) { if (is_string($attr)) { $attr = ['for' => $attr]; } return self::tag('label', $attr, $cont, array_merge(self::$common_attrib, ['for','onkeypress'])); } /** * Derived method to create * * @param string|array $attr Hash array with tag attributes or string with frame source (src) * @param string $cont Tag content * * @return string HTML code * @see html::tag() */ public static function iframe($attr = null, $cont = null) { if (is_string($attr)) { $attr = ['src' => $attr]; } $allowed = ['src','name','width','height','border','frameborder','onload','allowfullscreen']; return self::tag('iframe', $attr, $cont, array_merge(self::$common_attrib, $allowed)); } /** * Derived method to create