use SparseIntArray instead of SparseArray<Integer>
merge with ares
update version