Set-valued analysis