refactored to use the Insert class