added open strings
remodularised