remove abstract. it's not needed.
@xingnan