added replacement functions