int replace by NSInteger