def render(self, namespace):
        '''Render #for loop with given namespace.

        Note: we copy the namespace so the parsed variable is only
              available in nested objects within this #for loop.
        '''
        ns = namespace.copy()
        result = []
        for item in namespace[self._items]:
            ns[self._item] = item
            result.append(self._block.render(ns))
        return '\n'.join(result) if result else None