added algorithm and algorithmic package