first commit
add some base method