adding more interfaces.. changing stuff around