is(n) = {
	nf = n!; f = factor(nf); rf = cf = f; 
	rf[, 2] = f[,2]%6; 
	cf[, 2] = (f[,2] - rf[,2])\6; 
	d = divisors(factorback(cf)); 
	s = factorback(rf); 
	for(i = 1, #d, 
		if(isofform(s * d[i]^6), 
			return(1); 
		)	
	); 0
	
}

isofform(n) = {my(nf = n); \\print(n); 
	for(i = 1, sqrtnint(nf, 6), 
		for(j = 1, sqrtnint(nf - i^6, 3),
			if(issquare(nf - i^6 - j^3),
				return(1)
			)
		)
	); 0 
}