Ukraine’s port of Mariupol holding out against all odds