unused functions removed