add proxy marshall constructor
make post event protected