add a example program, not tested yet