redesign, added ; support