bitshifting done, mapencoding done, json done