seperated both codes