working on general elements