recommented functions