add copy demo
test another kind of constructor