Almost finish my diploma thesis, left testing to be written