diff options
Diffstat (limited to 'test')
-rwxr-xr-x | test/error/header-mismatch.sh | 3 | ||||
-rwxr-xr-x | test/error/no-token-available.sh | 7 | ||||
-rwxr-xr-x | test/error/non-positive-dimension.sh | 10 | ||||
-rwxr-xr-x | test/error/not-square.sh | 3 | ||||
-rw-r--r-- | test/input/real-world-image.0.pgm | 5 | ||||
-rw-r--r-- | test/input/real-world-image.1.pgm | 5 | ||||
-rw-r--r-- | test/input/real-world-image.2.pgm | 5 | ||||
-rw-r--r-- | test/input/real-world-image.3.pgm | 5 | ||||
-rw-r--r-- | test/input/real-world-image.4.pgm | 5 | ||||
-rw-r--r-- | test/input/single-frame.pgm | 5 | ||||
-rw-r--r-- | test/pass/real-world-image.pgm.expected | 5 | ||||
-rwxr-xr-x | test/pass/real-world-image.sh | 3 |
12 files changed, 61 insertions, 0 deletions
diff --git a/test/error/header-mismatch.sh b/test/error/header-mismatch.sh new file mode 100755 index 0000000..92418ea --- /dev/null +++ b/test/error/header-mismatch.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +${EXECUTABLE} ../input/{white,single-frame}.pgm > /dev/null diff --git a/test/error/no-token-available.sh b/test/error/no-token-available.sh new file mode 100755 index 0000000..5ad117b --- /dev/null +++ b/test/error/no-token-available.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +${EXECUTABLE} /dev/stdin << EOF +P5 +300 +2 +EOF diff --git a/test/error/non-positive-dimension.sh b/test/error/non-positive-dimension.sh new file mode 100755 index 0000000..13ab1d1 --- /dev/null +++ b/test/error/non-positive-dimension.sh @@ -0,0 +1,10 @@ +#!/bin/sh + +${EXECUTABLE} /dev/stdin << EOF +P5 +2 +0 +255 +11 +11 +EOF diff --git a/test/error/not-square.sh b/test/error/not-square.sh new file mode 100755 index 0000000..93accbe --- /dev/null +++ b/test/error/not-square.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +${EXECUTABLE} ../input/{white,black}.pgm diff --git a/test/input/real-world-image.0.pgm b/test/input/real-world-image.0.pgm new file mode 100644 index 0000000..f1342e0 --- /dev/null +++ b/test/input/real-world-image.0.pgm @@ -0,0 +1,5 @@ +P5 +100 +20 +255 +##((((((((((((######################�p8�Q833-((((((((((((((##################(�3pB---38[[u�Ѽ�Bk---(((((((((((((###################((((--8�p[[�[88[z����G`G3333----------((((#####################(((--�8p8---8=VG---((((((((((((((8Gf̎Q[G�Q8=�[���z��f8883------------(((#####################((((((((33G��V�838��u[�=8-((((((((((((-88B���V�uuG==Q��Ɖ���V[�L=888333333333-((((################((((((((((3=��z�f`B�fQ[u�883--(((((---333==�pu���ufB��`��Q�Vz���B====88===L�f=8=3----((#########(((((((---3338�``[`fL=�u��Q�G=333---------388B���Qfu��pf�����k������`��u[�[p̷G=G�B883333-#########((((-------388G����k�BG�pf���L=88----------8�k�VQ�Q�ff[�`��Qp�`G`u������f�G�����B=3333333#########((----------=G�������Lz�����f��G=3------388=B�������L�����f�L��LGL�kp�����������B83333333#########((----33338888G�ƙ�k�岉�p���f��G=8888338888BB����G���������VLV��z�����uf�```k�LB==88883333########((-333333338===G�ѓV�fu�up�L��Q�z�GB==8888===B�kp�zLGu�LLu�k���������u�k�֓�`��L====88888883#####(((-�B88====BGVf��V���L��L����`��kk��z�LGBBBBBGL���p��[V��p���������z��[V������[GBB==88888888(---3388[VVBG������������z���V`���[L�VL�k`��fkk��������������������֨up����QQVz���p�LGBBB=88888===33333338===[���GGLz�������p�������������������������������������������V[u�VQV��ַ��[[LGGVGBBB=====333333333=BBBLz```��������������������������������������������������`VQ��`V������z�QQ`�GGBBBBBBQ[33333338=G��V[���������������������������������������������������������f[�k���`������`p�VLLBGGGGLf�88=====BBBBQV�k�����������������������������������������������z��zp����p�[u�p`Ɠ�������`QLQQLLLQV��BGGLQLLGQLVk������������������������������������������������������u���������zk�������ѓp``u`[[f�k��-33333333333333338====BBGGGLLLGGGBBBBGLVVVV[[``pp����������k`QQLGBBBB=====8888888888888888833333---
\ No newline at end of file diff --git a/test/input/real-world-image.1.pgm b/test/input/real-world-image.1.pgm new file mode 100644 index 0000000..966200b --- /dev/null +++ b/test/input/real-world-image.1.pgm @@ -0,0 +1,5 @@ +P5 +100 +20 +255 +#(((((((((((((((#####################(-=�uQpB33-(((((((((((((((#################-3�8`p8--33`u֙�G[kB83------((((((((########################(((((-33`Vz��[��LG�[G��z��8333-----------(((#######################((((---��љ---=QG�8--((((((((((((((8[`��L�uG==��p�u��VG==3------------(((####################(((((((((38G��Lk=88���G�`B-((((((((((((338=��kff��z==L`k���Q�z�G=8888333333333-((((((############((((((((((-38G�։ffp8Q���[��=833--((((---3338B����[���Q`���ۄL������BB===BVBG���k88kz83----#########((((((----333=G̓���B=G�����=833---------38=Gk��f���Vщ�ۉ�uQ���f���uf֞k�V==�`p=833333-#########(((---------8=Bpz�kkpBBfk���f�B=8----------=G��QQ�[��[���k��Gz��QQ��[`V`������z�VVB83333333#########((---------3==��uf`[V[�f[�f����u==83----38888G�f����pQp�����LGk�QLV�k���z������zpB=83333333#########(----333338888��f�`�`�f�����[��`V=888833888=BG����G���LQ��[�kQ[�k������kk`���``GB==88888333#######((--333333338===����L�[[���L�fL��uLG===888===L�����LLf�LQƲ��z��������k�[���p[L====88888888###((((-8�kVB===BBL���k�uƼG��L��p�V[�[[����VGGBBBBLk�������`������������ѣ�VV`�����f�QGBB==88888888---33388B̞LBL�k���f����ۭ����u����`L��L��u�kz�����������������������p�k��fQQp��z���kLGBBB=888=====33333333===G���zLLL���������������������������������������������ۓ��ۼ�`VV��pQV����̄VuLGGVGBBB====B333333333=BBBQ`f�������������������������������������������������u����`QV��k`�����pfVQ��GGBBBBGGV�8888888==BL��k���������������������������������������������������z����[fu��Vk�����pp�zQLLBGGGLQfz8======BBBBQQk�������������������������������������������������ukю��uu`u�pk�������`VLQQLQVQ[��f[[`kuu[zk������������������������������������������������������������������������������zz�uuuƲ��-----33333333333388======GLGGGBBBBBBBBBBBBGQQQQVfkppp�zffVQVVVLGBB=88833333333333333333333-------
\ No newline at end of file diff --git a/test/input/real-world-image.2.pgm b/test/input/real-world-image.2.pgm new file mode 100644 index 0000000..1a20969 --- /dev/null +++ b/test/input/real-world-image.2.pgm @@ -0,0 +1,5 @@ +P5 +100 +20 +255 +##----(((((((((((((####################(--=L�u�[333(((((((((((((((#################((-8�L�`83333�VL�G��k8833-------(((((((#################(((#######((((((-33��k�uu[B�V�[L`��[fB8333----------(((#########################(((((--3�Lu`8--8p�zz83-((((((((((((((3Lz�������=3LV[[��[�B==-------------(((###################(((((((((-8VG�LL�=G�k���pL8(((((((((((-333B�`�V�z�VB8V�pp�����fpGB88883333338883-((((((((#########(((((((((--38=���[fG=B�`k��p=333----(----3388B�k���fѭ�ꎎ���V�����fLG=BB��Vp�G�B8�BB833---#########(((((-----3388G���==G���zfQ=883---------38=p`�����VQ���f��pQQ���pu[[�z[�zG=��z�=833333-#########(((---------8=Lz[���QQG�QQQ���Q==---------3==GkQV��f����z��uG[��LL�����zz��k[`[��G33333333#########((--------388=Gf���ffVf`�`[V�̓Q==8833-338888��u`�V��LQ�f�pfQGQ�QL[�p���p�z�uf[u�B=88333333########((---333333888=Gf��������z���p�uG888883888=BG��kQ�f[Gp֓k�kV�k������p��V`ю�QG===88888833#######((-333333333==BGƷ��L��Qp���L��L����G====88==BGuu���QL`�VVƎz��������ێ���[�p��`�====88888888##((((-8=Bp��GBBGBfk`��k���L`�G���QQ�QQ�����QLGBBQ[�V`����̙Ɠ���������u��kVQV��z����QGBBB=88888888---33388=B��L=L��`����z����������fp�V��V��k`�f��������������������������``�`QQfƉ�up�[LBBBB=88======333333338==GG��p[LLV���������������������������������������������������fVV��fQV������`QLGQ[GBBBB===G333333333=BBBV`uf�fk������������������������������������������ք�u��Ѩ�`QV��������ѣ�fVV��GGBBBGGL[�888888==BBL[f�����������������������������������������������������p����kf`����[kѓ���zf��QLLGLGGLQpu======BBBBG``p������������������������������������������������z�up����k`��zf���������`VVfQLQVQ[��========BBBBGLV`[QQQ[`fzkpp�������������������������������u`[VVQLLLLGGGGGLLGGGBBBBBGGQGBBBBBGGGL[f-----------3333333888==BGG==========BBBBBBBBGLLQQQ[V[``k```[VLGGGGGB8333333333333333333333----------
\ No newline at end of file diff --git a/test/input/real-world-image.3.pgm b/test/input/real-world-image.3.pgm new file mode 100644 index 0000000..ff68f6b --- /dev/null +++ b/test/input/real-world-image.3.pgm @@ -0,0 +1,5 @@ +P5 +100 +20 +255 +#(�3---((((((((((((((###################(----��fB�zG88-(((((((((((((((#################((--BLf��3338�BG̎u�z=8333--------(((((######################(83`--(((((((##((((((-38������V�B�fGƲzz�f=8833-----------(((#######################((((((--3BkB=338����G33-(((((((((((((=�u`Q�����3B����Vֲ֙�B3333333333---(((##################((((((((((-`�QLQLkz�fu���p�`-(((((((((--3338�Lf�`��L8L�V��k�kuQ�GB888883333888u=--(((((((#########((((((((--333=����==����kG3333--------3388=���pkQ[fzu���������u��VLG[�p�k�G=B[�88333--#########(((((------388B�����G=B�`kz��B883----------8G`�z�Q�Q��������QG�kf�����`�LBG�`pL=8333333#########(((---------3Q��QQp�f���Q[Q�[�u��3--------8==Gƞ��f���f����G[�zLGQ����������p�fk�Q33333333#########((------33388=B���k��p�ƨ�Q�u[�QB=88833338888Gu��Qz�GQ��ў�LGQ�[Q�����������[��BB=88333333########((--333333388=BB���z�������zzk��G=8888388===Lf����[�[GQ��p���z������љp�f����LG===88888833######(((-388833338BBBG�f��Q��Q���GukG��z�L=======BGV�`�k�QL��`ff����������k���pf���QB===88888888(((((-3��=Q�V��LGL[���z��`�L[�Lkz[�[L�zG����uLQ�Qp����[`���������������u��fQQVz��k�z�GGBBB=88888888--333388=BL�GL�f�f������������������[��[p������������������������u���V`�`QLV���u�[LBBGG=========333333338==BG�[f�kQQ`���������������������������������������������uz����VVf�[Qf�����QLL[QGBBBBB==L333333333=GGL`��������������������������������������������������z�����`Q[z���������`V[�fGGBBBGGL��8888====BBGQ�fz��������������������������������������������垨��������k�[p���[k������kkQLLLLGGQVu�BB====GGGLQ[`��������������������������������������������W�����zz�����k��̞f��ۙ�����fVVuVQQVV`��888888888888=LGGGBBBBBGLQQQQ`kk``kpuppz���������������������pf[QQLLGGBBBBB==========8888888=======G[((((((((((------3338888GB================BBBBBGLLQQQQQQVVQQQGBBBBB=83333333333333333333-------------
\ No newline at end of file diff --git a/test/input/real-world-image.4.pgm b/test/input/real-world-image.4.pgm new file mode 100644 index 0000000..135730e --- /dev/null +++ b/test/input/real-world-image.4.pgm @@ -0,0 +1,5 @@ +P5 +100 +20 +255 +##-3LL----((((((((((((((##################(=3----8�`B�kf`[-(((((((((((((((##################(((--8V�B��=338�G�ukz��=8333---------((((####################((-8-=3-(-3k8f8--((((((((((((((-38�GGV�[��8B��pV�zzkG8883-----------(((######################(((((((-33G�BVG333��u��83-((((((((((((-88L��[�z��Q8=`�kV���kk�L�=83333333333--(((#################((((((((((-[Lzpf�`�pkLLV���88-((((((((--3338G�����p�f=L�`����V`��Q888883338==pL�3--((((((#########(((((((---3338��u�[�BB��pk�[p3333--------3388B�������`��uf��p�����ۼ��z[���z==�L88333--#########((((-------388L�[����8G�u`��`883----------8Lf����V�uf��̎�V�pQG��`�V`V���kLG����G=3333333#########(((---------3GQ�z[V[fppk��p`VVzGu8-------388=B�z����Q����Lf��GGQ���f̷Qzf`f`�LL33333333#########((-----333888=B���zV���������Vk�B=8883333888=B��L�zQLƓ�puQLL���������k�[[Ʋ�LB==88833333########((--33333338==BGf�k�u[�`���Q��V���BB=888888===����fLQ��LQ����p�������p�p���k���LB===88888883######((-888888888=GBGQ�k��Q��ƨ���L��Qfu���LB====BBLk`�[[�`L����ۓ���������[[�z����k�LBB==88888888(((--38B�kBB`�����������V`�L`�f�QQ�VL�`k��f�z���k�uf�u������������z���fLQV���p��kGGBBB=888888==-3333338==Gz�fLGLf�Vk�zz�����̓���������uu��������������������������u��pV��fVLQ���k��[QGGGLB========333333338=BBGQ`�̨[VV��������������������������������������������u�����VQf�`V����̎��QLQ�GGBBBBBBGL333333338[VLQQ��������������������������������������������������u������[V�f���fu���u[`�VLGBBGGGLk�888====BBBBQ[����������������������������������������������������z�����k�[���u[�������`QLQQLLGQV��BBBGBGGGLLQ[u���������������������������������������������������u���۞pѓ��zf���������k[[pVV[fkf��3333333333333338==BBBBBBGLLLQQQQQQV[[kf````kuz�������������zf`[QBBBBBBB========88888888888888888==G(########((((((((((--8888888888888833338888==BBGLLLLLGBBBBBGGBBBB==83333333333333333----------------
\ No newline at end of file diff --git a/test/input/single-frame.pgm b/test/input/single-frame.pgm new file mode 100644 index 0000000..8b72fae --- /dev/null +++ b/test/input/single-frame.pgm @@ -0,0 +1,5 @@ +P5 +300 +300 +255 +������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������� |