made things non-const to get it to compile