debugging
start from 1