added a couple of extra abstractions to lat?