basic puck return behavior works