nfTlWNl rn Ѻq$³*%yNk9S8jnM/=ƙ`_9Ogn&aIYuim;{V붣u"9J^Sx~HgɬVᾁ8*2lAfCSZصY?bBcon\Hb!&xuFi_y$F^A8g4>V++F2\R~ʎR1.|Ѵ?kQ)`o1v@)K&}RGgt'ξp%?\R=>Ve*ZWMl\Xсt8dW< Ȗ)5Pu:^j[8 "@Fȁ]fUݡf"[Cq@B]/ΔacPJ_櫣f]2kH`JM";/3׎k..72<2\| ]UYM|`:PO3B{XϒmE(PGrrsP;]c6fRK*ǛtQŏڄ&d:U"* \30hyPd/lq.afHΤkR!whKROdjaI݈iZ9AȖ.R0 5].>}ֶs'7] kf#W=P8h|N)nw?`@yJbS7h?s$RIM>#DF+ ĢQ$3dzq_BT[oŬn)IU 4^:Jeݨsu1Q8=&Yѱ?kôO|@D1]{N<#lj]CLńa`7Q7dw@-{! ,*ɑ%Mw(gcq3u ;o#a8x=lxьuD~ȁU!+[r%IDMHzXP_ 1cAuk4zACB3&K5}Hټu13Vh.T*]X3{\ϐ$P/&? WZW4QQ@=/翥.?uR0KN ~_y1i_VQc(KCȹljr%~,D6nwe:<n}  aϦMp;ȷS 0V+%O^k7<†B0ث,xQ(:*6z誌(|D,<S /);-[MB7z3Y,)9 0mp ED)iVQs5YN*'T3Ve]Ma`@x ?Ԃu6|eLMOY t0vyWBjRB%FrV꒷-WϢf8|pR`:I:k$Fy-?U zqbw#*xxCƑ*5b9& *T{LH2NѴVe'˦o핎"hyeNeCnN-x-ɩ/DH1PW 1ǸH3 5:Ɵb"1s|Ac@$Lx9BcѬ i`|O|*k a𖓽e1ո^E{]wصvgȎ0IH[bMuFi_y$F^:rHa*M"s":fy|"֏Y4IH۶-T(NR,e.pO )_A[:txz{J C[\F(QxKkDyA'UܡDVd5Jv]^InӰ3/n$VyTi. ĢQ$3`z%AZ.o#/~۵մrU,Zt}zI ~Aі/+ r7*v4IzЗu&e= aa̬BN̵oB.Z]NPMmg@=;.Ӱ#T,s ?s*\A?p(dݔ2B ;-3A7r:%n^n_xT!diqIM&W>ĕ6 CŜ6wj69}g A \}ABǯ`vϛG(|z&UhK^Iq ;۴NsU"tLt<{ܘ1LW'zzDWW݃ D~'Z*tfѰ %] sU`ﶽW-`Q!,T;ԶWmːkuՍ$ăЬnim6L# 6{UCgD;▞P!X42+lH%=%t@ g:7FJvACm7bA\ts4Q鮹k5U`xi^Ј .GAF# ?%/pm8 1T!?y%'O'-9CZ&*ŀ щىqցelper::getExcelCalendar() === SharedDateHelper::CALENDAR_WINDOWS_1900) { return 1900; } // Execute function $PHPDateObject = SharedDateHelper::excelToDateTimeObject($dateValue); return (int) $PHPDateObject->format('Y'); } /** * @param mixed $dateValue Excel date serial value (float), PHP date timestamp (integer), * PHP DateTime object, or a standard date string */ private static function weirdCondition($dateValue): int { // Excel does not treat 0 consistently for DAY vs. (MONTH or YEAR) if (SharedDateHelper::getExcelCalendar() === SharedDateHelper::CALENDAR_WINDOWS_1900 && Functions::getCompatibilityMode() == Functions::COMPATIBILITY_EXCEL) { if (is_bool($dateValue)) { return (int) $dateValue; } if ($dateValue === null) { return 0; } if (is_numeric($dateValue) && $dateValue < 1 && $dateValue >= 0) { return 0; } } return -1; } }