some hihocode algorithms