commiting a bunch of code from Umbra