working codes!