todo for .slate separation of concerns