{"body":"16:45 <zvrba> manveru: yup, len is length in base-32 digits, then it iterates from the most significant digit, calculates which bits to extract and maps 5 bits at a time to a character\n16:45 <zvrba> i,j are byte and bit positions which to extract\n16:46 <manveru> ah, i forgot that you can go across array values in C...\n16:46 <zvrba> & 0x1f is necessary to mask out the high-order bits\n16:46 <clever> manveru: thats a std::string, so it wont segfault, it will instead throw an exception\n16:47 <zvrba> clever: operator[] doesn't throw an exception; .at() does.\n16:48 <zvrba> manveru: hash is a bitstring stored as contiguous array of 8-bit chars in memory. extract 5 bits at a time starting from the end, convert each 5 bits to a char, append them to a string.","name":"","extension":"txt","url":"https://www.irccloud.com/pastebin/CSMFOG7Q","modified":1462029231,"id":"CSMFOG7Q","size":759,"lines":7,"own_paste":false,"theme":"","date":1462029231}