import java.util.*

data class T(val from: Long, val to: Long) : Comparable<T> {
    override fun compareTo(other: T): Int {
        return if (from == other.from) return to.compareTo(other.to)
        else from.compareTo(other.from)
    }
}

fun main(args: Array<String>) {
    val list = ArrayList<T>()
    val n = readLine()!!.toInt()
    repeat(n) {
        val (a, b) = readLine()!!.split(" ").map { it.toLong() }
        list.add(T(a - b, a + b))
    }
    list.sort()

    var r = 1
    var prev = list[0]
    list.drop(1).forEach { now ->
        if (prev.to > now.from) {
            if (prev.to > now.to) prev = now
        } else {
            r++
            prev = now
        }
    }
    println(r)
}
