simulation really now, almost works