added functions part2