/*
Copyright (c) 1993-2008, Cognitive Technologies
All rights reserved.

Разрешается повторное распространение и использование как в виде исходного кода,
так и в двоичной форме, с изменениями или без, при соблюдении следующих условий:

      * При повторном распространении исходного кода должны оставаться указанное
        выше уведомление об авторском праве, этот список условий и последующий
        отказ от гарантий.
      * При повторном распространении двоичного кода в документации и/или в
        других материалах, поставляемых при распространении, должны сохраняться
        указанная выше информация об авторском праве, этот список условий и
        последующий отказ от гарантий.
      * Ни название Cognitive Technologies, ни имена ее сотрудников не могут
        быть использованы в качестве средства поддержки и/или продвижения
        продуктов, основанных на этом ПО, без предварительного письменного
        разрешения.

ЭТА ПРОГРАММА ПРЕДОСТАВЛЕНА ВЛАДЕЛЬЦАМИ АВТОРСКИХ ПРАВ И/ИЛИ ДРУГИМИ ЛИЦАМИ "КАК
ОНА ЕСТЬ" БЕЗ КАКОГО-ЛИБО ВИДА ГАРАНТИЙ, ВЫРАЖЕННЫХ ЯВНО ИЛИ ПОДРАЗУМЕВАЕМЫХ,
ВКЛЮЧАЯ ГАРАНТИИ КОММЕРЧЕСКОЙ ЦЕННОСТИ И ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ, НО НЕ
ОГРАНИЧИВАЯСЬ ИМИ. НИ ВЛАДЕЛЕЦ АВТОРСКИХ ПРАВ И НИ ОДНО ДРУГОЕ ЛИЦО, КОТОРОЕ
МОЖЕТ ИЗМЕНЯТЬ И/ИЛИ ПОВТОРНО РАСПРОСТРАНЯТЬ ПРОГРАММУ, НИ В КОЕМ СЛУЧАЕ НЕ
НЕСЁТ ОТВЕТСТВЕННОСТИ, ВКЛЮЧАЯ ЛЮБЫЕ ОБЩИЕ, СЛУЧАЙНЫЕ, СПЕЦИАЛЬНЫЕ ИЛИ
ПОСЛЕДОВАВШИЕ УБЫТКИ, СВЯЗАННЫЕ С ИСПОЛЬЗОВАНИЕМ ИЛИ ПОНЕСЕННЫЕ ВСЛЕДСТВИЕ
НЕВОЗМОЖНОСТИ ИСПОЛЬЗОВАНИЯ ПРОГРАММЫ (ВКЛЮЧАЯ ПОТЕРИ ДАННЫХ, ИЛИ ДАННЫЕ,
СТАВШИЕ НЕГОДНЫМИ, ИЛИ УБЫТКИ И/ИЛИ ПОТЕРИ ДОХОДОВ, ПОНЕСЕННЫЕ ИЗ-ЗА ДЕЙСТВИЙ
ТРЕТЬИХ ЛИЦ И/ИЛИ ОТКАЗА ПРОГРАММЫ РАБОТАТЬ СОВМЕСТНО С ДРУГИМИ ПРОГРАММАМИ,
НО НЕ ОГРАНИЧИВАЯСЬ ЭТИМИ СЛУЧАЯМИ), НО НЕ ОГРАНИЧИВАЯСЬ ИМИ, ДАЖЕ ЕСЛИ ТАКОЙ
ВЛАДЕЛЕЦ ИЛИ ДРУГОЕ ЛИЦО БЫЛИ ИЗВЕЩЕНЫ О ВОЗМОЖНОСТИ ТАКИХ УБЫТКОВ И ПОТЕРЬ.

Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:

    * Redistributions of source code must retain the above copyright notice,
      this list of conditions and the following disclaimer.
    * Redistributions in binary form must reproduce the above copyright notice,
      this list of conditions and the following disclaimer in the documentation
      and/or other materials provided with the distribution.
    * Neither the name of the Cognitive Technologies nor the names of its
      contributors may be used to endorse or promote products derived from this
      software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/


int bit_distance000(  char d[]){
return 0   ;
}
int bit_distance001(  char d[]){
return
sign[d[7] ]   ;
}
int bit_distance002(  char d[]){
return
sign[d[6] ]   ;
}
int bit_distance003(  char d[]){
return
sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance004(  char d[]){
return
sign[d[5] ]   ;
}
int bit_distance005(  char d[]){
return
sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance006(  char d[]){
return
sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance007(  char d[]){
return
sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance008(  char d[]){
return
sign[d[4] ]   ;
}
int bit_distance009(  char d[]){
return
sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance010(  char d[]){
return
sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance011(  char d[]){
return
sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance012(  char d[]){
return
sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance013(  char d[]){
return
sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance014(  char d[]){
return
sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance015(  char d[]){
return
sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance016(  char d[]){
return
sign[d[3] ]   ;
}
int bit_distance017(  char d[]){
return
sign[d[3] ]+sign[d[7] ]   ;
}
int bit_distance018(  char d[]){
return
sign[d[3] ]+sign[d[6] ]   ;
}
int bit_distance019(  char d[]){
return
sign[d[3] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance020(  char d[]){
return
sign[d[3] ]+sign[d[5] ]   ;
}
int bit_distance021(  char d[]){
return
sign[d[3] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance022(  char d[]){
return
sign[d[3] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance023(  char d[]){
return
sign[d[3] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance024(  char d[]){
return
sign[d[3] ]+sign[d[4] ]   ;
}
int bit_distance025(  char d[]){
return
sign[d[3] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance026(  char d[]){
return
sign[d[3] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance027(  char d[]){
return
sign[d[3] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance028(  char d[]){
return
sign[d[3] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance029(  char d[]){
return
sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance030(  char d[]){
return
sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance031(  char d[]){
return
sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance032(  char d[]){
return
sign[d[2] ]   ;
}
int bit_distance033(  char d[]){
return
sign[d[2] ]+sign[d[7] ]   ;
}
int bit_distance034(  char d[]){
return
sign[d[2] ]+sign[d[6] ]   ;
}
int bit_distance035(  char d[]){
return
sign[d[2] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance036(  char d[]){
return
sign[d[2] ]+sign[d[5] ]   ;
}
int bit_distance037(  char d[]){
return
sign[d[2] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance038(  char d[]){
return
sign[d[2] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance039(  char d[]){
return
sign[d[2] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance040(  char d[]){
return
sign[d[2] ]+sign[d[4] ]   ;
}
int bit_distance041(  char d[]){
return
sign[d[2] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance042(  char d[]){
return
sign[d[2] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance043(  char d[]){
return
sign[d[2] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance044(  char d[]){
return
sign[d[2] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance045(  char d[]){
return
sign[d[2] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance046(  char d[]){
return
sign[d[2] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance047(  char d[]){
return
sign[d[2] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance048(  char d[]){
return
sign[d[2] ]+sign[d[3] ]   ;
}
int bit_distance049(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[7] ]   ;
}
int bit_distance050(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[6] ]   ;
}
int bit_distance051(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance052(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[5] ]   ;
}
int bit_distance053(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance054(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance055(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance056(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[4] ]   ;
}
int bit_distance057(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance058(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance059(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance060(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance061(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance062(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance063(  char d[]){
return
sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance064(  char d[]){
return
sign[d[1] ]   ;
}
int bit_distance065(  char d[]){
return
sign[d[1] ]+sign[d[7] ]   ;
}
int bit_distance066(  char d[]){
return
sign[d[1] ]+sign[d[6] ]   ;
}
int bit_distance067(  char d[]){
return
sign[d[1] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance068(  char d[]){
return
sign[d[1] ]+sign[d[5] ]   ;
}
int bit_distance069(  char d[]){
return
sign[d[1] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance070(  char d[]){
return
sign[d[1] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance071(  char d[]){
return
sign[d[1] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance072(  char d[]){
return
sign[d[1] ]+sign[d[4] ]   ;
}
int bit_distance073(  char d[]){
return
sign[d[1] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance074(  char d[]){
return
sign[d[1] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance075(  char d[]){
return
sign[d[1] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance076(  char d[]){
return
sign[d[1] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance077(  char d[]){
return
sign[d[1] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance078(  char d[]){
return
sign[d[1] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance079(  char d[]){
return
sign[d[1] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance080(  char d[]){
return
sign[d[1] ]+sign[d[3] ]   ;
}
int bit_distance081(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[7] ]   ;
}
int bit_distance082(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[6] ]   ;
}
int bit_distance083(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance084(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[5] ]   ;
}
int bit_distance085(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance086(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance087(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance088(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[4] ]   ;
}
int bit_distance089(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance090(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance091(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance092(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance093(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance094(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance095(  char d[]){
return
sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance096(  char d[]){
return
sign[d[1] ]+sign[d[2] ]   ;
}
int bit_distance097(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[7] ]   ;
}
int bit_distance098(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[6] ]   ;
}
int bit_distance099(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance100(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[5] ]   ;
}
int bit_distance101(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance102(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance103(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance104(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[4] ]   ;
}
int bit_distance105(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance106(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance107(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance108(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance109(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance110(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance111(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance112(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]   ;
}
int bit_distance113(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[7] ]   ;
}
int bit_distance114(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[6] ]   ;
}
int bit_distance115(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance116(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[5] ]   ;
}
int bit_distance117(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance118(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance119(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance120(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]   ;
}
int bit_distance121(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance122(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance123(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance124(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance125(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance126(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance127(  char d[]){
return
sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance128(  char d[]){
return
sign[d[0] ]   ;
}
int bit_distance129(  char d[]){
return
sign[d[0] ]+sign[d[7] ]   ;
}
int bit_distance130(  char d[]){
return
sign[d[0] ]+sign[d[6] ]   ;
}
int bit_distance131(  char d[]){
return
sign[d[0] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance132(  char d[]){
return
sign[d[0] ]+sign[d[5] ]   ;
}
int bit_distance133(  char d[]){
return
sign[d[0] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance134(  char d[]){
return
sign[d[0] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance135(  char d[]){
return
sign[d[0] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance136(  char d[]){
return
sign[d[0] ]+sign[d[4] ]   ;
}
int bit_distance137(  char d[]){
return
sign[d[0] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance138(  char d[]){
return
sign[d[0] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance139(  char d[]){
return
sign[d[0] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance140(  char d[]){
return
sign[d[0] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance141(  char d[]){
return
sign[d[0] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance142(  char d[]){
return
sign[d[0] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance143(  char d[]){
return
sign[d[0] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance144(  char d[]){
return
sign[d[0] ]+sign[d[3] ]   ;
}
int bit_distance145(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[7] ]   ;
}
int bit_distance146(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[6] ]   ;
}
int bit_distance147(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance148(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[5] ]   ;
}
int bit_distance149(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance150(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance151(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance152(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[4] ]   ;
}
int bit_distance153(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance154(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance155(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance156(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance157(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance158(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance159(  char d[]){
return
sign[d[0] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance160(  char d[]){
return
sign[d[0] ]+sign[d[2] ]   ;
}
int bit_distance161(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[7] ]   ;
}
int bit_distance162(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[6] ]   ;
}
int bit_distance163(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance164(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[5] ]   ;
}
int bit_distance165(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance166(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance167(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance168(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[4] ]   ;
}
int bit_distance169(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance170(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance171(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance172(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance173(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance174(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance175(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance176(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]   ;
}
int bit_distance177(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[7] ]   ;
}
int bit_distance178(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[6] ]   ;
}
int bit_distance179(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance180(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[5] ]   ;
}
int bit_distance181(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance182(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance183(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance184(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]   ;
}
int bit_distance185(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance186(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance187(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance188(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance189(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance190(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance191(  char d[]){
return
sign[d[0] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance192(  char d[]){
return
sign[d[0] ]+sign[d[1] ]   ;
}
int bit_distance193(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[7] ]   ;
}
int bit_distance194(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[6] ]   ;
}
int bit_distance195(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance196(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[5] ]   ;
}
int bit_distance197(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance198(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance199(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance200(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[4] ]   ;
}
int bit_distance201(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance202(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance203(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance204(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance205(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance206(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance207(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance208(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]   ;
}
int bit_distance209(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[7] ]   ;
}
int bit_distance210(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[6] ]   ;
}
int bit_distance211(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance212(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[5] ]   ;
}
int bit_distance213(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance214(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance215(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance216(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[4] ]   ;
}
int bit_distance217(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance218(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance219(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance220(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance221(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance222(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance223(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance224(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]   ;
}
int bit_distance225(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[7] ]   ;
}
int bit_distance226(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[6] ]   ;
}
int bit_distance227(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance228(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[5] ]   ;
}
int bit_distance229(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance230(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance231(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance232(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[4] ]   ;
}
int bit_distance233(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance234(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance235(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance236(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance237(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance238(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance239(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance240(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]   ;
}
int bit_distance241(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[7] ]   ;
}
int bit_distance242(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[6] ]   ;
}
int bit_distance243(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance244(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[5] ]   ;
}
int bit_distance245(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance246(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance247(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance248(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]   ;
}
int bit_distance249(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[7] ]   ;
}
int bit_distance250(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]   ;
}
int bit_distance251(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[6] ]+sign[d[7] ]   ;
}
int bit_distance252(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]   ;
}
int bit_distance253(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[7] ]   ;
}
int bit_distance254(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]   ;
}
int bit_distance255(  char d[]){
return
sign[d[0] ]+sign[d[1] ]+sign[d[2] ]+sign[d[3] ]+sign[d[4] ]+sign[d[5] ]+sign[d[6] ]+sign[d[7] ]   ;
}

int (*bit_distance[])(  char d[])={
bit_distance000,
bit_distance001,
bit_distance002,
bit_distance003,
bit_distance004,
bit_distance005,
bit_distance006,
bit_distance007,
bit_distance008,
bit_distance009,
bit_distance010,
bit_distance011,
bit_distance012,
bit_distance013,
bit_distance014,
bit_distance015,
bit_distance016,
bit_distance017,
bit_distance018,
bit_distance019,
bit_distance020,
bit_distance021,
bit_distance022,
bit_distance023,
bit_distance024,
bit_distance025,
bit_distance026,
bit_distance027,
bit_distance028,
bit_distance029,
bit_distance030,
bit_distance031,
bit_distance032,
bit_distance033,
bit_distance034,
bit_distance035,
bit_distance036,
bit_distance037,
bit_distance038,
bit_distance039,
bit_distance040,
bit_distance041,
bit_distance042,
bit_distance043,
bit_distance044,
bit_distance045,
bit_distance046,
bit_distance047,
bit_distance048,
bit_distance049,
bit_distance050,
bit_distance051,
bit_distance052,
bit_distance053,
bit_distance054,
bit_distance055,
bit_distance056,
bit_distance057,
bit_distance058,
bit_distance059,
bit_distance060,
bit_distance061,
bit_distance062,
bit_distance063,
bit_distance064,
bit_distance065,
bit_distance066,
bit_distance067,
bit_distance068,
bit_distance069,
bit_distance070,
bit_distance071,
bit_distance072,
bit_distance073,
bit_distance074,
bit_distance075,
bit_distance076,
bit_distance077,
bit_distance078,
bit_distance079,
bit_distance080,
bit_distance081,
bit_distance082,
bit_distance083,
bit_distance084,
bit_distance085,
bit_distance086,
bit_distance087,
bit_distance088,
bit_distance089,
bit_distance090,
bit_distance091,
bit_distance092,
bit_distance093,
bit_distance094,
bit_distance095,
bit_distance096,
bit_distance097,
bit_distance098,
bit_distance099,
bit_distance100,
bit_distance101,
bit_distance102,
bit_distance103,
bit_distance104,
bit_distance105,
bit_distance106,
bit_distance107,
bit_distance108,
bit_distance109,
bit_distance110,
bit_distance111,
bit_distance112,
bit_distance113,
bit_distance114,
bit_distance115,
bit_distance116,
bit_distance117,
bit_distance118,
bit_distance119,
bit_distance120,
bit_distance121,
bit_distance122,
bit_distance123,
bit_distance124,
bit_distance125,
bit_distance126,
bit_distance127,
bit_distance128,
bit_distance129,
bit_distance130,
bit_distance131,
bit_distance132,
bit_distance133,
bit_distance134,
bit_distance135,
bit_distance136,
bit_distance137,
bit_distance138,
bit_distance139,
bit_distance140,
bit_distance141,
bit_distance142,
bit_distance143,
bit_distance144,
bit_distance145,
bit_distance146,
bit_distance147,
bit_distance148,
bit_distance149,
bit_distance150,
bit_distance151,
bit_distance152,
bit_distance153,
bit_distance154,
bit_distance155,
bit_distance156,
bit_distance157,
bit_distance158,
bit_distance159,
bit_distance160,
bit_distance161,
bit_distance162,
bit_distance163,
bit_distance164,
bit_distance165,
bit_distance166,
bit_distance167,
bit_distance168,
bit_distance169,
bit_distance170,
bit_distance171,
bit_distance172,
bit_distance173,
bit_distance174,
bit_distance175,
bit_distance176,
bit_distance177,
bit_distance178,
bit_distance179,
bit_distance180,
bit_distance181,
bit_distance182,
bit_distance183,
bit_distance184,
bit_distance185,
bit_distance186,
bit_distance187,
bit_distance188,
bit_distance189,
bit_distance190,
bit_distance191,
bit_distance192,
bit_distance193,
bit_distance194,
bit_distance195,
bit_distance196,
bit_distance197,
bit_distance198,
bit_distance199,
bit_distance200,
bit_distance201,
bit_distance202,
bit_distance203,
bit_distance204,
bit_distance205,
bit_distance206,
bit_distance207,
bit_distance208,
bit_distance209,
bit_distance210,
bit_distance211,
bit_distance212,
bit_distance213,
bit_distance214,
bit_distance215,
bit_distance216,
bit_distance217,
bit_distance218,
bit_distance219,
bit_distance220,
bit_distance221,
bit_distance222,
bit_distance223,
bit_distance224,
bit_distance225,
bit_distance226,
bit_distance227,
bit_distance228,
bit_distance229,
bit_distance230,
bit_distance231,
bit_distance232,
bit_distance233,
bit_distance234,
bit_distance235,
bit_distance236,
bit_distance237,
bit_distance238,
bit_distance239,
bit_distance240,
bit_distance241,
bit_distance242,
bit_distance243,
bit_distance244,
bit_distance245,
bit_distance246,
bit_distance247,
bit_distance248,
bit_distance249,
bit_distance250,
bit_distance251,
bit_distance252,
bit_distance253,
bit_distance254,
bit_distance255
};
