modifications made, but WORKS