finished data insertion functions