First thoughts: The first header must be on a page of its own; I don't see a flush here, perhaps shout is expecting strict compliance and is sucking down stream as fast as it can until it sees something it likes later? Second thought... which looping block does it appear to 'hang' in? Monty