Suppose a byte-addressable memory contains 2MB and cache consists of 32 blocks, where each block contains 16 bytes, and it is 4-way set associative. Calculate the TAG, SET and WORD bit field sizes?