Handle separate puzzle types better