- By Benjamin && Edwin. Various bug fixed.