adding lots of new codes