Added interface and a new package