This doesn't seem right as you don't redefine interact() anywhere else.