tried to implement in thimble, ran into some incompletions. fixed those