function appendCircles(sel, args) {
sel
.append('line')
.attr('class', 'connect')
.attr('x1', d => x(d.due))
.attr('y1', d => y(d.cumSum))
.attr('x2', d => x(d.newDeadLine))
.attr('y2', d => y(d.cumSum))
.attr('stroke', 'blue')
.style('stroke-dasharray', [1, 5]);
sel
.append('line')
.attr('class', 'due')
.style('line', args.color)
.style('fill', args.fill)
.attr('x1', d => x(d.due))
.attr('y1', d => y(d.cumSum))
.attr('x2', d => x(d.due))
.attr('y2', d => y(d.cumSum - d.val * (1 - d.done / 100)))
.attr('stroke', 'red');
sel
.append('rect')
.attr('class', 'NDL')
.style('stroke', args.color)
.style('fill', args.fill)
.attr('x', d => x(d.newDeadLine))
.attr('y', d => y(d.cumSum))
.attr('width', 10)
.attr('height', d => y(0) - y(d.val * (1 - d.done / 100)));
}