to do
Upper semicontinuous functions