changed compiler and set implementation