vl.markLine({tooltip: true, fill: 'white', opacity: 0.9, strokeWidth:2})
.encode(
vl.x().fieldT("week_ending_date").axis({grid:false}),
vl.y().fieldQ(vl.repeat("layer")).scale({range: [step, -overlap * step]}).axis(null).axis(false),
vl.color().datum(vl.repeat("layer")).scale({range:["#777", "steelblue"]}),
vl.detail().fieldN("state"),
)
.width(width*.7)
.height(step)
.repeat({layer: ["average_expected_count", "observed_number"]})
.facet(vl.facet()
.fieldN("state")
.spacing(0)
.header({title: null, labelPadding: 0, labelFontSize: 10,
labelOrient: "left",
labelAlign: "left",
labelAngle: 0,
labelBaseline: "bottom"})
.sort(vl.sum("observed_number").order("descending"))
)
.bounds('flush')
.padding(0)
.config({view: {stroke: null}})
.columns(1)
.data(data.filter(d => d.state!=="United States").slice(0,5000))
.config({"view": {"stroke": "transparent"}})
.render()