added hash generation