make glowish to work recursivly and add size validation on result