But it’s a viral moment that speaks to so many things: lack of childcare. The drive to seek an education. And compassion from others.
With midterms looming, Wayne Hayer didn’t want to miss his algebra class Friday at Morehouse College in Atlanta and couldn’t find childcare for his five-month-old daughter. It was an important class, since they were reviewing content for the upcoming midterms.
So he brought her along.
A teacher sat in her car with a former student's baby so the new mom could attend a job fair

After Hayer explained his situation, Professor Nathan Alexander offered to hold little Assata and taught the rest of the class with the baby strapped to his chest.
Students in the class began posting images on social media showing the professor carrying the little girl. And a viral moment was born.
“My professor NATHAN ALEXANDER said ‘I’ll hold her so you can take good notes!'” one student said on Twitter. His post has been retweeted more than 70,000 times.
“It was this encounter that truly showed me the power and impact HBCU’s can have for the black community, for this professor to understand that life happens and sometimes there are just no ways around it,” another student posted on Facebook, using an acronym for historically black colleges and universities such as Morehouse.
The photos even reached Morehouse College President David Thomas, who tweeted, “This is about #love and #commitment. Loving our students and being committed to removing any barrier to their pursuit of excellence”

Professor: The girl ‘was really behaved’

It was the perfect storm of events that day for Hayer, 26. His wife, Firda, had errands to run, he had his class to attend and they couldn’t find a babysitter in time.
So Hayer threw his backpack on, strapped Assata into her carrier and the two adventured off to college.
“I was nervous to go to class,” Hayer, a senior majoring in kinesiology, told CNN. “Morehouse is an all-male college and seeing me with a baby strapped to me would make all eyes be on me.”
Hayer’s first class was canceled, so he and his daughter hung out in the student lounge while he did his coursework. His next class is when the viral moment happened.
That photo of a professor holding a student's baby while he taught? It's not the first time he's done that

That photo of a professor holding a student's baby while he taught? It's not the first time he's done that

Alexander told CNN that “part of my role and goal as educator is to provide opportunities for students. We work to build a community in class.”
Although Alexander is the one in the photo, he said the episode really shows the hard work that Hayer puts in every day.
“He works two jobs, is a full time student, is involved in leadership programs at school and is a parent,” the professor said. “This photo serves as a reminder of what parents have to do every day and how important it is to have affordable childcare.”
On top of it all, baby Assata was the perfect student and didn’t distract from the day’s lesson.
“She was really behaved and even started to fall asleep at the end,” said Alexander. “We had a bottle ready on standby, if needed. We enjoyed having her energy in class.”

1) The white man wave

So far, the Democratic 2020 presidential field has been historically diverse. But the next round of candidates to jump in could be decidedly less so.
This week, Vermont Sen. Bernie Sanders and Washington state Gov. Jay Inslee jumped into the race, and with others nearing a decision — Colorado Gov. John Hickenlooper, Ohio Sen. Sherrod Brown, former Rep. Beto O’Rourke, and former Vice President Joe Biden, to name a few — a primary that has thus far been driven by women and minorities could be joined by a wave of white male candidates.
As The New York Times’ Lisa Lerer notes, many of those waiting in the wings have more moderate track records than the candidates already in the race. They see that as an asset in the general election, which could lead to a new dynamic out on the campaign trail as Democrats wrestle with what they want their message to be.
“We’re going to see a more robust debate over what the Democrats want to be in the Trump era,” Lerer said.

2) Warren warning signs

From CNN chief national correspondent John King:
The first voting is still nearly a year away, so it is way, way, way too early to declare a candidacy in crisis.
But Massachusetts Sen. Elizabeth Warren does have a significant early problem, close to home.
In New Hampshire, to be precise, which holds the first-in-the-nation presidential primary and where candidates from neighboring Massachusetts are expected to do well.
The latest Granite State Poll, conducted by the University of New Hampshire, shows Warren with weak early numbers in the state, despite her aggressive early campaigning and her effort to set the policy pace in the Democratic field by releasing detailed plans on taxes, child care and more.
One issue for Warren is a face familiar to New Hampshire Democrats: Sen. Bernie Sanders is from neighboring Vermont and won the Granite State primary in 2016.
Plus, to be fair, the most significant number in the new poll, released Thursday, is this: only 5% of New Hampshire Democrats say they have definitely settled on a candidate.
So there is plenty of room to grow, for Warren and the others in the crowded Democratic field. But at the moment, her numbers are heading in the wrong direction.
When provided a list of Democrats who are candidates or likely to be candidates for the 2020 nomination, Warren placed fourth in the latest New Hampshire survey, trailing Sanders, Joe Biden and Kamala Harris. She ran third in the same poll in August.
Here’s the wrong direction part: Warren was the choice of 7% of New Hampshire Democrats in the latest poll; in August she garnered 17% support.
Other warning signs: only 3% of Granite State Democrats named Warren as the most likeable Democratic candidate. Joe Biden was cited most on that question — by 31% of Democrats. Warren placed sixth.
Plus, in a race where many Democrats list electability as a top concern, only 2% of New Hampshire Democratic voters named Warren as the candidate with the best chance to win the general election.
Warren did lead the field on one question: 13% of New Hampshire Democrats said they would not vote for Warren under any circumstances. Sanders was next on that question, at 8%.

3) Decision time for Senate Republicans

President Trump’s decision to declare a national emergency on the border is already facing a wave of legal challenges and opposition from Democrats, but it’s causing unease within the Republican Party as well.
Three Republicans in the Senate have already broken ranks and will vote for a Democrat-backed bill to block Trump’s declaration, and several others have expressed concern over the President’s move. If one more Republican votes with the Democrats, it would force Trump’s first-ever veto.
Speaking at CPAC, the President suggested that Republicans who break with him could face blowback, and as The Washington Post’s Toluse Olorunnipa reports, many are torn over how to proceed.
“This is something that’s splitting the party right before several Republican Senate members are likely to focus on their re-election campaigns,” Olorunnipa said, “and several of them are considering whether or not to stick with the President and potentially vote with him, or potentially break ranks” and risk a primary challenge.

4) The future of Democrats’ gun control agenda

This past week, Democrats in Congress passed the most substantive gun control legislation in decades. The two bills — which won some Republican backing — expanded federal background checks and extended the waiting period for gun purchases from three days to 10 days.
As CNN’s Phil Mattingly reports, Democrats saw those issues as “low-hanging fruit” that had the potential to get bipartisan support. But even those who want to push for even bigger changes say that might be it for the near future.
Democrats recognize that gun control is a hot button issue, with deep divides on both sides of the aisle over how to proceed, so Democratic leadership wants to take it slow as they move forward.
“They don’t want to do anything that’s going to lead to a loss,” Mattingly said. “So it will be a step-by-step process, something they want to keep on the front burner” even if no new action is taken in the near future.

5) Democrats’ unusual 2020 target: the filibuster

Democrats’ ambitious agenda in Congress could be stymied by that age-old Senate spoiler: the filibuster.
Staunch Republican opposition makes it unlikely that most of the major proposals put forth by House Democrats and 2020 hopefuls will be able to to surpass the 60-vote threshold needed in the Senate.
As a result, the AP’s Julie Pace reports, Democrats are increasingly looking at doing away with the filibuster if they retake the Senate — and in the meantime, pushing to make it an issue in the party’s 2020 primary.
“They don’t think these are proposals that could pass with a simple majority,” Pace said, “and so they’re really going to be trying to push throughout this primary for candidates to commit to at least considering doing away with the filibuster if they were to become president.”
“We will continue to conduct all of the diplomatic and consular functions previously performed by U.S. Embassy Jerusalem. We will also engage in a wide range of reporting, outreach, and programming in the West Bank and Gaza Strip, as well as with Palestinians in Jerusalem, through a U.S. Embassy Palestinian Affairs Unit (PAU), which will operate from our historic Agron Road location in Jerusalem,” State Department deputy spokesperson Robert Palladino said in a statement.
The State Department announced in October 2018 that it would fold the consulate — which provided diplomatic representation to the Palestinians — with the US Embassy in Jerusalem, creating “a single diplomatic mission.” The decision was condemned by Palestinian officials.
“This decision was driven by our global efforts to increase the efficiency and effectiveness of our diplomatic engagements and operations. It does not signal a change of U.S. policy on Jerusalem, the West Bank, or the Gaza Strip. As the President has stated, the United States continues to take no position on final status issues, including boundaries or borders,” Palladino said Sunday. “The specific boundaries of Israeli sovereignty in Jerusalem are subject to final status negotiations between the parties. The Administration remains fully committed to efforts to achieve a lasting and comprehensive peace that offers a brighter future to Israel and the Palestinians.”
“The dream is under attack. The dream is in danger,” said Democratic presidential hopeful and New Jersey Sen. Cory Booker.
Speaking in the historic Brown Chapel AME Church, where civil rights activists once assembled before their march over the Edmund Pettus Bridge, Booker said, “We have become a nation that is too adjusted to injustice, too content with the suffering of our neighbors, a nation that is too divided against ourselves.” 
On March 7, 1965, the day known as “Bloody Sunday,” peaceful demonstrators demanding voting rights for black people were met by violence from police. Seventeen people were injured, including future Democratic Rep. John Lewis. The incident helped pushed support for the Voting Rights Act, which passed later that year. 
“It’s time for us to defend the dream,” Booker said. “We must dream bigger dreams again in America that we can banish bigotry and heal hate and that we will elect leaders that know the only way to unite people. That is what it takes to make America great.”
Booker said “people want to make it just about the people in the highest offices of the land, people who traffic in hatred, people in offices that can’t even condemn Nazis or white supremacists” but said racism and injustice persist not only because of the “vitriolic words and violent actions of the bad people, but the appalling silence and inaction of the good people.”
Hillary Clinton, Vermont Sen. Bernie Sanders and Ohio Sen. Sherrod Brown also attended events in Selma to commemorate the historic demonstration. Sanders held his first official campaign rally on Saturday; Brown has said he is considering his own 2020 run. 
“We need to redouble our efforts for the 21st century civil rights movement,” Clinton said. “Don’t just come to Selma once a year. Don’t just walk across the bridge. Don’t just join hands and sing. We’ve got to get to work. And that means registering every person and it means persuading them, no matter how disappointed or discouraged they might be that their future depends on them showing up to vote.” 
Hillary Clinton: 'We are living through a full-fledged crisis in our democracy'

There has been growing concern among Democrats that in many states there have been concerted efforts to make it more difficult for minorities to vote, and that the Justice Department is not aggressively challenging them. 
Clinton referenced the governor’s race in Georgia and said former gubernatorial candidate Stacey Abrams “should be governor, leading that state right now.” Abrams, a Democrat, lost her election last year amid accusations of voter suppression of black voters in the state.  
“I was the first person who ran for President without the protection of the Voting Rights Act, and I will tell you it makes a really big difference,” Clinton said. 
Sanders said, “how sad it is that 54 years later,” after the Selma march, “we are still fighting for the right to vote.” In 1965, he said, “people were beaten and John Lewis was almost killed, to ask for what? The constitutional right to vote,” Sanders said, decrying the lack of progress. 
“It’s our turn to demand that we end all voter suppression in this country. And not only do we end voter suppression, but we make it easier for people to vote, not harder,” Sanders said. 
Clinton and Booker hugged and took a photo together at the morning event, while Clinton and Sanders, by contrast, former 2016 Democratic presidential primary rivals, briefly shook hands. Sanders did congratulate Clinton during his speech on an award she was being given later in the event.
“The President talks about being a populist, but real populism is never racist,” Brown said. “Real populism is never anti-Semitic. Real populism doesn’t divide people. Real populism doesn’t push some people down to lift others up.”
“I enjoy the practice of law and I look forward to coming back to Jones Day,” McGahn told CNN. “I’m going to practice law. No paid corporate speeches and no books, unlike some others who have worked in the White House.”
McGahn left his mark as White House counsel by focusing on nominating young conservatives to federal judgeships, a legacy for President Donald Trump’s presidency that will be felt for decades to come.
According to a source familiar with the situation, McGahn continues to engage in the judicial nominations process, most recently making calls in support of Neomi Rao, a controversial nominee to replace Supreme Court Justice Brett Kavanaugh on the powerful DC Circuit Court of Appeals.
McGahn called Sen. Josh Hawley, a Republican who had reservations about Rao, before the Senate Judiciary Committee voted last week, according to the source. Despite concerns expressed by several Republicans including Hawley, the Senate Judiciary Committee confirmed her nomination which will next be considered by the full Senate.
The Washington Post first reported McGahn’s return to Jones Day and advocacy on behalf of Neomi Rao.

1) The white man wave

So far, the Democratic 2020 presidential field has been historically diverse. But the next round of candidates to jump in could be decidedly less so.
This week, Vermont Sen. Bernie Sanders and Washington state Gov. Jay Inslee jumped into the race, and with others nearing a decision — Colorado Gov. John Hickenlooper, Ohio Sen. Sherrod Brown, former Rep. Beto O’Rourke, and former Vice President Joe Biden, to name a few — a primary that has thus far been driven by women and minorities could be joined by a wave of white male candidates.
As The New York Times’ Lisa Lerer notes, many of those waiting in the wings have more moderate track records than the candidates already in the race. They see that as an asset in the general election, which could lead to a new dynamic out on the campaign trail as Democrats wrestle with what they want their message to be.
“We’re going to see a more robust debate over what the Democrats want to be in the Trump era,” Lerer said.

2) Warren warning signs

From CNN chief national correspondent John King:
The first voting is still nearly a year away, so it is way, way, way too early to declare a candidacy in crisis.
But Massachusetts Sen. Elizabeth Warren does have a significant early problem, close to home.
In New Hampshire, to be precise, which holds the first-in-the-nation presidential primary and where candidates from neighboring Massachusetts are expected to do well.
The latest Granite State Poll, conducted by the University of New Hampshire, shows Warren with weak early numbers in the state, despite her aggressive early campaigning and her effort to set the policy pace in the Democratic field by releasing detailed plans on taxes, child care and more.
One issue for Warren is a face familiar to New Hampshire Democrats: Sen. Bernie Sanders is from neighboring Vermont and won the Granite State primary in 2016.
Plus, to be fair, the most significant number in the new poll, released Thursday, is this: only 5% of New Hampshire Democrats say they have definitely settled on a candidate.
So there is plenty of room to grow, for Warren and the others in the crowded Democratic field. But at the moment, her numbers are heading in the wrong direction.
When provided a list of Democrats who are candidates or likely to be candidates for the 2020 nomination, Warren placed fourth in the latest New Hampshire survey, trailing Sanders, Joe Biden and Kamala Harris. She ran third in the same poll in August.
Here’s the wrong direction part: Warren was the choice of 7% of New Hampshire Democrats in the latest poll; in August she garnered 17% support.
Other warning signs: only 3% of Granite State Democrats named Warren as the most likeable Democratic candidate. Joe Biden was cited most on that question — by 31% of Democrats. Warren placed sixth.
Plus, in a race where many Democrats list electability as a top concern, only 2% of New Hampshire Democratic voters named Warren as the candidate with the best chance to win the general election.
Warren did lead the field on one question: 13% of New Hampshire Democrats said they would not vote for Warren under any circumstances. Sanders was next on that question, at 8%.

3) Decision time for Senate Republicans

President Trump’s decision to declare a national emergency on the border is already facing a wave of legal challenges and opposition from Democrats, but it’s causing unease within the Republican Party as well.
Three Republicans in the Senate have already broken ranks and will vote for a Democrat-backed bill to block Trump’s declaration, and several others have expressed concern over the President’s move. If one more Republican votes with the Democrats, it would force Trump’s first-ever veto.
Speaking at CPAC, the President suggested that Republicans who break with him could face blowback, and as The Washington Post’s Toluse Olorunnipa reports, many are torn over how to proceed.
“This is something that’s splitting the party right before several Republican Senate members are likely to focus on their re-election campaigns,” Olorunnipa said, “and several of them are considering whether or not to stick with the President and potentially vote with him, or potentially break ranks” and risk a primary challenge.

4) The future of Democrats’ gun control agenda

This past week, Democrats in Congress passed the most substantive gun control legislation in decades. The two bills — which won some Republican backing — expanded federal background checks and extended the waiting period for gun purchases from three days to 10 days.
As CNN’s Phil Mattingly reports, Democrats saw those issues as “low-hanging fruit” that had the potential to get bipartisan support. But even those who want to push for even bigger changes say that might be it for the near future.
Democrats recognize that gun control is a hot button issue, with deep divides on both sides of the aisle over how to proceed, so Democratic leadership wants to take it slow as they move forward.
“They don’t want to do anything that’s going to lead to a loss,” Mattingly said. “So it will be a step-by-step process, something they want to keep on the front burner” even if no new action is taken in the near future.

5) Democrats’ unusual 2020 target: the filibuster

Democrats’ ambitious agenda in Congress could be stymied by that age-old Senate spoiler: the filibuster.
Staunch Republican opposition makes it unlikely that most of the major proposals put forth by House Democrats and 2020 hopefuls will be able to to surpass the 60-vote threshold needed in the Senate.
As a result, the AP’s Julie Pace reports, Democrats are increasingly looking at doing away with the filibuster if they retake the Senate — and in the meantime, pushing to make it an issue in the party’s 2020 primary.
“They don’t think these are proposals that could pass with a simple majority,” Pace said, “and so they’re really going to be trying to push throughout this primary for candidates to commit to at least considering doing away with the filibuster if they were to become president.”

‘ : “”},a.getDefinedParams = function(n, e) {return e.filter((function(e) {return n[e]})).reduce((function(e, t) {return r(e, (function(e, t, n) {t in e ? Object.defineProperty(e, t, {value: n,enumerable: !0,configurable: !0,writable: !0}) : e[t] = n;return e})({}, t, n[t]))}), {})},a.isValidMediaTypes = function(e) {var t = [“banner”, “native”, “video”];if (!Object.keys(e).every((function(e) {return (0,u.default)(t, e)})))return !1;if (e.video && e.video.context)return (0,u.default)([“instream”, “outstream”], e.video.context);return !0},a.getBidderRequest = function(e, t, n) {return (0,o.default)(e, (function(e) {return 0 > t / 4).toString(16) : ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, e)},a.getBidIdParameter = function(e, t) {return t && t[e] ? t[e] : “”},a.tryAppendQueryString = function(e, t, n) {return n ? e + (t + “=”) + encodeURIComponent(n) + “&” : e},a.parseQueryStringParameters = function(e) {var t = “”;for (var n in e)e.hasOwnProperty(n) && (t += n + “=” + encodeURIComponent(e[n]) + “&”);return t},a.transformAdServerTargetingObj = function(t) {return t && 0 ‘;return t += ‘‘},a.createTrackPixelIframeHtml = function(e) {var t = !(1 n ‘) : “”},a.getIframeDocument = function(e) {if (e) {var t = void 0;try {t = e.contentWindow ? e.contentWindow.document : e.contentDocument.document ? e.contentDocument.document : e.contentDocument} catch (e) {a.logError(“Cannot get iframe document”, e)}return t}},a.getValueString = function(e, t, n) {return null == t ? n : a.isStr(t) ? t : a.isNumber(t) ? t.toString() : void a.logWarn(“Unsuported type for param: ” + e + ” required type: String”)};a.getHighestCpm = U(“timeToRespond”, (function(e, t) {return t = u.syncsPerBidder)return c.logWarn(‘Number of user syncs exceeded for “‘ + t + ‘”‘);if (u.filterSettings) {if (function(e, t) {var n = u.filterSettings;if (function(e, t) {if (e.all && e[t])return c.logWarn(‘Detected presence of the “filterSettings.all” and “filterSettings.’ + t + ‘” in userSync config. You cannot mix “all” with “iframe/image” configs; they are mutually exclusive.’),!1;var n = e.all ? e.all : e[t], r = e.all ? “all” : t;if (!n)return !1;var i = n.filter, o = n.bidders;if (i && “include” !== i && “exclude” !== i)return c.logWarn(‘UserSync “filterSettings.’ + r + “.filter” setting ‘” + i + “‘ is not a valid option; use either ‘include’ or ‘exclude’.”),!1;return !!(“*” === o || Array.isArray(o) && 0 n n n prebid.org wrappern n ” + (n ? “” : “”) + “n n n n “),ttlseconds: Number(e.ttl)}}},23: function(e, t) {var n = {}.toString;e.exports = function(e) {return n.call(e).slice(8, -1)}},24: function(e, t) {e.exports = function(e) {if (null == e)throw TypeError(“Can’t call method on ” + e);return e}},25: function(e, t, n) {var r = n(60)(“wks”), i = n(62), o = n(19).Symbol, a = “function” == typeof o;(e.exports = function(e) {return r[e] || (r[e] = a && o[e] || (a ? o : i)(“Symbol.” + e))}).store = r},26: function(e, t) {e.exports = function() {}},27: function(e, t, n) {“use strict”;Object.defineProperty(t, “__esModule”, {value: !0}),t.default = function(e) {var t = e;return {callBids: function() {},setBidderCode: function(e) {t = e},getBidderCode: function() {return t}}}},28: function(e, t, n) {“use strict”;var r, i = n(7), o = (r = i) && r.__esModule ? r : {default: r}, a = (function(e) {{if (e && e.__esModule)return e;var t = {};if (null != e)for (var n in e)Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);return t.default = e,t}})(n(0));var d = {}, u = [“criteo”];function s(e, t) {var n = document.createElement(“script”);n.type = “text/javascript”,n.async = !0,t && “function” == typeof t && (n.readyState ? n.onreadystatechange = function() {“loaded” !== n.readyState && “complete” !== n.readyState || (n.onreadystatechange = null,t())}: n.onload = function() {t()}),n.src = e;var r = document.getElementsByTagName(“head”);(r = r.length ? r : document.getElementsByTagName(“body”)).length && (r = r[0]).insertBefore(n, r.firstChild)}t.loadExternalScript = function(e, t) {if (t && e)if ((0,o.default)(u, t)) {if (!d[e]) {a.logWarn(“module ” + t + ” is loading external JavaScript”);var n = document.createElement(“script”);n.type = “text/javascript”,n.async = !0,n.src = e,a.insertElement(n),d[e] = !0}} else a.logError(t + ” not whitelisted for loading external JavaScript”);else a.logError(“cannot load external script without url and moduleCode”)},t.loadScript = function(t, e, n) {t ? n ? d[t] ? e && “function” == typeof e && (d[t].loaded ? e() : d[t].callbacks.push(e)) : (d[t] = {loaded: !1,callbacks: []},e && “function” == typeof e && d[t].callbacks.push(e),s(t, (function() {d[t].loaded = !0;try {for (var e = 0; e t.max ? e : t}), {max: 0}), p = (0,v.default)(e.buckets, (function(e) {if (n > g.max * r) {var t = e.precision;void 0 === t && (t = y),i = (e.max * r).toFixed(t)} else if (n = e.min * r)return e}));return p && (t = n,a = r,d = void 0 !== (o = p).precision ? o.precision : y,u = o.increment * a,s = o.min * a,c = Math.pow(10, d + 2),f = (t * c – s * c) / (u * c),l = Math.floor(f) * u + s,i = (l = Number(l.toFixed(10))).toFixed(d)),i}function m(e) {if (o.isEmpty(e) || !e.buckets || !Array.isArray(e.buckets))return !1;var t = !0;return e.buckets.forEach((function(e) {void 0 !== e.min && e.max && e.increment || (t = !1)})),t}t.getPriceBucketString = function(e, t) {var n = 2 (0,S.timestamp)()},function(e) {return e && (e.status && !(0,A.default)([C.BID_STATUS.BID_TARGETING_SET, C.BID_STATUS.RENDERED], e.status) || !e.status)});function U(e, n) {var r = [], i = (0,S.groupBy)(e, “adUnitCode”);return Object.keys(i).forEach((function(e) {var t = (0,S.groupBy)(i[e], “bidderCode”);Object.keys(t).forEach((function(e) {return r.push(t[e].reduce(n))}))})),r}function u(n) {var g = {};function p(e) {return “string” == typeof e ? [e] : w.isArray(e) ? e : n.getAdUnitCodes() || []}function v() {return U(n.getBidsReceived().filter((function(e) {return “banner” !== e.mediaType || (0,a.sizeSupported)([e.width, e.height])})).filter(d).filter(t.isBidNotExpired), S.getOldestHighestCpmBid)}function y() {return n.getStandardBidderAdServerTargeting().map((function(e) {return e.key})).concat(R).filter(S.uniques)}function m(r, i, e, t) {return Object.keys(i.adserverTargeting).filter(o()).forEach((function(e) {var t, n;r.length && r.filter((n = e,function(e) {return e.adUnitCode === i.adUnitCode && e.adserverTargeting[n]})).forEach((t = e,function(e) {w.isArray(e.adserverTargeting[t]) || (e.adserverTargeting[t] = [e.adserverTargeting[t]]),e.adserverTargeting[t] = e.adserverTargeting[t].concat(i.adserverTargeting[t]).filter(S.uniques),delete i.adserverTargeting[t]}))})),r.push(i),r}function o() {var t = y();return function(e) {return -1 === t.indexOf(e)}}function b(t) {return _({}, t.adUnitCode, Object.keys(t.adserverTargeting).filter(o()).map((function(e) {return _({}, e.substring(0, O), [t.adserverTargeting[e]])})))}return g.resetPresetTargeting = function(e) {if ((0,S.isGptPubadsDefined)()) {var t = p(e), r = n.getAdUnits().filter((function(e) {return (0,A.default)(t, e.code)}));window.googletag.pubads().getSlots().forEach((function(n) {B.forEach((function(t) {r.forEach((function(e) {e.code !== n.getAdUnitPath() && e.code !== n.getSlotElementId() || n.setTargeting(t, null)}))}))}))}},g.getAllTargeting = function(e) {var r, t, i, n, o, a, d, u, s, c = 1 i && (r = !1)),!r})),r && e.run(),r}function u(e, t) {void 0 === e[t] ? e[t] = 1 : e[t]++}},addWinningBid: function(e) {o = o.concat(e),R.callBidWonBidder(e.bidder, e, f)},setBidTargeting: function(e) {R.callSetTargetingBidder(e.bidder, e)},getWinningBids: function() {return o},getTimeout: function() {return E},getAuctionId: function() {return m},getAuctionStatus: function() {return b},getAdUnits: function() {return s},getAdUnitCodes: function() {return l},getBidRequests: function() {return g},getBidsReceived: function() {return p}}},t.auctionCallbacks = W,t.getStandardBidderSettings = d,t.getKeyValueTargetingPairs = V,t.adjustBids = s;var _ = n(0), h = n(31), i = n(17), S = n(228), E = n(12), w = n(3), r = n(18), o = n(20), T = a(n(10)), C = a(n(7)), A = n(41);function a(e) {return e && e.__esModule ? e : {default: e}}var B = r.userSync.syncUsers, O = n(0), R = n(8), U = n(9), N = n(4), D = t.AUCTION_STARTED = “started”, j = t.AUCTION_IN_PROGRESS = “inProgress”, P = t.AUCTION_COMPLETED = “completed”;U.on(N.EVENTS.BID_ADJUSTMENT, (function(e) {s(e)}));var k = 4, x = {}, M = {}, G = [];var q = t.addBidResponse = (0,o.createHook)(“asyncSeries”, (function(e, t) {this.auctionAddBidResponse(e, t)}), “addBidResponse”);function W(e, p) {var v = 0, t = !1, n = (0,_.delayExecution)((function() {t = !0}), p.getBidRequests().length);function y() {v–,t && 0 === v && e()}return {addBidResponse: function(e, t) {v++;var n = p.getBidRequests(), r = p.getAuctionId(), i = (0,_.getBidderRequest)(n, t.bidderCode, e), o = (function(e) {var t = e.adUnitCode, n = e.bid, r = e.bidRequest, i = e.auctionId, o = r.start, a = b({}, n, {auctionId: i,responseTimestamp: (0,_.timestamp)(),requestTimestamp: o,cpm: parseFloat(n.cpm) || 0,bidder: n.bidderCode,adUnitCode: t});a.timeToRespond = a.responseTimestamp – a.requestTimestamp,U.emit(N.EVENTS.BID_ADJUSTMENT, a);var d = r.bids && (0,T.default)(r.bids, (function(e) {return e.adUnitCode == t})), u = d && d.renderer;u && u.url && (a.renderer = E.Renderer.install({url: u.url}),a.renderer.setRender(u.render));var s, c = w.config.getConfig(“mediaTypePriceGranularity.” + n.mediaType), f = (0,h.getPriceBucketString)(a.cpm, “object” === (void 0 === c ? “undefined” : m(c)) ? c : w.config.getConfig(“customPriceBucket”), w.config.getConfig(“currency.granularityMultiplier”));return a.pbLg = f.low,a.pbMg = f.med,a.pbHg = f.high,a.pbAg = f.auto,a.pbDg = f.dense,a.pbCg = f.custom,a.bidderCode && (0 e.getTimeout() + w.config.getConfig(“timeoutBuffer”) && e.executeCallback(!0)}function z(e, t) {U.emit(N.EVENTS.BID_RESPONSE, t),e.addBidReceived(t),I(e, t)}function d(e) {var t = w.config.getConfig(“mediaTypePriceGranularity.” + e), n = “string” == typeof e && t ? “string” == typeof t ? t : “custom” : w.config.getConfig(“priceGranularity”), r = pbjs.bidderSettings;return r[N.JSON_MAPPING.BD_SETTING_STANDARD] || (r[N.JSON_MAPPING.BD_SETTING_STANDARD] = {}),r[N.JSON_MAPPING.BD_SETTING_STANDARD][N.JSON_MAPPING.ADSERVER_TARGETING] || (r[N.JSON_MAPPING.BD_SETTING_STANDARD][N.JSON_MAPPING.ADSERVER_TARGETING] = [{key: N.TARGETING_KEYS.BIDDER,val: function(e) {return e.bidderCode}}, {key: N.TARGETING_KEYS.AD_ID,val: function(e) {return e.adId}}, {key: N.TARGETING_KEYS.PRICE_BUCKET,val: function(e) {return n === N.GRANULARITY_OPTIONS.AUTO ? e.pbAg : n === N.GRANULARITY_OPTIONS.DENSE ? e.pbDg : n === N.GRANULARITY_OPTIONS.LOW ? e.pbLg : n === N.GRANULARITY_OPTIONS.MEDIUM ? e.pbMg : n === N.GRANULARITY_OPTIONS.HIGH ? e.pbHg : n === N.GRANULARITY_OPTIONS.CUSTOM ? e.pbCg : void 0}}, {key: N.TARGETING_KEYS.SIZE,val: function(e) {return e.size}}, {key: N.TARGETING_KEYS.DEAL,val: function(e) {return e.dealId}}, {key: N.TARGETING_KEYS.SOURCE,val: function(e) {return e.source}}, {key: N.TARGETING_KEYS.FORMAT,val: function(e) {return e.mediaType}}]),r[N.JSON_MAPPING.BD_SETTING_STANDARD]}function V(e, t) {if (!t)return {};var n = {}, r = pbjs.bidderSettings;r && (u(n, d(t.mediaType), t),e && r[e] && r[e][N.JSON_MAPPING.ADSERVER_TARGETING] && (u(n, r[e], t),t.sendStandardTargeting = r[e].sendStandardTargeting));return t.native && (n = b({}, n, (0,i.getNativeTargeting)(t))),n}function u(r, i, o) {var e = i[N.JSON_MAPPING.ADSERVER_TARGETING];return o.size = o.getSize(),O._each(e, (function(e) {var t = e.key, n = e.val;if (r[t] && O.logWarn(“The key: ” + t + ” is getting ovewritten”),O.isFn(n))try {n = n(o)} catch (e) {O.logError(“bidmanager”, “ERROR”, e)}(void 0 === i.suppressEmptyKeys || !0 !== i.suppressEmptyKeys) && t !== N.TARGETING_KEYS.DEAL || !O.isEmptyStr(n) && null != n ? r[t] = n : O.logInfo(“suppressing empty key ‘” + t + “‘ from adserver targeting”)})),r}function s(e) {var t = e.bidderCode, n = e.cpm, r = void 0;if (pbjs.bidderSettings && (t && pbjs.bidderSettings[t] && “function” == typeof pbjs.bidderSettings[t].bidCpmAdjustment ? r = pbjs.bidderSettings[t].bidCpmAdjustment : pbjs.bidderSettings[N.JSON_MAPPING.BD_SETTING_STANDARD] && “function” == typeof pbjs.bidderSettings[N.JSON_MAPPING.BD_SETTING_STANDARD].bidCpmAdjustment && (r = pbjs.bidderSettings[N.JSON_MAPPING.BD_SETTING_STANDARD].bidCpmAdjustment),r))try {n = r(e.cpm, b({}, e))} catch (e) {O.logError(“Error during bid adjustment”, “bidmanager.js”, e)}0 (eg mediaTypes.banner.sizes).”), e.sizes = n);if (t && t.video) {var i = t.video;if (i.playerSize)if (Array.isArray(i.playerSize) && 1 === i.playerSize.length && i.playerSize.every(d)) e.sizes = i.playerSize;else if (d(i.playerSize)) {var o = [];o.push(i.playerSize),w.logInfo(“Transforming video.playerSize from ” + i.playerSize + ” to ” + o + ” so it’s in the proper format.”),e.sizes = i.playerSize = o} else w.logError(“Detected incorrect configuration of mediaTypes.video.playerSize. Please specify only one set of dimensions in a format like: [[640, 480]]. Removing invalid mediaTypes.video.playerSize property from request.”), delete e.mediaTypes.video.playerSize}if (t && t.native) {var a = t.native;a.image && a.image.sizes && !Array.isArray(a.image.sizes) && (w.logError(“Please use an array of sizes for native.image.sizes field. Removing invalid mediaTypes.native.image.sizes property from request.”),delete e.mediaTypes.native.image.sizes),a.image && a.image.aspect_ratios && !Array.isArray(a.image.aspect_ratios) && (w.logError(“Please use an array of sizes for native.image.aspect_ratios field. Removing invalid mediaTypes.native.image.aspect_ratios property from request.”),delete e.mediaTypes.native.image.aspect_ratios),a.icon && a.icon.sizes && !Array.isArray(a.icon.sizes) && (w.logError(“Please use an array of sizes for native.icon.sizes field. Removing invalid mediaTypes.native.icon.sizes property from request.”),delete e.mediaTypes.native.icon.sizes)}})),e},h.callBids = function(e, t, r, i, o, a) {if (t.length) {var n = t.reduce((function(e, t) {return e[Number(void 0 !== t.src && t.src === C.S2S.SRC)].push(t),e}), [[], []]), d = b(n, 2), u = d[0], s = d[1];if (s.length) {var c = (0,E.ajaxBuilder)(a, o ? {request: o.request.bind(null, “s2s”),done: o.done} : void 0), f = U.bidders, l = R[U.adapter], g = s[0].tid, p = s[0].adUnitsS2SCopy;if (l) {var v = {tid: g,ad_units: p};if (v.ad_units.length) {var y = s.map((function(e) {return e.start = (0,S.timestamp)(),i})), m = v.ad_units.reduce((function(e, t) {return e.concat((t.bids || []).reduce((function(e, t) {return e.concat(t.bidder)}), []))}), []);w.logMessage(“CALLING S2S HEADER BIDDERS ==== ” + f.filter((function(e) {return (0,A.default)(m, e)})).join(“,”)),s.forEach((function(e) {B.emit(C.EVENTS.BID_REQUESTED, e)})),l.callBids(v, s, r, (function() {return y.forEach((function(e) {return e()}))}), c)}}}u.forEach((function(e) {e.start = (0,S.timestamp)();var t = R[e.bidderCode];w.logMessage(“CALLING BIDDER ======= ” + e.bidderCode),B.emit(C.EVENTS.BID_REQUESTED, e);var n = (e.doneCbCallCount = 0,E.ajaxBuilder)(a, o ? {request: o.request.bind(null, e.bidderCode),done: o.done} : void 0);t.callBids(e, r, i, n)}))} else w.logWarn(“callBids executed with no bidRequests. Were they filtered by labels or sizing?”)},h.videoAdapters = [],h.registerBidAdapter = function(e, t) {var n = (2 n

n

nx3c!– Rubicon Project Ad Tag –x3en

n

n

n

It’s not a label he was willing to use, he said.
The case was thrust into the headlines because of the promise of big-name “johns,” including, allegedly, New England Patriots owner Robert Kraft, who pleaded not guilty Thursday to soliciting prostitution at the Orchids of Asia Day Spa in Jupiter.
But it also highlights what Snyder said was a multinational trafficking ring stretching from China to New York to Florida.
Hence, Snyder’s insistence that the women were not prostitutes.
“It was clear to us that this was a trafficking case because of the circumstances I enumerated: They’re not leaving, they’re there 24 hours a day, the hygiene was minimal at best, just a bathroom,” he said. “So we took it upon ourselves to not do what could be the easy way out … and we turned it into a trafficking case.”
What’s the difference? Agency, for one. A prostitute, at some point, made a decision to engage in sex work, while sex trafficking victims are forced, tricked or coerced into working, said former federal prosecutor Susan Coppedge, who served as an ambassador-at-large under President Barack Obama to combat human trafficking.
“You don’t have free will in making your decision,” she said.
Here are some things to know about sex trafficking:

Federal law on sex trafficking is clear

If someone 18 or older is providing sex services as a product of force, fraud or coercion, Coppedge said, they’re not working by choice, even if they’re making money. There is no such requirement for minors, as minors cannot consent.
Force is physical. Fraud is lying. Coercion may involve threatening family members back home or convincing a victim she or he will be deported or arrested if she doesn’t do as she’s told. There is also debt bondage, Coppedge said, where a victim agrees to pay an exorbitant amount of money to come to the United States. Once in the country, she or he has no means to pay it back.
Help victims of sex trafficking start new lives

According to the International Labor Organization, poorer households — whose members may have fewer employment opportunities because of low levels of education and literacy — are less capable of withstanding disruptions in income, especially if they affect the ability to buy food.
“In the presence of such shocks, men and women without social protection nets tend to borrow to smooth consumption, and to accept any job for themselves or their children, even under exploitative conditions. This can lead to heavy dependence on creditors, recruiters and unscrupulous employers,” the organization says.
In the Florida case, Snyder said, “The coercion is not that they’re at gunpoint. The coercion is more subtle, nuanced and more difficult to discern. They may have loved ones in China and they’re afraid if they cooperate. They look at the police here as their enemy.”

Sex trafficking has many forms

Polaris, a group that combats human trafficking, estimates there are at least 7,000 storefronts like Orchids of Asia in the US. But day spas are not the only means traffickers have of peddling people for sexual services.
There are also escort services, pornography operations, bars, strip clubs, cantinas and employers who operate sex webcams and phone sex lines, Polaris says.
In some cases, a victim is sold outright, “often by her family to settle a drug debt, to an individual buyer for the explicit purpose of engaging in periodic sex acts over a long period of time. It can also occur within a commercial non-consenting marriage situation,” according to Polaris.
Traffickers may also employ social media, dating sites and online ads to lure victims, End Slavery Now says.
Coppedge said she once prosecuted a case involving a Mexican sex trafficking ring that was delivering women to homes for 15-minute increments. The women were forced to engage in sex acts as often as 30 to 40 times a day, she said.

Runaways, immigrants and drug users are more at risk

Sex trafficking victims are overwhelmingly women. Victims and survivors tend to come from poorer households, but other factors may elevate their vulnerability to trafficking schemes.
Runaways, homeless youth, recent immigrants, minors among the LGBT community, drug users and those living in foster care are particularly at risk, experts says. Victims who have experienced previous sexual abuse also are more vulnerable, they say.
In 2013, victims in the United States most commonly hailed from El Salvador, Guatemala, Honduras, India, Mexico, the Philippines and Thailand, says End Slavery Now, an anti-trafficking group.
Traffickers often target their own countrymen and women, Coppedge said, explaining that a knowledge of their common culture provides traffickers with additional leverage on potential victims.
“You tend to traffic your own,” the former prosecutor said. “You tend to bring in and traffic people that are of your background because know how to pressure them.”
Example: Minnesota, Texas and Arizona topped the 2017 federal ranking for human trafficking offenses — not necessarily because they have the most human trafficking but because these are states where law enforcement brought the most cases that year.
In Minnesota, which has a significant Thai population, the 2017 numbers were fueled in part by the bust of a Thai trafficking ring that was bringing Thai victims into the country, where Arizona and Texas had similar busts within their Mexican and Central American communities. Minnesota authorities have also busted trafficking rings among the state’s heavy Somali population.

There are signs that someone is being sex trafficked

Aside from the indications Snyder laid out, the women may tell people they’re just visiting or may not know their home address. They could have little knowledge of the city they’re in.
They may also lack a sense of time or provide scripted or inconsistent stories about their circumstances, according to Polaris.
The women are often young or middle-aged, underpaid or unpaid, have few or no possessions or work long hours without breaks, the organization says. They may also show outward signs of abuse, poor hygiene, malnourishment or fatigue, Polaris says.
“If you’re going to an Asian massage parlor, there’s a chance that someone is not there willingly,” Coppedge said. “Most people don’t need a massage at 4 a.m. … It’s not rocket science when it comes to the massage parlors.”
Lessors and community members can do their part by knowing the signatures of trafficking and notifying law enforcement, she said. Those might include a level of security incongruous to the business: opaque windows, bars or boards over the windows, barbed wire or security cameras.
The Florida case came together after a state health inspector saw signs that women were living at the Orchids of Asia Day Spa.

Sex trafficking is hugely profitable

Snyder said investigators had seized at least $2 million in assets just from the Florida trafficking ring. But he also said the probe was just the “tip of the tip of the iceberg.”
While people forced into sex work represent just a fraction of human trafficking victims, they generate almost two-thirds of the world’s human trafficking profits.
That’s $99 billion of $150 billion, despite that the 16 million victims of forced labor more than triples the number of people (4.8 million) who are forced into sex work, the International Labor Organization says.
The profits derived from people trafficked for construction, mining and manufacturing is $34 billion and for agriculture $9 billion, the ILO says.

It’s also tough to prosecute

Worldwide, there were 17,800 prosecutions of human trafficking suspects in 2017, resulting in 7,045 convictions, the US State Department says.
The prosecutions identified 100,409 victims, which may sound like a lot. But in reality, it’s a little more than .0004% of the ILO’s estimated 24.9 million human trafficking victims across the globe.
If it’s difficult to envision that fraction, that’s because the figure is remarkably tiny. Imagine a pizza pie cut it into 100 slices. Now, take one of those slivers of pizza and chop it into 400. That is what 100,409 victims represent in the overall scheme of human trafficking, according to experts.
Law enforcement investigations into sex trafficking are hugely time- and resource-intensive, experts say. They also can fall on undermanned police departments that, especially in major metropolises, are stretched thin.
The number of convictions appear to be on the rise, though, as campaigns and organizations push to heighten awareness of the issue. In 2011, the State Department reported 3,969 convictions with 42,291 identified victims — less than half the victims identified in 2017.

‘ : “”},a.getDefinedParams = function(n, e) {return e.filter((function(e) {return n[e]})).reduce((function(e, t) {return r(e, (function(e, t, n) {t in e ? Object.defineProperty(e, t, {value: n,enumerable: !0,configurable: !0,writable: !0}) : e[t] = n;return e})({}, t, n[t]))}), {})},a.isValidMediaTypes = function(e) {var t = [“banner”, “native”, “video”];if (!Object.keys(e).every((function(e) {return (0,u.default)(t, e)})))return !1;if (e.video && e.video.context)return (0,u.default)([“instream”, “outstream”], e.video.context);return !0},a.getBidderRequest = function(e, t, n) {return (0,o.default)(e, (function(e) {return 0 > t / 4).toString(16) : ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, e)},a.getBidIdParameter = function(e, t) {return t && t[e] ? t[e] : “”},a.tryAppendQueryString = function(e, t, n) {return n ? e + (t + “=”) + encodeURIComponent(n) + “&” : e},a.parseQueryStringParameters = function(e) {var t = “”;for (var n in e)e.hasOwnProperty(n) && (t += n + “=” + encodeURIComponent(e[n]) + “&”);return t},a.transformAdServerTargetingObj = function(t) {return t && 0 ‘;return t += ‘‘},a.createTrackPixelIframeHtml = function(e) {var t = !(1 n ‘) : “”},a.getIframeDocument = function(e) {if (e) {var t = void 0;try {t = e.contentWindow ? e.contentWindow.document : e.contentDocument.document ? e.contentDocument.document : e.contentDocument} catch (e) {a.logError(“Cannot get iframe document”, e)}return t}},a.getValueString = function(e, t, n) {return null == t ? n : a.isStr(t) ? t : a.isNumber(t) ? t.toString() : void a.logWarn(“Unsuported type for param: ” + e + ” required type: String”)};a.getHighestCpm = U(“timeToRespond”, (function(e, t) {return t = u.syncsPerBidder)return c.logWarn(‘Number of user syncs exceeded for “‘ + t + ‘”‘);if (u.filterSettings) {if (function(e, t) {var n = u.filterSettings;if (function(e, t) {if (e.all && e[t])return c.logWarn(‘Detected presence of the “filterSettings.all” and “filterSettings.’ + t + ‘” in userSync config. You cannot mix “all” with “iframe/image” configs; they are mutually exclusive.’),!1;var n = e.all ? e.all : e[t], r = e.all ? “all” : t;if (!n)return !1;var i = n.filter, o = n.bidders;if (i && “include” !== i && “exclude” !== i)return c.logWarn(‘UserSync “filterSettings.’ + r + “.filter” setting ‘” + i + “‘ is not a valid option; use either ‘include’ or ‘exclude’.”),!1;return !!(“*” === o || Array.isArray(o) && 0 n n n prebid.org wrappern n ” + (n ? “” : “”) + “n n n n “),ttlseconds: Number(e.ttl)}}},23: function(e, t) {var n = {}.toString;e.exports = function(e) {return n.call(e).slice(8, -1)}},24: function(e, t) {e.exports = function(e) {if (null == e)throw TypeError(“Can’t call method on ” + e);return e}},25: function(e, t, n) {var r = n(60)(“wks”), i = n(62), o = n(19).Symbol, a = “function” == typeof o;(e.exports = function(e) {return r[e] || (r[e] = a && o[e] || (a ? o : i)(“Symbol.” + e))}).store = r},26: function(e, t) {e.exports = function() {}},27: function(e, t, n) {“use strict”;Object.defineProperty(t, “__esModule”, {value: !0}),t.default = function(e) {var t = e;return {callBids: function() {},setBidderCode: function(e) {t = e},getBidderCode: function() {return t}}}},28: function(e, t, n) {“use strict”;var r, i = n(7), o = (r = i) && r.__esModule ? r : {default: r}, a = (function(e) {{if (e && e.__esModule)return e;var t = {};if (null != e)for (var n in e)Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);return t.default = e,t}})(n(0));var d = {}, u = [“criteo”];function s(e, t) {var n = document.createElement(“script”);n.type = “text/javascript”,n.async = !0,t && “function” == typeof t && (n.readyState ? n.onreadystatechange = function() {“loaded” !== n.readyState && “complete” !== n.readyState || (n.onreadystatechange = null,t())}: n.onload = function() {t()}),n.src = e;var r = document.getElementsByTagName(“head”);(r = r.length ? r : document.getElementsByTagName(“body”)).length && (r = r[0]).insertBefore(n, r.firstChild)}t.loadExternalScript = function(e, t) {if (t && e)if ((0,o.default)(u, t)) {if (!d[e]) {a.logWarn(“module ” + t + ” is loading external JavaScript”);var n = document.createElement(“script”);n.type = “text/javascript”,n.async = !0,n.src = e,a.insertElement(n),d[e] = !0}} else a.logError(t + ” not whitelisted for loading external JavaScript”);else a.logError(“cannot load external script without url and moduleCode”)},t.loadScript = function(t, e, n) {t ? n ? d[t] ? e && “function” == typeof e && (d[t].loaded ? e() : d[t].callbacks.push(e)) : (d[t] = {loaded: !1,callbacks: []},e && “function” == typeof e && d[t].callbacks.push(e),s(t, (function() {d[t].loaded = !0;try {for (var e = 0; e t.max ? e : t}), {max: 0}), p = (0,v.default)(e.buckets, (function(e) {if (n > g.max * r) {var t = e.precision;void 0 === t && (t = y),i = (e.max * r).toFixed(t)} else if (n = e.min * r)return e}));return p && (t = n,a = r,d = void 0 !== (o = p).precision ? o.precision : y,u = o.increment * a,s = o.min * a,c = Math.pow(10, d + 2),f = (t * c – s * c) / (u * c),l = Math.floor(f) * u + s,i = (l = Number(l.toFixed(10))).toFixed(d)),i}function m(e) {if (o.isEmpty(e) || !e.buckets || !Array.isArray(e.buckets))return !1;var t = !0;return e.buckets.forEach((function(e) {void 0 !== e.min && e.max && e.increment || (t = !1)})),t}t.getPriceBucketString = function(e, t) {var n = 2 (0,S.timestamp)()},function(e) {return e && (e.status && !(0,A.default)([C.BID_STATUS.BID_TARGETING_SET, C.BID_STATUS.RENDERED], e.status) || !e.status)});function U(e, n) {var r = [], i = (0,S.groupBy)(e, “adUnitCode”);return Object.keys(i).forEach((function(e) {var t = (0,S.groupBy)(i[e], “bidderCode”);Object.keys(t).forEach((function(e) {return r.push(t[e].reduce(n))}))})),r}function u(n) {var g = {};function p(e) {return “string” == typeof e ? [e] : w.isArray(e) ? e : n.getAdUnitCodes() || []}function v() {return U(n.getBidsReceived().filter((function(e) {return “banner” !== e.mediaType || (0,a.sizeSupported)([e.width, e.height])})).filter(d).filter(t.isBidNotExpired), S.getOldestHighestCpmBid)}function y() {return n.getStandardBidderAdServerTargeting().map((function(e) {return e.key})).concat(R).filter(S.uniques)}function m(r, i, e, t) {return Object.keys(i.adserverTargeting).filter(o()).forEach((function(e) {var t, n;r.length && r.filter((n = e,function(e) {return e.adUnitCode === i.adUnitCode && e.adserverTargeting[n]})).forEach((t = e,function(e) {w.isArray(e.adserverTargeting[t]) || (e.adserverTargeting[t] = [e.adserverTargeting[t]]),e.adserverTargeting[t] = e.adserverTargeting[t].concat(i.adserverTargeting[t]).filter(S.uniques),delete i.adserverTargeting[t]}))})),r.push(i),r}function o() {var t = y();return function(e) {return -1 === t.indexOf(e)}}function b(t) {return _({}, t.adUnitCode, Object.keys(t.adserverTargeting).filter(o()).map((function(e) {return _({}, e.substring(0, O), [t.adserverTargeting[e]])})))}return g.resetPresetTargeting = function(e) {if ((0,S.isGptPubadsDefined)()) {var t = p(e), r = n.getAdUnits().filter((function(e) {return (0,A.default)(t, e.code)}));window.googletag.pubads().getSlots().forEach((function(n) {B.forEach((function(t) {r.forEach((function(e) {e.code !== n.getAdUnitPath() && e.code !== n.getSlotElementId() || n.setTargeting(t, null)}))}))}))}},g.getAllTargeting = function(e) {var r, t, i, n, o, a, d, u, s, c = 1 i && (r = !1)),!r})),r && e.run(),r}function u(e, t) {void 0 === e[t] ? e[t] = 1 : e[t]++}},addWinningBid: function(e) {o = o.concat(e),R.callBidWonBidder(e.bidder, e, f)},setBidTargeting: function(e) {R.callSetTargetingBidder(e.bidder, e)},getWinningBids: function() {return o},getTimeout: function() {return E},getAuctionId: function() {return m},getAuctionStatus: function() {return b},getAdUnits: function() {return s},getAdUnitCodes: function() {return l},getBidRequests: function() {return g},getBidsReceived: function() {return p}}},t.auctionCallbacks = W,t.getStandardBidderSettings = d,t.getKeyValueTargetingPairs = V,t.adjustBids = s;var _ = n(0), h = n(31), i = n(17), S = n(228), E = n(12), w = n(3), r = n(18), o = n(20), T = a(n(10)), C = a(n(7)), A = n(41);function a(e) {return e && e.__esModule ? e : {default: e}}var B = r.userSync.syncUsers, O = n(0), R = n(8), U = n(9), N = n(4), D = t.AUCTION_STARTED = “started”, j = t.AUCTION_IN_PROGRESS = “inProgress”, P = t.AUCTION_COMPLETED = “completed”;U.on(N.EVENTS.BID_ADJUSTMENT, (function(e) {s(e)}));var k = 4, x = {}, M = {}, G = [];var q = t.addBidResponse = (0,o.createHook)(“asyncSeries”, (function(e, t) {this.auctionAddBidResponse(e, t)}), “addBidResponse”);function W(e, p) {var v = 0, t = !1, n = (0,_.delayExecution)((function() {t = !0}), p.getBidRequests().length);function y() {v–,t && 0 === v && e()}return {addBidResponse: function(e, t) {v++;var n = p.getBidRequests(), r = p.getAuctionId(), i = (0,_.getBidderRequest)(n, t.bidderCode, e), o = (function(e) {var t = e.adUnitCode, n = e.bid, r = e.bidRequest, i = e.auctionId, o = r.start, a = b({}, n, {auctionId: i,responseTimestamp: (0,_.timestamp)(),requestTimestamp: o,cpm: parseFloat(n.cpm) || 0,bidder: n.bidderCode,adUnitCode: t});a.timeToRespond = a.responseTimestamp – a.requestTimestamp,U.emit(N.EVENTS.BID_ADJUSTMENT, a);var d = r.bids && (0,T.default)(r.bids, (function(e) {return e.adUnitCode == t})), u = d && d.renderer;u && u.url && (a.renderer = E.Renderer.install({url: u.url}),a.renderer.setRender(u.render));var s, c = w.config.getConfig(“mediaTypePriceGranularity.” + n.mediaType), f = (0,h.getPriceBucketString)(a.cpm, “object” === (void 0 === c ? “undefined” : m(c)) ? c : w.config.getConfig(“customPriceBucket”), w.config.getConfig(“currency.granularityMultiplier”));return a.pbLg = f.low,a.pbMg = f.med,a.pbHg = f.high,a.pbAg = f.auto,a.pbDg = f.dense,a.pbCg = f.custom,a.bidderCode && (0 e.getTimeout() + w.config.getConfig(“timeoutBuffer”) && e.executeCallback(!0)}function z(e, t) {U.emit(N.EVENTS.BID_RESPONSE, t),e.addBidReceived(t),I(e, t)}function d(e) {var t = w.config.getConfig(“mediaTypePriceGranularity.” + e), n = “string” == typeof e && t ? “string” == typeof t ? t : “custom” : w.config.getConfig(“priceGranularity”), r = pbjs.bidderSettings;return r[N.JSON_MAPPING.BD_SETTING_STANDARD] || (r[N.JSON_MAPPING.BD_SETTING_STANDARD] = {}),r[N.JSON_MAPPING.BD_SETTING_STANDARD][N.JSON_MAPPING.ADSERVER_TARGETING] || (r[N.JSON_MAPPING.BD_SETTING_STANDARD][N.JSON_MAPPING.ADSERVER_TARGETING] = [{key: N.TARGETING_KEYS.BIDDER,val: function(e) {return e.bidderCode}}, {key: N.TARGETING_KEYS.AD_ID,val: function(e) {return e.adId}}, {key: N.TARGETING_KEYS.PRICE_BUCKET,val: function(e) {return n === N.GRANULARITY_OPTIONS.AUTO ? e.pbAg : n === N.GRANULARITY_OPTIONS.DENSE ? e.pbDg : n === N.GRANULARITY_OPTIONS.LOW ? e.pbLg : n === N.GRANULARITY_OPTIONS.MEDIUM ? e.pbMg : n === N.GRANULARITY_OPTIONS.HIGH ? e.pbHg : n === N.GRANULARITY_OPTIONS.CUSTOM ? e.pbCg : void 0}}, {key: N.TARGETING_KEYS.SIZE,val: function(e) {return e.size}}, {key: N.TARGETING_KEYS.DEAL,val: function(e) {return e.dealId}}, {key: N.TARGETING_KEYS.SOURCE,val: function(e) {return e.source}}, {key: N.TARGETING_KEYS.FORMAT,val: function(e) {return e.mediaType}}]),r[N.JSON_MAPPING.BD_SETTING_STANDARD]}function V(e, t) {if (!t)return {};var n = {}, r = pbjs.bidderSettings;r && (u(n, d(t.mediaType), t),e && r[e] && r[e][N.JSON_MAPPING.ADSERVER_TARGETING] && (u(n, r[e], t),t.sendStandardTargeting = r[e].sendStandardTargeting));return t.native && (n = b({}, n, (0,i.getNativeTargeting)(t))),n}function u(r, i, o) {var e = i[N.JSON_MAPPING.ADSERVER_TARGETING];return o.size = o.getSize(),O._each(e, (function(e) {var t = e.key, n = e.val;if (r[t] && O.logWarn(“The key: ” + t + ” is getting ovewritten”),O.isFn(n))try {n = n(o)} catch (e) {O.logError(“bidmanager”, “ERROR”, e)}(void 0 === i.suppressEmptyKeys || !0 !== i.suppressEmptyKeys) && t !== N.TARGETING_KEYS.DEAL || !O.isEmptyStr(n) && null != n ? r[t] = n : O.logInfo(“suppressing empty key ‘” + t + “‘ from adserver targeting”)})),r}function s(e) {var t = e.bidderCode, n = e.cpm, r = void 0;if (pbjs.bidderSettings && (t && pbjs.bidderSettings[t] && “function” == typeof pbjs.bidderSettings[t].bidCpmAdjustment ? r = pbjs.bidderSettings[t].bidCpmAdjustment : pbjs.bidderSettings[N.JSON_MAPPING.BD_SETTING_STANDARD] && “function” == typeof pbjs.bidderSettings[N.JSON_MAPPING.BD_SETTING_STANDARD].bidCpmAdjustment && (r = pbjs.bidderSettings[N.JSON_MAPPING.BD_SETTING_STANDARD].bidCpmAdjustment),r))try {n = r(e.cpm, b({}, e))} catch (e) {O.logError(“Error during bid adjustment”, “bidmanager.js”, e)}0 (eg mediaTypes.banner.sizes).”), e.sizes = n);if (t && t.video) {var i = t.video;if (i.playerSize)if (Array.isArray(i.playerSize) && 1 === i.playerSize.length && i.playerSize.every(d)) e.sizes = i.playerSize;else if (d(i.playerSize)) {var o = [];o.push(i.playerSize),w.logInfo(“Transforming video.playerSize from ” + i.playerSize + ” to ” + o + ” so it’s in the proper format.”),e.sizes = i.playerSize = o} else w.logError(“Detected incorrect configuration of mediaTypes.video.playerSize. Please specify only one set of dimensions in a format like: [[640, 480]]. Removing invalid mediaTypes.video.playerSize property from request.”), delete e.mediaTypes.video.playerSize}if (t && t.native) {var a = t.native;a.image && a.image.sizes && !Array.isArray(a.image.sizes) && (w.logError(“Please use an array of sizes for native.image.sizes field. Removing invalid mediaTypes.native.image.sizes property from request.”),delete e.mediaTypes.native.image.sizes),a.image && a.image.aspect_ratios && !Array.isArray(a.image.aspect_ratios) && (w.logError(“Please use an array of sizes for native.image.aspect_ratios field. Removing invalid mediaTypes.native.image.aspect_ratios property from request.”),delete e.mediaTypes.native.image.aspect_ratios),a.icon && a.icon.sizes && !Array.isArray(a.icon.sizes) && (w.logError(“Please use an array of sizes for native.icon.sizes field. Removing invalid mediaTypes.native.icon.sizes property from request.”),delete e.mediaTypes.native.icon.sizes)}})),e},h.callBids = function(e, t, r, i, o, a) {if (t.length) {var n = t.reduce((function(e, t) {return e[Number(void 0 !== t.src && t.src === C.S2S.SRC)].push(t),e}), [[], []]), d = b(n, 2), u = d[0], s = d[1];if (s.length) {var c = (0,E.ajaxBuilder)(a, o ? {request: o.request.bind(null, “s2s”),done: o.done} : void 0), f = U.bidders, l = R[U.adapter], g = s[0].tid, p = s[0].adUnitsS2SCopy;if (l) {var v = {tid: g,ad_units: p};if (v.ad_units.length) {var y = s.map((function(e) {return e.start = (0,S.timestamp)(),i})), m = v.ad_units.reduce((function(e, t) {return e.concat((t.bids || []).reduce((function(e, t) {return e.concat(t.bidder)}), []))}), []);w.logMessage(“CALLING S2S HEADER BIDDERS ==== ” + f.filter((function(e) {return (0,A.default)(m, e)})).join(“,”)),s.forEach((function(e) {B.emit(C.EVENTS.BID_REQUESTED, e)})),l.callBids(v, s, r, (function() {return y.forEach((function(e) {return e()}))}), c)}}}u.forEach((function(e) {e.start = (0,S.timestamp)();var t = R[e.bidderCode];w.logMessage(“CALLING BIDDER ======= ” + e.bidderCode),B.emit(C.EVENTS.BID_REQUESTED, e);var n = (e.doneCbCallCount = 0,E.ajaxBuilder)(a, o ? {request: o.request.bind(null, e.bidderCode),done: o.done} : void 0);t.callBids(e, r, i, n)}))} else w.logWarn(“callBids executed with no bidRequests. Were they filtered by labels or sizing?”)},h.videoAdapters = [],h.registerBidAdapter = function(e, t) {var n = (2 n

n

nx3c!– Rubicon Project Ad Tag –x3en

n

n

n

In Louisiana, Gov. John Bel Edwards declared a state of emergency Friday because the threat of more rain in the region and more flooding along the Mississippi.
The US Army Corps of Engineers this week opened Louisiana’s Bonnet Carre Spillway to divert rising water away from New Orleans to sparsely populated areas. In the capital, Baton Rouge, the river already was at more than 41.28 feet — more than 1 foot above major flood stage — and it could rise another 2 feet over the next two weeks, the National Weather Service says.
“We anticipate some parishes may need assistance dealing with these conditions and the state stands ready to offer that support,” Edwards said.
The river, already at flood stage in areas from Missouri south into Louisiana and Mississippi, isn’t expected to crest in many of those places for days.
In Memphis, Tennessee, the Mississippi is forecast to crest around Wednesday around 41.5 feet — only 1.5 feet above moderate flood stage, but it would be the fourth-highest crest recorded there, the National Weather Service says.
There, the river has been over its banks for days. Satellite images distributed by NASA show the flooded river on Monday, compared with the same area in late February 2014, with Memphis shown on upper right side of the river.
The weather service has issued a flood warning for Memphis until March 15.
In Mississippi, north of Vicksburg, farmers were using bulldozers and other equipment to build levees to protect homes from rising waters this week, CNN affiliate WLBT reported.
This graphic, created Friday morning, shows maximum flood levels forecast by the National Weather Service through March 10.

“This water simply doesn’t have anywhere to go,” Warren County emergency management director John Elfer told WLBT on Monday.
“There’s still a snow melt we have to account for. There’s been a tremendous amount of rain north in the Ohio River valley. As a result, this is what you’re seeing.”
Widespread rain is expected from Friday into the weekend for portions of Louisiana, Mississippi and the Carolinas, forecasters say.