����JFIF�����%%��� }!1AQa"q2���#B��R��$3br� %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz������������������������������������������������������������������������� w!1AQaq"2�B���� #3R�br� $4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|��O�������h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@��o�E��/�?��ߵE_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ ?�z�����������goڢ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?��=[�Qg�����o����Q@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y�����[����TP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,���|-��v��(���� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�������;~��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@�������?�_�����j������ (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@��o�E��/�?��ߵE_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ ?�z�����������goڢ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?��=[�Qg�����o����Q@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y�����[����TP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,���|-��v��(���� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�������;~��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@�������?�_�����j������ (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@��o�E��/�?��ߵE_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ ?�z�����������goڢ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?��=[�Qg�����o����Q@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y�����[����TP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,��������ο�O�P��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@����(���g���Y������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���V��Y|����Y����UP��@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P����,�����,��u������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j���h�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� �@���o�E��?�?����ο�U_�P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@ _�z�����������g_ڪ�?��(�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (��?�/�=[�Qe�����g����U@��P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������k�w���~���v��������� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (�� (���տ�_�����:��T�~�@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@P@������/���?��j�?�5o�%��?��� g����U@�����&O3�����a�;�^=�wH���D��/��*� �fX�I���,������k?g_���?�5o�%��?��� g����U@�F�����������*������?�o�}��Τ~g��ʀ�#V��Y������~ο�T�j��K/� ������������z��������#;�~���A�;��� w�F�����������*���տ��_�@�o��5����EU������������u�誠��W��[�����������O��?jW���@��տ���@�o��5����EM������������v�訠�#V��Y�������������V��Zv��~����vw�~���c�Q@���,��~���kgo���?�5o�%��/��� o����Q@��o�%�>�ߤ���߳����S������?��o�%�~�ߠ�d�߳����S����g�P��j��K?� _������������[� g�D����[�;�TP7���������'Ѿ���=��;/�P��j��K?� _������������[� g�D����[�;�TP���,��~���kgo���a������۔���B{���ea�`T�+ �n%Ц �����j��K?� _������������[� g�D����[�;�TP���,��~���kgo����?���%�/�~�����#����x��c�~�q�v�t`ȫ��_'h���������'�]�;{s� Pp=N= 5���%�����ڜs�����=���J��A@�����Kp�b��}��X�����4g v+:�Բ�+60�ʩ,� @�����������I �uO�����ToUv��bgUl�cP�T?�#V��Y������������j��K?� _����������!��X��]���������TK�|4��`� ��#��P\y��aa >NgL��j��K?� _������������[� g�D����[�;�TP���,��~���kgo���o�F�����$��ہ�� ��vݞr6��S�q''*02���[� g�D����[�;�TP���,��~���kgo���?�5o�%��/��� o����Q@�F�����������*(��տ���@�o��5����EE������������v�訠��������~1�o���}G�L�������5o�%��/��� o����Q@�F�����������*(��տ���@�o��5����EE5����%�˷���r�v����y�\~���)(?0���=[� i����>��gc��N=����5o�%��/��� o����Q@�F�����������*(��W��Z�l����m#���X�wn_�j`0C6윅����5o�%��/��� o����Q@��տ��y9���gbO�G�5@�n�>���#V��Y������~ο�T��V��Y����9�gc��s�T.�?Z_��[� e�D����Y�:��UP���,������k?g_����_�=_� n�~~�rI������w�,"~ԓ�!72���)( u��#V��Y������~ο�T�j��K/� ��������������K
�����Kr_���}�De>~��Z=��pjX�n[p(�"� �a,Ub�/�×�<����;��<�����K>��o���[�:����V���,��$��ϧ�*�����5O����տ��_�@�o��5����EU5��o�%����?�ꜜm�_�;>Gbs�S�����@��տ��_�@�o��5����EU ��տ��}�~�����v?�������-��o�l��~�ȥ�v����r��B1���@��տ���A�?����ggP��c�S�`@%�*����տ��_�@�o��5����EU������������u�誠7���� O���!c�|0��ёv��4�+�X�Vx�RX3��8����K>��o���[�:���u#�x��#V��Y������~ο�T�j��K/� ������������[� e�D����Y�:��UP���,������k?g_���O��[� g�D����[�:��T��=_� k����~��k����c�;����.8����c��z��Ͽ�/��zc�o����F?Z_��[� e�D����Y�:��UP���,������k?g_���C���,�v����v�o���H������(�z���w�/�����v ��T.G��Ϡ���տ��_�@�o��5����EU������������u�誠��W��[��'����%��o���:�Cڕ�R̀���j���������?�o���[�;������g0q�?��o�%�>o�_��>�gf����~4�������������u�誠�z���7�/��o���������_��[� e�D����Y�:��UP���,������k?g_���C���,�|�����o��;�Ԟ��9�l�z��ؠ3|��O�X�~���;~�q����Z�F�����������*���տ��_�@�o��5����EU!��տ��}�~����-��G��I�T�������������u�誠�#V��Y������~ο�T�j��K/� ����������#�=_� n|���KbB�gtdM��"�ڒA#n�63�6�m�P�����,���/���gS�u����#�9��5o�%��?��� g����U@��o�%�o�_�����u��'�������?��o��� ���3��?go���|m�ڇ���-S�O��x��>���^�����7����x�]_�>�qke>���m��4��7P�Yހ��
0byt3m1n1
0byt3m1n1
Path:
/
hermes
/
sb_web
/
web
/
b2038
/
ipg.thattimeofdaycom
/
wp-content
/
themes
/
genesis
/
lib
/
structure
/
[
Home
]
File: header.php
<?php /** * Genesis Framework. * * WARNING: This file is part of the core Genesis Framework. DO NOT edit this file under any circumstances. * Please do all modifications in the form of a child theme. * * @package Genesis\Header * @author StudioPress * @license GPL-2.0-or-later * @link https://my.studiopress.com/themes/genesis/ */ add_action( 'genesis_doctype', 'genesis_do_doctype' ); /** * Echo the doctype and opening markup. * * If you are going to replace the doctype with a custom one, you must remember to include the opening <html> and * <head> elements too, along with the proper attributes. * * It would be beneficial to also include the <meta> tag for content type. * * The default doctype is XHTML v1.0 Transitional, unless HTML support os present in the child theme. * * @since 1.3.0 * @since 3.0.0 Removed xhtml logic. */ function genesis_do_doctype() { genesis_html5_doctype(); } /** * HTML5 doctype markup. * * @since 2.0.0 */ function genesis_html5_doctype() { ?> <!DOCTYPE html> <html <?php language_attributes( 'html' ); ?>> <head <?php echo genesis_attr( 'head' ); ?>> <meta charset="<?php bloginfo( 'charset' ); ?>" /> <?php // phpcs:ignore Generic.WhiteSpace.ScopeIndent.IncorrectExact -- To keep layout of existing HTML output. } add_filter( 'document_title_parts', 'genesis_document_title_parts' ); /** * Filter Document title parts based on context and SEO settings values. * * @since 2.6.0 * * @param array $parts The document title parts. * @return array Return modified array of title parts. */ function genesis_document_title_parts( $parts ) { $genesis_document_title_parts = new Genesis_SEO_Document_Title_Parts(); return $genesis_document_title_parts->get_parts( $parts ); } add_filter( 'document_title_separator', 'genesis_document_title_separator' ); /** * Filter Document title parts separator based on SEO setting value. * * @since 2.6.0 * * @param string $sep The title parts separator. * @return string Return modified title parts separator. */ function genesis_document_title_separator( $sep ) { $sep = genesis_get_seo_option( 'doctitle_sep' ); return $sep ?: '-'; } add_action( 'get_header', 'genesis_doc_head_control' ); /** * Remove unnecessary code that WordPress puts in the `head`. * * @since 1.3.0 */ function genesis_doc_head_control() { remove_action( 'wp_head', 'wp_generator' ); if ( ! genesis_get_seo_option( 'head_adjacent_posts_rel_link' ) ) { remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10 ); } if ( ! genesis_get_seo_option( 'head_wlwmanifest_link' ) ) { remove_action( 'wp_head', 'wlwmanifest_link' ); } if ( ! genesis_get_seo_option( 'head_shortlink' ) ) { remove_action( 'wp_head', 'wp_shortlink_wp_head', 10 ); } if ( is_single() && ! genesis_get_option( 'comments_posts' ) ) { remove_action( 'wp_head', 'feed_links_extra', 3 ); } if ( is_page() && ! genesis_get_option( 'comments_pages' ) ) { remove_action( 'wp_head', 'feed_links_extra', 3 ); } } add_action( 'genesis_meta', 'genesis_seo_meta_description' ); /** * Output the meta description based on contextual criteria. * * Output nothing if description isn't present. * * @since 1.2.0 * @since 2.4.0 Logic moved to `genesis_get_seo_meta_description()` * * @see genesis_get_seo_meta_description() */ function genesis_seo_meta_description() { $description = genesis_get_seo_meta_description(); // Add the description if one exists. if ( $description ) { echo '<meta name="description" content="' . esc_attr( $description ) . '" />' . "\n"; } } add_action( 'genesis_meta', 'genesis_seo_meta_keywords' ); /** * Output the meta keywords based on contextual criteria. * * Outputs nothing if keywords are not present. * * @since 1.2.0 * @since 2.4.0 Logic moved to `genesis_get_seo_meta_keywords()` * * @see genesis_get_seo_meta_keywords() */ function genesis_seo_meta_keywords() { $keywords = genesis_get_seo_meta_keywords(); // Add the keywords if they exist. if ( $keywords ) { echo '<meta name="keywords" content="' . esc_attr( $keywords ) . '" />' . "\n"; } } add_action( 'genesis_meta', 'genesis_robots_meta' ); /** * Output the robots meta code in the document `head`. * * @since 1.0.0 * @since 2.4.0 Logic moved to `genesis_get_robots_meta_content()` * * @see genesis_get_robots_meta_content() * * @return void Return early if blog is not public. */ function genesis_robots_meta() { // If the blog is private, then following logic is unnecessary as WP will insert noindex and nofollow. if ( ! get_option( 'blog_public' ) ) { return; } $meta = genesis_get_robots_meta_content(); // Add meta if any exist. if ( $meta ) { ?> <meta name="robots" content="<?php echo esc_attr( $meta ); ?>" /> <?php } } add_action( 'genesis_meta', 'genesis_responsive_viewport' ); /** * Outputs the responsive CSS viewport tag. * * Applies `genesis_viewport_value` filter on content attribute. * * @since 1.9.0 * @since 2.7.0 Adds `minimum-scale=1` when AMP URL. * @since 3.0 Do not check if theme supports `genesis-responsive-viewport`. */ function genesis_responsive_viewport() { /** * Filter the viewport meta tag value. * * @since 2.3.0 * * @param string $viewport_default Default value of the viewport meta tag. */ $viewport_value = apply_filters( 'genesis_viewport_value', 'width=device-width, initial-scale=1' ); // If the web page is an AMP URL and `minimum-scale` is missing, add it. if ( genesis_is_amp() && strpos( $viewport_value, 'minimum-scale' ) === false ) { $viewport_value .= ',minimum-scale=1'; } printf( '<meta name="viewport" content="%s" />' . "\n", esc_attr( $viewport_value ) ); } add_action( 'wp_head', 'genesis_load_favicon' ); /** * Echo favicon link. * * @since 1.0.0 * @since 2.4.0 Logic moved to `genesis_get_favicon_url()`. * * @see genesis_get_favicon_url() * * @return void Return early if WP Site Icon is used. */ function genesis_load_favicon() { // Use WP site icon, if available. if ( function_exists( 'has_site_icon' ) && has_site_icon() ) { return; } $favicon = genesis_get_favicon_url(); if ( $favicon ) { echo '<link rel="icon" href="' . esc_url( $favicon ) . '" />' . "\n"; } } add_action( 'wp_head', 'genesis_do_meta_pingback' ); /** * Adds the pingback meta tag to the head so that other sites can know how to send a pingback to our site. * * @since 1.3.0 */ function genesis_do_meta_pingback() { if ( 'open' === get_option( 'default_ping_status' ) ) { echo '<link rel="pingback" href="' . esc_url( get_bloginfo( 'pingback_url' ) ) . '" />' . "\n"; } } add_action( 'wp_head', 'genesis_paged_rel' ); /** * Output rel links in the head to indicate previous and next pages in paginated archives and posts. * * @link https://webmasters.googleblog.com/2011/09/pagination-with-relnext-and-relprev.html * * @since 2.2.0 * * @return void Return early if doing a Customizer preview. */ function genesis_paged_rel() { global $wp_query; $next = ''; $prev = $next; $paged = (int) get_query_var( 'paged' ); $page = (int) get_query_var( 'page' ); if ( ! is_singular() ) { $prev = $paged > 1 ? get_previous_posts_page_link() : $prev; $next = $paged < $wp_query->max_num_pages ? get_next_posts_page_link( $wp_query->max_num_pages ) : $next; } else { // No need for this on previews. if ( is_preview() ) { return; } $numpages = substr_count( $wp_query->post->post_content, '<!--nextpage-->' ) + 1; if ( $numpages && ! $page ) { $page = 1; } if ( $page > 1 ) { $prev = genesis_paged_post_url( $page - 1 ); } if ( $page < $numpages ) { $next = genesis_paged_post_url( $page + 1 ); } } if ( $prev ) { printf( '<link rel="prev" href="%s" />' . "\n", esc_url( $prev ) ); } if ( $next ) { printf( '<link rel="next" href="%s" />' . "\n", esc_url( $next ) ); } } add_action( 'wp_head', 'genesis_meta_name' ); /** * Output meta tag for site name. * * @since 2.2.0 * * @return void Return early if not HTML5 or not front page. */ function genesis_meta_name() { if ( ! is_front_page() ) { return; } printf( '<meta itemprop="name" content="%s" />' . "\n", esc_html( get_bloginfo( 'name' ) ) ); } add_action( 'wp_head', 'genesis_meta_url' ); /** * Output meta tag for site URL. * * @since 2.2.0 * * @return void Return early if not HTML5 or not front page. */ function genesis_meta_url() { if ( ! is_front_page() ) { return; } printf( '<meta itemprop="url" content="%s" />' . "\n", esc_url( trailingslashit( home_url() ) ) ); } add_action( 'wp_head', 'genesis_canonical', 5 ); /** * Echo custom canonical link tag. * * Remove the default WordPress canonical tag, and use our custom * one. Gives us more flexibility and effectiveness. * * @since 1.0.0 */ function genesis_canonical() { // Remove the WordPress canonical. remove_action( 'wp_head', 'rel_canonical' ); $canonical = genesis_canonical_url(); if ( $canonical ) { printf( '<link rel="canonical" href="%s" />' . "\n", esc_url( apply_filters( 'genesis_canonical', $canonical ) ) ); } } add_filter( 'genesis_header_scripts', 'do_shortcode' ); add_action( 'wp_head', 'genesis_header_scripts' ); /** * Echo header scripts in to wp_head(). * * Allows shortcodes. * * Applies `genesis_header_scripts` filter on value stored in header_scripts setting. * * Also echoes scripts from the post's custom field. * * @since 1.0.0 */ function genesis_header_scripts() { echo apply_filters( 'genesis_header_scripts', genesis_get_option( 'header_scripts' ) ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Need to output scripts. // If singular, echo scripts from custom field. if ( is_singular() ) { genesis_custom_field( '_genesis_scripts' ); } } add_action( 'genesis_before', 'genesis_page_specific_body_scripts' ); /** * Output page-specific body scripts if their position is set to 'top'. * * If the position is 'bottom' or null, output occurs in genesis_footer_scripts() instead. * * @since 2.5.0 */ function genesis_page_specific_body_scripts() { if ( ! is_singular() ) { return; } if ( 'top' === genesis_get_custom_field( '_genesis_scripts_body_position' ) ) { genesis_custom_field( '_genesis_scripts_body' ); } } add_action( 'after_setup_theme', 'genesis_custom_header' ); /** * Activate the custom header feature. * * It gets arguments passed through add_theme_support(), defines the constants, and calls `add_custom_image_header()`. * * Applies `genesis_custom_header_defaults` filter. * * @since 1.6.0 * * @return void Return early if `custom-header` or `genesis-custom-header` are not supported in the theme. */ function genesis_custom_header() { $wp_custom_header = get_theme_support( 'custom-header' ); // If WP custom header is active, no need to continue. if ( $wp_custom_header ) { return; } $genesis_custom_header = get_theme_support( 'genesis-custom-header' ); // If Genesis custom is not active, do nothing. if ( ! $genesis_custom_header ) { return; } // Blog title option is obsolete when custom header is active. add_filter( 'genesis_pre_get_option_blog_title', '__return_empty_array' ); // Cast, if necessary. $genesis_custom_header = isset( $genesis_custom_header[0] ) && is_array( $genesis_custom_header[0] ) ? $genesis_custom_header[0] : []; // Merge defaults with passed arguments. $args = wp_parse_args( $genesis_custom_header, apply_filters( 'genesis_custom_header_defaults', [ 'width' => 960, 'height' => 80, 'textcolor' => '333333', 'no_header_text' => false, 'header_image' => '%s/images/header.png', 'header_callback' => '', 'admin_header_callback' => '', ] ) ); // Push $args into theme support array. add_theme_support( 'custom-header', [ 'default-image' => sprintf( $args['header_image'], get_stylesheet_directory_uri() ), 'header-text' => $args['no_header_text'] ? false : true, 'default-text-color' => $args['textcolor'], 'width' => $args['width'], 'height' => $args['height'], 'random-default' => false, 'header-selector' => '.site-header', 'wp-head-callback' => $args['header_callback'], 'admin-head-callback' => $args['admin_header_callback'], ] ); } add_action( 'after_setup_theme', 'genesis_custom_logo' ); /** * Add support for the WordPress custom logo feature. * * Passes add_theme_support() arguments from `genesis-custom-logo` to `custom-logo`. * * Applies `genesis_custom_logo_defaults` filter. * * @since 3.1.0 * * @return void Return early if `custom-logo` is supported or `genesis-custom-logo` is not supported in the theme. */ function genesis_custom_logo() { $wp_custom_logo = get_theme_support( 'custom-logo' ); // If WP custom logo is active, no need to continue. if ( $wp_custom_logo ) { return; } $genesis_custom_logo = get_theme_support( 'genesis-custom-logo' ); // If Genesis custom is not active, do nothing. if ( ! $genesis_custom_logo ) { return; } // Blog title option is obsolete when custom logo is active. add_filter( 'genesis_pre_get_option_blog_title', '__return_empty_array' ); // Cast, if necessary. $genesis_custom_logo = isset( $genesis_custom_logo[0] ) && is_array( $genesis_custom_logo[0] ) ? $genesis_custom_logo[0] : []; // Merge defaults with passed arguments. $args = wp_parse_args( $genesis_custom_logo, apply_filters( 'genesis_custom_logo_defaults', [ 'height' => 100, 'width' => 400, 'flex-height' => true, 'flex-width' => true, 'header-text' => '', ] ) ); // Push $args into theme support array. add_theme_support( 'custom-logo', [ 'header-text' => $args['header-text'], 'height' => $args['height'], 'width' => $args['width'], 'flex-height' => $args['flex-height'], 'flex-width' => $args['flex-height'], ] ); } add_action( 'wp_head', 'genesis_custom_header_style' ); /** * Custom header callback. * * It outputs special CSS to the document head, modifying the look of the header based on user input. * * @since 1.6.0 * * @return void Return early if `custom-header` not supported, user specified own callback, or no options set. */ function genesis_custom_header_style() { // Do nothing if custom header not supported. if ( ! current_theme_supports( 'custom-header' ) ) { return; } // Do nothing if user specifies their own callback. if ( get_theme_support( 'custom-header', 'wp-head-callback' ) ) { return; } $output = ''; $header_image = get_header_image(); $text_color = get_header_textcolor(); // If no options set, don't waste the output. Do nothing. if ( empty( $header_image ) && ! display_header_text() && get_theme_support( 'custom-header', 'default-text-color' ) === $text_color ) { return; } $header_selector = get_theme_support( 'custom-header', 'header-selector' ); $title_selector = '.custom-header .site-title'; $desc_selector = '.custom-header .site-description'; // Header selector fallback. if ( ! $header_selector ) { $header_selector = '.custom-header .site-header'; } // Header image CSS, if exists. if ( $header_image ) { $output .= sprintf( '%s { background: url(%s) no-repeat !important; }', $header_selector, esc_url( $header_image ) ); } // Header text color CSS, if showing text. if ( display_header_text() && get_theme_support( 'custom-header', 'default-text-color' ) !== $text_color ) { $output .= sprintf( '%2$s a, %2$s a:hover, %3$s { color: #%1$s !important; }', esc_html( $text_color ), esc_html( $title_selector ), esc_html( $desc_selector ) ); } if ( $output ) { printf( '<style type="text/css">%s</style>' . "\n", $output ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Already escaped. } } add_action( 'genesis_header', 'genesis_header_markup_open', 5 ); /** * Echo the opening structural markup for the header. * * @since 1.2.0 */ function genesis_header_markup_open() { genesis_markup( [ 'open' => '<header %s>', 'context' => 'site-header', ] ); genesis_structural_wrap( 'header' ); } add_action( 'genesis_header', 'genesis_header_markup_close', 15 ); /** * Echo the opening structural markup for the header. * * @since 1.2.0 */ function genesis_header_markup_close() { genesis_structural_wrap( 'header', 'close' ); genesis_markup( [ 'close' => '</header>', 'context' => 'site-header', ] ); } add_action( 'genesis_header', 'genesis_do_header' ); /** * Echo the default header, including the #title-area div, along with #title and #description, as well as the .widget-area. * * Does the `genesis_site_title`, `genesis_site_description` and `genesis_header_right` actions. * * @since 1.0.2 * * @global $wp_registered_sidebars Holds all of the registered sidebars. */ function genesis_do_header() { global $wp_registered_sidebars; genesis_markup( [ 'open' => '<div %s>', 'context' => 'title-area', ] ); /** * Fires inside the title area, before the site description hook. * * @since 2.6.0 */ do_action( 'genesis_site_title' ); /** * Fires inside the title area, after the site title hook. * * @since 1.0.0 */ do_action( 'genesis_site_description' ); genesis_markup( [ 'close' => '</div>', 'context' => 'title-area', ] ); if ( has_action( 'genesis_header_right' ) || ( isset( $wp_registered_sidebars['header-right'] ) && is_active_sidebar( 'header-right' ) ) ) { genesis_markup( [ 'open' => '<div %s>', 'context' => 'header-widget-area', ] ); /** * Fires inside the header widget area wrapping markup, before the Header Right widget area. * * @since 1.5.0 */ do_action( 'genesis_header_right' ); add_filter( 'wp_nav_menu_args', 'genesis_header_menu_args' ); add_filter( 'wp_nav_menu', 'genesis_header_menu_wrap' ); dynamic_sidebar( 'header-right' ); remove_filter( 'wp_nav_menu_args', 'genesis_header_menu_args' ); remove_filter( 'wp_nav_menu', 'genesis_header_menu_wrap' ); genesis_markup( [ 'close' => '</div>', 'context' => 'header-widget-area', ] ); } } add_action( 'after_setup_theme', 'genesis_output_custom_logo', 11 ); /** * Adds the WordPress custom logo inside the title area, before the site title hook. * * @since 3.1.0 */ function genesis_output_custom_logo() { if ( current_theme_supports( 'genesis-custom-logo' ) ) { add_action( 'genesis_site_title', 'the_custom_logo', 0 ); } } add_action( 'genesis_site_title', 'genesis_seo_site_title' ); /** * Echo the site title into the header. * * Depending on the SEO option set by the user, this will either be wrapped in an `h1` or `p` element. * The Site Title will be wrapped in a link to the homepage, if a custom logo is not in use. * * Applies the `genesis_seo_title` filter before echoing. * * @since 1.1.0 */ function genesis_seo_site_title() { // Set what goes inside the wrapping tags. $inside = current_theme_supports( 'genesis-custom-logo' ) && has_custom_logo() ? wp_kses_post( get_bloginfo( 'name' ) ) : wp_kses_post( sprintf( '<a href="%s">%s</a>', trailingslashit( home_url() ), get_bloginfo( 'name' ) ) ); // Determine which wrapping tags to use. $wrap = genesis_is_root_page() && 'title' === genesis_get_seo_option( 'home_h1_on' ) ? 'h1' : 'p'; // Fallback for static homepage if an SEO plugin is active. $wrap = genesis_is_root_page() && genesis_seo_disabled() ? 'p' : $wrap; // Fallback for latest posts if an SEO plugin is active. $wrap = is_front_page() && is_home() && genesis_seo_disabled() ? 'h1' : $wrap; // And finally, $wrap in h1 if HTML5 & semantic headings enabled. $wrap = genesis_get_seo_option( 'semantic_headings' ) ? 'h1' : $wrap; /** * Site title wrapping element * * The wrapping element for the site title. * * @since 2.2.3 * * @param string $wrap The wrapping element (h1, h2, p, etc.). */ $wrap = apply_filters( 'genesis_site_title_wrap', $wrap ); // Build the title. $title = genesis_markup( [ 'open' => sprintf( "<{$wrap} %s>", genesis_attr( 'site-title' ) ), 'close' => "</{$wrap}>", 'content' => $inside, 'context' => 'site-title', 'echo' => false, 'params' => [ 'wrap' => $wrap, ], ] ); /** * The SEO title filter * * Allows the entire SEO title to be filtered. * * @since ??? * * @param string $title The SEO title. * @param string $inside The inner portion of the SEO title. * @param string $wrap The html element to wrap the title in. */ $title = apply_filters( 'genesis_seo_title', $title, $inside, $wrap ); echo $title; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- sanitize done prior to filter application } add_action( 'genesis_site_description', 'genesis_seo_site_description' ); /** * Echo the site description into the header. * * Depending on the SEO option set by the user, this will either be wrapped in an `h1` or `p` element. * * Applies the `genesis_seo_description` filter before echoing. * * @since 1.1.0 */ function genesis_seo_site_description() { // Set what goes inside the wrapping tags. $inside = esc_html( get_bloginfo( 'description' ) ); // Determine which wrapping tags to use. $wrap = genesis_is_root_page() && 'description' === genesis_get_seo_option( 'home_h1_on' ) ? 'h1' : 'p'; // And finally, $wrap in h2 if HTML5 & semantic headings enabled. $wrap = genesis_get_seo_option( 'semantic_headings' ) ? 'h2' : $wrap; /** * Site description wrapping element * * The wrapping element for the site description. * * @since 2.2.3 * * @param string $wrap The wrapping element (h1, h2, p, etc.). */ $wrap = apply_filters( 'genesis_site_description_wrap', $wrap ); // Build the description. $description = genesis_markup( [ 'open' => sprintf( "<{$wrap} %s>", genesis_attr( 'site-description' ) ), 'close' => "</{$wrap}>", 'content' => $inside, 'context' => 'site-description', 'echo' => false, 'params' => [ 'wrap' => $wrap, ], ] ); // Output (filtered). $output = $inside ? apply_filters( 'genesis_seo_description', $description, $inside, $wrap ) : ''; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped echo $output; } /** * Sets attributes for the custom menu widget if used in the Header Right widget area. * * @since 1.9.0 * * @param array $args Navigation menu arguments. * @return array $args Arguments for custom menu widget used in Header Right widget area. */ function genesis_header_menu_args( $args ) { $args['container'] = ''; $args['link_before'] = $args['link_before'] ?: sprintf( '<span %s>', genesis_attr( 'nav-link-wrap' ) ); $args['link_after'] = $args['link_after'] ?: '</span>'; $args['menu_class'] .= ' genesis-nav-menu'; $args['menu_class'] .= genesis_superfish_enabled() ? ' js-superfish' : ''; return $args; } /** * Wrap the header navigation menu in its own nav tags with markup API. * * @since 2.0.0 * * @param string $menu Menu output. * @return string $menu Modified menu output, or original if not HTML5. */ function genesis_header_menu_wrap( $menu ) { return genesis_markup( [ 'open' => sprintf( '<nav %s>', genesis_attr( 'nav-header' ) ), 'close' => '</nav>', 'content' => $menu, 'context' => 'header-nav', 'echo' => false, ] ); } add_action( 'genesis_before_header', 'genesis_skip_links', 5 ); /** * Add skip links for screen readers and keyboard navigation. * * @since 2.2.0 * * @return void Return early if skip links are not supported. */ function genesis_skip_links() { if ( ! genesis_a11y( 'skip-links' ) ) { return; } // Call function to add IDs to the markup. genesis_skiplinks_markup(); // Determine which skip links are needed. $links = []; if ( genesis_nav_menu_supported( 'primary' ) && has_nav_menu( 'primary' ) ) { $links['genesis-nav-primary'] = esc_html__( 'Skip to primary navigation', 'genesis' ); } $links['genesis-content'] = esc_html__( 'Skip to main content', 'genesis' ); if ( 'full-width-content' !== genesis_site_layout() ) { $links['genesis-sidebar-primary'] = esc_html__( 'Skip to primary sidebar', 'genesis' ); } if ( in_array( genesis_site_layout(), [ 'sidebar-sidebar-content', 'sidebar-content-sidebar', 'content-sidebar-sidebar' ], true ) ) { $links['genesis-sidebar-secondary'] = esc_html__( 'Skip to secondary sidebar', 'genesis' ); } if ( current_theme_supports( 'genesis-footer-widgets' ) ) { $footer_widgets = get_theme_support( 'genesis-footer-widgets' ); if ( isset( $footer_widgets[0] ) && is_numeric( $footer_widgets[0] ) && is_active_sidebar( 'footer-1' ) && ! genesis_footer_widgets_hidden_on_current_page() ) { $links['genesis-footer-widgets'] = esc_html__( 'Skip to footer', 'genesis' ); } } /** * Filter the skip links. * * @since 2.2.0 * * @param array $links { * Default skiplinks. * * @type string HTML ID attribute value to link to. * @type string Anchor text. * } */ $links = (array) apply_filters( 'genesis_skip_links_output', $links ); // Write HTML, skiplinks in a list. $skiplinks = '<ul class="genesis-skip-link">'; // Add markup for each skiplink. foreach ( $links as $key => $value ) { $skiplinks .= '<li><a href="' . esc_url( '#' . $key ) . '" class="screen-reader-shortcut"> ' . $value . '</a></li>'; } $skiplinks .= '</ul>'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped echo $skiplinks; }
© 2017 -
ZeroByte.ID
.