Mark Hansen. programming & designing Upsolve