add demo
add main method