added canny package structure