```YAML - name: First loop loop: {{ blaat }} register: loooped ... - name: Second loop loop: {{ loooped.results }} when: item.skipped is not defined ``` this loops over results of prior loop only but does not process any skipped results. In case the results array contains another array that we want to loop over, for example when we did a shell command in a loop we can use extract: ``` - name: Print magic ansible.builtin.debug: msg: "{{ ['stdout_lines'] | map('extract', item) }}" loop: "{{ magic.results }}" ``` A cool example of this in practice: ``` - name: Print blockpull command ansible.builtin.debug: msg: "virsh blockpull {{ ['stdout_lines'] | map('extract', item) | list | flatten | join(' ') }}" loop: "{{ domain_and_disk_paths.results }}" loop_control: label: "{{ inventory_hostname }}" ```