msg : add builder pattern