add union/struct demo