trash codes but having some functionality