add Failure object
add more RAM related codes
locate dead loop
add changed()