some rudimentary changes... prob need to debug