did some work in modes and such