added installation functionality