add remove check
add do ref array check