visitor: roughly sketch it in