# Tests the composite SVG filter primitive --- root: items: - type: stacking-context bounds: 0 0 0 0 filter-primitives: - type: flood color: yellow in: previous - type: offset offset: -50 -50 in: previous - type: composite in1: original in2: 1 operator: over items: - type: rect color: blue bounds: 60 60 100 100 - type: stacking-context bounds: 200 0 0 0 filter-primitives: - type: flood color: yellow in: previous - type: offset offset: -50 -50 in: previous - type: composite in1: original in2: 1 operator: in items: - type: rect color: blue bounds: 60 60 100 100 - type: stacking-context bounds: 400 0 0 0 filter-primitives: - type: flood color: yellow in: previous - type: offset offset: -50 -50 in: previous - type: composite in1: original in2: 1 operator: atop items: - type: rect color: blue bounds: 60 60 100 100 - type: stacking-context bounds: 600 0 0 0 filter-primitives: - type: flood color: yellow in: previous - type: offset offset: -50 -50 in: previous - type: composite in1: original in2: 1 operator: out items: - type: rect color: blue bounds: 60 60 100 100 - type: stacking-context bounds: 0 200 0 0 filter-primitives: - type: flood color: yellow in: previous - type: offset offset: -50 -50 in: previous - type: composite in1: original in2: 1 operator: xor items: - type: rect color: blue bounds: 60 60 100 100 - type: stacking-context bounds: 200 200 0 0 filter-primitives: - type: flood color: [255, 0, 0, 1.0] in: previous - type: offset offset: -50 -50 in: previous - type: composite in1: original in2: 1 operator: lighter items: - type: rect color: [0, 0, 255, 1.0] bounds: 60 60 100 100 - type: stacking-context bounds: 400 200 0 0 filter-primitives: - type: flood color: yellow in: previous - type: offset offset: -50 -50 in: previous - type: composite in1: original in2: 1 operator: arithmetic k-values: [0.5, 0.5, 0.5, 0] items: - type: rect color: blue bounds: 60 60 100 100