code: function(_binarray){
          var _index = 0,
              _result = [],
              _mode = _binarray.length%3;
          // this is for the padding
          if (_mode==1)
              _binarray.push(0,0);
          if (_mode==2)
              _binarray.push(0);
          // from here conversion
          while(_index<_binarray.length){
              _result.push(__b64char[_binarray[_index]>>2],
                           __b64char[((_binarray[_index]&3)<<4)|(_binarray[_index+1]>>4)],
                           __b64char[((_binarray[_index+1]&15)<<2)|(_binarray[_index+2]>>6)],
                           __b64char[_binarray[_index+2]&63]);
              _index += 3;
          }
          // this is again for the padding
          if (_mode == 1)
              _result[_result.length-1] =
              _result[_result.length-2] = '=';
          if (_mode == 2)
              _result[_result.length-1] = '=';
          // we join the array to return a textstring
          return _result.join('');
      }
docs: creates a base64 encoded text out of an array of byerepresenting dezimals it is really base64 :) this makes serversided handling easier expects an array; returns a string