fix size for union types
add mpc lib