The aggregate3 function and aggregate3Value function have same assembly block to revert but aggregate3Value revert with 0x84 length whereas aggregate3 revert with 0x64 length. I believe both should be 0x64. Although there shouldn't be any problem because in worst case scenario ( according to me ) only last 4 bytes will be dirty but even then as we're setting 0x17 to be length of the string "Multicall3: call failed" so extra bytes shouldn't be considered.