implement updating choice
implement delete choice
refactor
show warnings when compile code