functions inserted