unfinished
tests are fixed
integration testing
clear strings stack on commit