new funciton

still development