var willChangeValues = [
    { 'property' : 'auto', 'stacking' : false },
    { 'property' : 'background', 'stacking' : false },
    { 'property' : 'will-change', 'stacking' : false },
    { 'property' : '-webkit-backface-visibility', 'stacking' : false },

    { 'property' : 'clip-path', 'stacking' : true },
    { 'property' : 'mask', 'stacking' : true },
    { 'property' : 'opacity', 'stacking' : true },
    { 'property' : 'position', 'stacking' : true },
    { 'property' : 'z-index', 'stacking' : true },
    { 'property' : 'mix-blend-mode', 'stacking' : true },
    { 'property' : 'isolation', 'stacking' : true },
    { 'property' : 'perspective', 'stacking' : true },
    { 'property' : 'transform', 'stacking' : true },
    { 'property' : 'transform-style', 'stacking' : true },

    { 'property' : '-webkit-filter', 'stacking' : true },
    { 'property' : '-webkit-clip-path', 'stacking' : true },
    { 'property' : '-webkit-box-reflect', 'stacking' : true },
    { 'property' : '-webkit-backdrop-filter', 'stacking' : true },
    { 'property' : '-webkit-mask', 'stacking' : true },
    { 'property' : '-webkit-mask-image', 'stacking' : true },
    { 'property' : '-webkit-mask-box-image', 'stacking' : true },
    { 'property' : '-webkit-transform', 'stacking' : true },
    { 'property' : '-webkit-transform-style', 'stacking' : true },
];

function makeStackingElement(stackingProperty, value)
{
    var container = document.createElement('div');
    container.className = 'container';

    var potentialStackingContext = document.createElement('div');
    potentialStackingContext.className = 'potential-stacking-context';
    potentialStackingContext.style[stackingProperty] = value;

    var child = document.createElement('div');
    child.className = 'child';
    potentialStackingContext.appendChild(child);

    container.appendChild(potentialStackingContext);

    var interposer = document.createElement('div');
    interposer.className = 'interposer';
    container.appendChild(interposer);
    
    document.body.appendChild(container);
}
