removed utility.* and only copied useful functions. if it runs correctly, definitive v0.1