Nonsmooth Analysis