feat: rename fragment to hash