after adding more functions