removed boost dependency