work in progres, cleans up the code
work in progres, cleans up the code