Chinese language {couples} cannot afford a second youngster, it doesn’t matter what Beijing says

0
1
China's senior citizens risk being left behind


‘ : “http://version.cnn.com/”},a.getDefinedParams = operate(n, e) return e.filter((operate(e) return n[e])).cut back((operate(e, t) return r(e, (operate(e, t, n) t in e ? Object.defineProperty(e, t, worth: n,enumerable: !0,configurable: !0,writable: !0) : e[t] = n;return e)(, t, n[t]))), ),a.isValidMediaTypes = operate(e) var t = [“banner”, “native”, “video”];if (!Object.keys(e).each((operate(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 = operate(e, t, n) {return (0,o.default)(e, (operate(e) return 0 > t / 4).toString(16) : ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).change(/[018]/g, e),a.getBidIdParameter = operate(e, t) return t && t[e] ? t[e] : “http://version.cnn.com/”,a.tryAppendQueryString = operate(e, t, n) return n ? e + (t + “=”) + encodeURIComponent(n) + “&” : e,a.parseQueryStringParameters = operate(e) var t = “http://version.cnn.com/”;for (var n in e)e.hasOwnProperty(n) && (t += n + “=” + encodeURIComponent(e[n]) + “&”);return t,a.transformAdServerTargetingObj = operate(t) return t && 0 ‘;return t += ‘‘,a.createTrackPixelIframeHtml = operate(e) var t = !(1 n ‘) : “http://version.cnn.com/”,a.getIframeDocument = operate(e) if (e) var t = void 0;strive t = e.contentWindow ? e.contentWindow.doc : e.contentDocument.doc ? e.contentDocument.doc : e.contentDocument catch (e) a.logError(“Can not get iframe doc”, e)return t,a.getValueString = operate(e, t, n) return null == t ? n : a.isStr(t) ? t : a.isNumber(t) ? t.toString() : void a.logWarn(“Unsuported sort for param: ” + e + ” required sort: String”);a.getHighestCpm = U(“timeToRespond”, (operate(e, t) {return t = u.syncsPerBidder)return c.logWarn(‘Variety of consumer syncs exceeded for “http://version.cnn.com/” + t + “http://version.cnn.com/”‘);if (u.filterSettings) if (operate(e, t) var n = u.filterSettings;if (operate(e, t) if (e.all && e[t])return c.logWarn(‘Detected presence of the “filterSettings.all” and “filterSettings.’ + t + “http://version.cnn.com/” in userSync config. You can’t combine “all” with “iframe/picture” configs; they’re mutually unique.’),!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 && “embrace” !== i && “exclude” !== i)return c.logWarn(‘UserSync “filterSettings.’ + r + “.filter” setting “http://version.cnn.com/” + i + “http://version.cnn.com/” isn’t a sound choice; use both ’embrace’ or ‘exclude’.”),!1;return !!(“*” === o “http://version.cnn.com/” Array.isArray(o) && Zero n n n prebid.org wrappern n ” + (n ? “http://version.cnn.com/” : “http://version.cnn.com/”) + “n n n n “),ttlseconds: Quantity(e.ttl),23: operate(e, t) var n = .toString;e.exports = operate(e) return n.name(e).slice(8, -1),24: operate(e, t) e.exports = operate(e) if (null == e)throw TypeError(“Cannot name technique on ” + e);return e,25: operate(e, t, n) var r = n(60)(“wks”), i = n(62), o = n(19).Image, a = “operate” == typeof o;(e.exports = operate(e) return r[e] “http://version.cnn.com/” (r[e] = a && o[e] “http://version.cnn.com/” (a ? o : i)(“Image.” + e))).retailer = r,26: operate(e, t) e.exports = operate() ,27: operate(e, t, n) “use strict”;Object.defineProperty(t, “__esModule”, worth: !0),t.default = operate(e) var t = e;return callBids: operate() ,setBidderCode: operate(e) t = e,getBidderCode: operate() return t,28: operate(e, t, n) {“use strict”;var r, i = n(7), o = (r = i) && r.__esModule ? r : default: r, a = (operate(e) if (e && e.__esModule)return e;var t = ;if (null != e)for (var n in e)Object.prototype.hasOwnProperty.name(e, n) && (t[n] = e[n]);return t.default = e,t)(n(0));var d = , u = [“criteo”];operate s(e, t) var n = doc.createElement(“script”);n.sort = “textual content/javascript”,n.async = !0,t && “operate” == typeof t && (n.readyState ? n.onreadystatechange = operate() “loaded” !== n.readyState && “full” !== n.readyState “http://version.cnn.com/” (n.onreadystatechange = null,t()): n.onload = operate() t()),n.src = e;var r = doc.getElementsByTagName(“head”);(r = r.size ? r : doc.getElementsByTagName(“physique”)).size && (r = r[0]).insertBefore(n, r.firstChild)t.loadExternalScript = operate(e, t) if (t && e)if ((0,o.default)(u, t)) if (!d[e]) a.logWarn(“module ” + t + ” is loading exterior JavaScript”);var n = doc.createElement(“script”);n.sort = “textual content/javascript”,n.async = !0,n.src = e,a.insertElement(n),d[e] = !Zero else a.logError(t + ” not whitelisted for loading exterior JavaScript”);else a.logError(“can’t load exterior script with out url and moduleCode”),t.loadScript = operate(t, e, n) {t ? n ? d[t] ? e && “operate” == typeof e && (d[t].loaded ? e() : d[t].callbacks.push(e)) : (d[t] = loaded: !1,callbacks: [],e && “operate” == typeof e && d[t].callbacks.push(e),s(t, (operate() d[t].loaded = !0;strive for (var e = 0; e t.max ? e : t), max: 0), p = (0,v.default)(e.buckets, (operate(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.ground(f) * u + s,i = (l = Quantity(l.toFixed(10))).toFixed(d)),ifunction m(e) if (o.isEmpty(e) “http://version.cnn.com/” !e.buckets “http://version.cnn.com/” !Array.isArray(e.buckets))return !1;var t = !0;return e.buckets.forEach((operate(e) void 0 !== e.min && e.max && e.increment “http://version.cnn.com/” (t = !1))),tt.getPriceBucketString = operate(e, t) var n = 2 (0,S.timestamp)(),operate(e) return e && (e.standing && !(0,A.default)([C.BID_STATUS.BID_TARGETING_SET, C.BID_STATUS.RENDERED], e.standing) “http://version.cnn.com/” !e.standing));operate U(e, n) var r = [], i = (0,S.groupBy)(e, “adUnitCode”);return Object.keys(i).forEach((operate(e) var t = (0,S.groupBy)(i[e], “bidderCode”);Object.keys(t).forEach((operate(e) return r.push(t[e].cut back(n)))))),rfunction u(n) {var g = ;operate p(e) return “string” == typeof e ? [e] : w.isArray(e) ? e : n.getAdUnitCodes() “http://version.cnn.com/” []operate v() return U(n.getBidsReceived().filter((operate(e) return “banner” !== e.mediaType “http://version.cnn.com/” (0,a.sizeSupported)([e.width, e.height]))).filter(d).filter(t.isBidNotExpired), S.getOldestHighestCpmBid)operate y() return n.getStandardBidderAdServerTargeting().map((operate(e) return e.key)).concat(R).filter(S.uniques)operate m(r, i, e, t) return Object.keys(i.adserverTargeting).filter(o()).forEach((operate(e) var t, n;r.size && r.filter((n = e,operate(e) return e.adUnitCode === i.adUnitCode && e.adserverTargeting[n])).forEach((t = e,operate(e) w.isArray(e.adserverTargeting[t]) “http://version.cnn.com/” (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),rfunction o() var t = y();return operate(e) return -1 === t.indexOf(e)operate b(t) return _(, t.adUnitCode, Object.keys(t.adserverTargeting).filter(o()).map((operate(e) return _(, e.substring(0, O), [t.adserverTargeting[e]]))))return g.resetPresetTargeting = operate(e) {if ((0,S.isGptPubadsDefined)()) var t = p(e), r = n.getAdUnits().filter((operate(e) return (0,A.default)(t, e.code)));window.googletag.pubads().getSlots().forEach((operate(n) B.forEach((operate(t) r.forEach((operate(e) e.code !== n.getAdUnitPath() && e.code !== n.getSlotElementId() “http://version.cnn.com/” n.setTargeting(t, null)))))))},g.getAllTargeting = operate(e) var r, t, i, n, o, a, d, u, s, c = 1 i && (r = !1)),!r)),r && e.run(),r}operate u(e, t) void 0 === e[t] ? e[t] = 1 : e[t]++},addWinningBid: operate(e) o = o.concat(e),R.callBidWonBidder(e.bidder, e, f),setBidTargeting: operate(e) R.callSetTargetingBidder(e.bidder, e),getWinningBids: operate() return o,getTimeout: operate() return E,getAuctionId: operate() return m,getAuctionStatus: operate() return b,getAdUnits: operate() return s,getAdUnitCodes: operate() return l,getBidRequests: operate() return g,getBidsReceived: operate() 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);operate a(e) return e && e.__esModule ? e : default: evar B = r.userSync.syncUsers, O = n(0), R = n(8), U = n(9), N = n(4), D = t.AUCTION_STARTED = “began”, j = t.AUCTION_IN_PROGRESS = “inProgress”, P = t.AUCTION_COMPLETED = “accomplished”;U.on(N.EVENTS.BID_ADJUSTMENT, (operate(e) s(e)));var ok = 4, x = , M = , G = [];var q = t.addBidResponse = (0,o.createHook)(“asyncSeries”, (operate(e, t) this.auctionAddBidResponse(e, t)), “addBidResponse”);operate W(e, p) {var v = 0, t = !1, n = (0,_.delayExecution)((operate() t = !0), p.getBidRequests().size);operate y() v–,t && 0 === v && e()return {addBidResponse: operate(e, t) v++;var n = p.getBidRequests(), r = p.getAuctionId(), i = (0,_.getBidderRequest)(n, t.bidderCode, e), o = (operate(e) var t = e.adUnitCode, n = e.bid, r = e.bidRequest, i = e.auctionId, o = r.begin, a = b(, n, auctionId: i,responseTimestamp: (0,_.timestamp)(),requestTimestamp: o,cpm: parseFloat(n.cpm) “http://version.cnn.com/” 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, (operate(e) return e.adUnitCode == t)), u = d && d.renderer;u && u.url && (a.renderer = E.Renderer.set up(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(“foreign money.granularityMultiplier”));return a.pbLg = f.low,a.pbMg = f.med,a.pbHg = f.excessive,a.pbAg = f.auto,a.pbDg = f.dense,a.pbCg = f.customized,a.bidderCode && (0 e.getTimeout() + w.config.getConfig(“timeoutBuffer”) && e.executeCallback(!0)operate z(e, t) U.emit(N.EVENTS.BID_RESPONSE, t),e.addBidReceived(t),I(e, t)operate d(e) var t = w.config.getConfig(“mediaTypePriceGranularity.” + e), n = “string” == typeof e && t ? “string” == typeof t ? t : “customized” : w.config.getConfig(“priceGranularity”), r = pbjs.bidderSettings;return r[N.JSON_MAPPING.BD_SETTING_STANDARD] “http://version.cnn.com/” (r[N.JSON_MAPPING.BD_SETTING_STANDARD] = ),r[N.JSON_MAPPING.BD_SETTING_STANDARD][N.JSON_MAPPING.ADSERVER_TARGETING] “http://version.cnn.com/” (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]operate 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))),nfunction u(r, i, o) var e = i[N.JSON_MAPPING.ADSERVER_TARGETING];return o.dimension = o.getSize(),O._each(e, (operate(e) var t = e.key, n = e.val;if (r[t] && O.logWarn(“The important thing: ” + t + ” is getting ovewritten”),O.isFn(n))strive n = n(o) catch (e) O.logError(“bidmanager”, “ERROR”, e)(void 0 === i.suppressEmptyKeys “http://version.cnn.com/” !0 !== i.suppressEmptyKeys) && t !== N.TARGETING_KEYS.DEAL “http://version.cnn.com/” !O.isEmptyStr(n) && null != n ? r[t] = n : O.logInfo(“suppressing empty key “http://version.cnn.com/” + t + “http://version.cnn.com/” from adserver concentrating on”))),rfunction s(e) var t = e.bidderCode, n = e.cpm, r = void 0;if (pbjs.bidderSettings && (t && pbjs.bidderSettings[t] && “operate” == typeof pbjs.bidderSettings[t].bidCpmAdjustment ? r = pbjs.bidderSettings[t].bidCpmAdjustment : pbjs.bidderSettings[N.JSON_MAPPING.BD_SETTING_STANDARD] && “operate” == typeof pbjs.bidderSettings[N.JSON_MAPPING.BD_SETTING_STANDARD].bidCpmAdjustment && (r = pbjs.bidderSettings[N.JSON_MAPPING.BD_SETTING_STANDARD].bidCpmAdjustment),r))strive n = r(e.cpm, b(, e)) catch (e) O.logError(“Error throughout 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.size && i.playerSize.each(d)) e.sizes = i.playerSize;else if (d(i.playerSize)) var o = [];o.push(i.playerSize),w.logInfo(“Remodeling video.playerSize from ” + i.playerSize + ” to ” + o + ” so it is within the correct format.”),e.sizes = i.playerSize = o else w.logError(“Detected incorrect configuration of mediaTypes.video.playerSize. Please specify just one set of dimensions in a format like: [[640, 480]]. Eradicating invalid mediaTypes.video.playerSize property from request.”), delete e.mediaTypes.video.playerSizeif (t && t.native) var a = t.native;a.picture && a.picture.sizes && !Array.isArray(a.picture.sizes) && (w.logError(“Please use an array of sizes for native.picture.sizes area. Eradicating invalid mediaTypes.native.picture.sizes property from request.”),delete e.mediaTypes.native.picture.sizes),a.picture && a.picture.aspect_ratios && !Array.isArray(a.picture.aspect_ratios) && (w.logError(“Please use an array of sizes for native.picture.aspect_ratios area. Eradicating invalid mediaTypes.native.picture.aspect_ratios property from request.”),delete e.mediaTypes.native.picture.aspect_ratios),a.icon && a.icon.sizes && !Array.isArray(a.icon.sizes) && (w.logError(“Please use an array of sizes for native.icon.sizes area. Eradicating invalid mediaTypes.native.icon.sizes property from request.”),delete e.mediaTypes.native.icon.sizes))),e,h.callBids = operate(e, t, r, i, o, a) {if (t.size) {var n = t.cut back((operate(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.size) {var c = (0,E.ajaxBuilder)(a, o ? request: o.request.bind(null, “s2s”),finished: o.finished : 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.size) var y = s.map((operate(e) return e.begin = (0,S.timestamp)(),i)), m = v.ad_units.cut back((operate(e, t) return e.concat((t.bids “http://version.cnn.com/” []).cut back((operate(e, t) return e.concat(t.bidder)), []))), []);w.logMessage(“CALLING S2S HEADER BIDDERS ==== ” + f.filter((operate(e) return (0,A.default)(m, e))).be part of(“,”)),s.forEach((operate(e) B.emit(C.EVENTS.BID_REQUESTED, e))),l.callBids(v, s, r, (operate() return y.forEach((operate(e) return e()))), c)}u.forEach((operate(e) e.begin = (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),finished: o.finished : void 0);t.callBids(e, r, i, n)))} else w.logWarn(“callBids executed with no bidRequests. Have been they filtered by labels or sizing?”)},h.videoAdapters = [],h.registerBidAdapter = operate(e, t) var n = (2 n

<![CDATA[inDapIF=true;]]>

n

nx3c!– Rubicon Challenge Advert Tag –x3en

n<![CDATA[" + i + "n]]>

n

n

“);var a = g[r.size_id].break up(“x”).map((operate(e) return Quantity(e))), s = u(a, 2);o.width = s[0],o.peak = s[1]o.rubiconTargeting = (Array.isArray(r.concentrating on) ? r.concentrating on : []).cut back((operate(e, r) return e[r.key] = r.values[0],e), rpfl_elemid: n.adUnitCode),e.push(o)} else l.logError(“Rubicon bid adapter Error: bidRequest undefined at index place:” + t, c, d);return e}), []).kind((operate(e, r) return (r.cpm “http://version.cnn.com/” 0) – (e.cpm “http://version.cnn.com/” 0)))},getUserSyncs: operate(e, r, t) if (!A && e.iframeEnabled) var i = “http://version.cnn.com/”;return t && “string” == typeof t.consentString && (“boolean” == typeof t.gdprApplies ? i += “?gdpr=” + Quantity(t.gdprApplies) + “&gdpr_consent=” + t.consentString : i += “?gdpr_consent=” + t.consentString),A = !0,sort: “iframe”,url: n + i,transformBidParams: operate(e, r) return l.convertTypes(accountId: “quantity”,siteId: “quantity”,zoneId: “quantity”, e)};operate m() return [window.screen.width, window.screen.height].be part of(“x”)operate b(e, r) var t = f.config.getConfig(“pageUrl”);return e.params.referrer ? t = e.params.referrer : t “http://version.cnn.com/” (t = r.refererInfo.referer),e.params.safe ? t.change(/^http:/i, “https:”) : tfunction _(e, r) {var t = e.params;if (“video” === r) {var i = [];return t.video && t.video.playerWidth && t.video.playerHeight ? i = [t.video.playerWidth, t.video.playerHeight] : Array.isArray(l.deepAccess(e, “mediaTypes.video.playerSize”)) && 1 === e.mediaTypes.video.playerSize.size ? i = e.mediaTypes.video.playerSize[0] : Array.isArray(e.sizes) && 0 <![CDATA[/*Keypresshttps://dmauro.github.io/Keypress/*/(operate() {var d, j, a, ok, e, h, l, o, p, m, t, u, f, b, i, x, r, v, g, s, w, q, n = .hasOwnProperty, c = [].indexOf "http://version.cnn.com/" operate(A) for (var z = 0, y = this.size; z < y; z++) if (z on this && this[z] === A) return zreturn -1;p = is_unordered: false,is_counting: false,is_exclusive: false,is_solitary: false,prevent_default: false,prevent_repeat: false;w = ["meta", "alt", "option", "ctrl", "shift", "cmd"];g = "ctrl";j = ;j.debug = false;d = (operate() operate y(B) var A, z;for (A in B) if (!n.name(B, A)) continuez = B[A];if (z !== false) this[A] = zthis.keys = this.keys "http://version.cnn.com/" [];this.rely = this.rely "http://version.cnn.com/" 0y.prototype.allows_key_repeat = operate() return !this.prevent_repeat && typeof this.on_keydown === "operate";y.prototype.reset = operate() this.rely = 0;return this.keyup_fired = null;return y)();j.Listener = (operate() {operate y(z, D) {var A, C, B;if ((typeof jQuery !== "undefined" && jQuery !== null) && z instanceof jQuery) if (z.size !== 1) v("Warning: your jQuery selector ought to have precisely one object.")z = z[0]this.should_suppress_event_defaults = false;this.should_force_event_defaults = false;this.sequence_delay = 800;this._registered_combos = [];this._keys_down = [];this._active_combos = [];this._sequence = [];this._sequence_timer = null;this._prevent_capture = false;this._defaults = D "http://version.cnn.com/" ;for (C in p) if (!n.name(p, C)) continueB = p[C];this._defaults[C] = this._defaults[C] "http://version.cnn.com/" Bthis.component = z "http://version.cnn.com/" doc.physique;A = operate(G, F, E) if (G.addEventListener) G.addEventListener(F, E) else if (G.attachEvent) G.attachEvent("on" + F, E)return E;this.keydown_event = A(this.component, "keydown", (operate(E) return operate(F) F = F "http://version.cnn.com/" window.occasion;E._receive_input(F, true);return E._bug_catcher(F))(this));this.keyup_event = A(this.component, "keyup", (operate(E) return operate(F) F = F "http://version.cnn.com/" window.occasion;return E._receive_input(F, false))(this));this.blur_event = A(window, "blur", (operate(E) return operate() var G, I, F, H;H = E._keys_down;for (I = 0,F = H.size; I = 0 && ((z = h(A.keyCode)) !== “cmd” && z !== “shift” && z !== “alt” && z !== “caps” && z !== “tab”)) return this._receive_input(A, false);y.prototype._cmd_bug_check = operate(z) if (g === “cmd” && c.name(this._keys_down, “cmd”) >= 0 && c.name(z, “cmd”) = 0) returnif (!(D.is_solitary “http://version.cnn.com/” !C._cmd_bug_check(D.keys))) return B.push(D))(this));return B;y.prototype._get_potential_combos = operate(B) var E, z, D, A, C;z = [];C = this._registered_combos;for (D = 0,A = C.size; D = 0 && this._cmd_bug_check(E.keys)) z.push(E)return z;y.prototype._add_to_active_combos = operate(A) {var O, B, D, N, L, J, E, Okay, H, G, C, M, z, I, F;Okay = false;E = true;N = false;if (c.name(this._active_combos, A) >= 0) return true else {if (this._active_combos.size) {for (J = H = 0,I = this._active_combos.size; 0 <= I ? H I; J = 0 <= I ? ++H : –H) O = this._active_combos[J];if (!(O && O.is_exclusive && A.is_exclusive)) continueD = O.keys;if (!Okay) for (G = 0,M = D.size; G < M; G++) B = D[G];Okay = true;if (c.name(A.keys, B) < 0) Okay = false;breakif (E && !Okay) F = A.keys;for (C = 0,z = F.size; C < z; C++) L = F[C];E = false;if (c.name(D, L) < 0) E = true;breakif (Okay) if (N) O = this._active_combos.splice(J, 1)[0];if (O != null) O.reset() else O = this._active_combos.splice(J, 1, A)[0];if (O != null) O.reset()N = trueE = false}}if (E) this._active_combos.unshift(A)return Okay "http://version.cnn.com/" E};y.prototype._remove_from_active_combos = operate(D) var A, z, C, B;for (z = C = 0,B = this._active_combos.size; 0 <= B ? C B; z = 0 <= B ? ++C : –C) A = this._active_combos[z];if (A === D) D = this._active_combos.splice(z, 1)[0];D.reset();break;y.prototype._get_possible_sequences = operate() {var z, I, G, Okay, J, D, F, E, B, L, H, C, A;J = [];H = this._registered_combos;for (F = 0,L = H.size; F < L; F++) z = H[F];for (G = E = 1,C = this._sequence.size; 1 <= C ? E = C; G = 1 <= C ? ++E : –E) D = this._sequence.slice(-G);if (!z.is_sequence) continueif (c.name(z.keys, "shift") < 0) D = m(D, operate(M) return M !== "shift");if (!D.size) continuefor (I = B = 0,A = D.size; 0 <= A ? B A; I = 0 <= A ? ++B : –B) if (z.keys[I] === D[I]) Okay = true else Okay = false;breakif (Okay) J.push(z)return J};y.prototype._add_key_to_sequence = operate(A, E) var D, B, C, z;this._sequence.push(A);B = this._get_possible_sequences();if (B.size) for (C = 0,z = B.size; C -1) this._sequence_timer = setTimeout(operate() return this._sequence = [], this.sequence_delay) else this._sequence = [];y.prototype._get_sequence = operate(M) {var z, I, G, J, Okay, E, F, D, B, L, H, C, A;H = this._registered_combos;for (F = 0,L = H.size; F < L; F++) {z = H[F];if (!z.is_sequence) continuefor (G = D = 1,C = this._sequence.size; 1 <= C ? D = C; G = 1 = 0) return truereturn N !== “shift”)).slice(-G);if (z.keys.size !== E.size) continuefor (I = B = 0,A = E.size; 0 <= A ? B A; I = 0 <= A ? ++B : –B) Okay = E[I];if (c.name(z.keys, "shift") < 0) if (Okay === "shift") continueif (M === "shift" && c.name(z.keys, "shift") < 0) continueif (z.keys[I] === Okay) J = true else J = false;breakif (J) ;if (z.is_exclusive) this._sequence = []return z}return false};y.prototype._receive_input = operate(A, B) var z;if (this._prevent_capture) if (this._keys_down.size) this._keys_down = []returnz = h(A.keyCode);if (!B && !this._keys_down.size && (z === "alt"http://version.cnn.com/";y.prototype._fire = operate(B, C, z, A) if (typeof C["on_" + B] === "operate") this._prevent_default(z, C["on_" + B].name(C["this"], z, C.rely, A) !== true)if (B === "launch") C.rely = 0if (B === "keyup") return C.keyup_fired = true;y.prototype._match_combo_arrays = operate(A, C) var z, E, B, D;D = this._registered_combos;for (E = 0,B = D.size; E < B; E++) z = D[E];if ((!z.is_unordered && e(A, z.keys)) "http://version.cnn.com/" (z.is_unordered && ok(A, z.keys))) C(z);y.prototype._fuzzy_match_combo_arrays = operate(A, C) var z, E, B, D;D = this._registered_combos;for (E = 0,B = D.size; E < B; E++) z = D[E];if ((!z.is_unordered && f(z.keys, A)) "http://version.cnn.com/" (z.is_unordered && u(z.keys, A))) C(z);y.prototype._keys_remain = operate(E) var A, D, C, z, B;B = E.keys;for (C = 0,z = B.size; C = 0) D = true;breakreturn D;y.prototype._key_down = operate(N, J) {var C, P, z, H, Okay, A, M, I, O, F, E, D, L, B, G;O = l(N, J);if (O) N = Othis._add_key_to_sequence(N, J);I = this._get_sequence(N);if (I) this._fire(“keydown”, I, J)for (Okay in s) z = s[K];if (!J[z]) continueif (Okay === N “http://version.cnn.com/” c.name(this._keys_down, Okay) >= 0) continuethis._keys_down.push(Okay)for (Okay in s) z = s[K];if (Okay === N) continueif (c.name(this._keys_down, Okay) >= 0 && !J[z]) if (Okay === “cmd” && g !== “cmd”) continuefor (H = F = 0,G = this._keys_down.size; 0 <= G ? F G; H = 0 <= G ? ++F : –F) if (this._keys_down[H] === Okay) this._keys_down.splice(H, 1)P = this._get_active_combos(N);M = this._get_potential_combos(N);for (E = 0,L = P.size; E < L; E++) C = P[E];this._handle_combo_down(C, M, N, J)if (M.size) for (D = 0,B = M.size; D < B; D++) A = M[D];this._prevent_default(J, A.prevent_default)if (c.name(this._keys_down, N) < 0) this._keys_down.push(N)};y.prototype._handle_combo_down = operate(A, G, H, D) var C, z, E, I, B, F;if (c.name(A.keys, H) = 0) C = true;if (!A.allows_key_repeat()) return falseI = this._add_to_active_combos(A, H);A.keyup_fired = false;z = false;if (A.is_exclusive) for (B = 0,F = G.size; B A.keys.size) z = true;breakif (!z) if (A.is_counting && typeof A.on_keydown === “operate”) A.rely += 1if (I) return this._fire(“keydown”, A, D, C);y.prototype._key_up = operate(T, O) var L, Okay, P, G, N, J, M, H, D, B, A, z, Q, S, R, I, F, E, C;H = T;M = l(T, O);if (M) T = MM = r[H];if (O.shiftKey) if (!(M && c.name(this._keys_down, M) >= 0)) T = H else if (!(H && c.name(this._keys_down, H) >= 0)) T = MJ = this._get_sequence(T);if (J) this._fire(“keyup”, J, O)if (c.name(this._keys_down, T) < 0) return falsefor (N = D = 0,I = this._keys_down.size; 0 <= I ? D I; N = 0 <= I ? ++D : –D) if ((F = this._keys_down[N]) === T "http://version.cnn.com/" F === M "http://version.cnn.com/" F === H) this._keys_down.splice(N, 1);breakK = this._active_combos.size;G = [];E = this._active_combos;for (B = 0,Q = E.size; B = 0) G.push(L)for (A = 0,S = G.size; A 1) C = this._active_combos;for (z = 0,R = C.size; z = 0) continueif (!this._keys_remain(L)) this._remove_from_active_combos(L);y.prototype._handle_combo_up = operate(D, C, z) var A, B;this._prevent_default(C, D && D.prevent_default);B = this._keys_remain(D);if (!D.keyup_fired) A = this._keys_down.slice();A.push(z);if (!D.is_solitary “http://version.cnn.com/” ok(A, D.keys)) this._fire(“keyup”, D, C);if (D.is_counting && typeof D.on_keyup === “operate” && typeof D.on_keydown !== “operate”) D.rely += 1if (!B) this._fire(“launch”, D, C);this._remove_from_active_combos(D);y.prototype.simple_combo = operate(z, A) return this.register_combo(keys: z,on_keydown: A);y.prototype.counting_combo = operate(A, z) return this.register_combo(keys: A,is_counting: true,is_unordered: false,on_keydown: z);y.prototype.sequence_combo = operate(z, A) return this.register_combo(keys: z,on_keydown: A,is_sequence: true,is_exclusive: true);y.prototype.register_combo = operate(D) var C, B, A, z;if (typeof D.keys === “string”) D.keys = D.keys.break up(“http://version.cnn.com/”)z = this._defaults;for (B in z) if (!n.name(z, B)) continueA = z[B];if (D[B] === void 0) D[B] = AC = new d(D);if (q(C)) this._registered_combos.push(C);return C;y.prototype.register_many = operate(D) var C, B, A, z;z = [];for (B = 0,A = D.size; B < A; B++) C = D[B];z.push(this.register_combo(C))return z;y.prototype.unregister_combo = operate(C) {var F, z, E, B, D, A;if (!C) return falsez = (operate(G) return operate(L) var I, Okay, J, H;H = [];for (I = Okay = 0,J = G._registered_combos.size; 0 <= J ? Okay J; I = 0 <= J ? ++Okay : –Okay) if (L === G._registered_combos[I]) G._registered_combos.splice(I, 1);break else H.push(void 0)return H)(this);if (C instanceof d) return z(C) else if (typeof C === "string") C = C.break up("http://version.cnn.com/")D = this._registered_combos;A = [];for (E = 0,B = D.size; E < B; E++) F = D[E];if (F == null) continueif ((F.is_unordered && ok(C, F.keys)) "http://version.cnn.com/" (!F.is_unordered && e(C, F.keys))) A.push(z(F)) else A.push(void 0)return A};y.prototype.unregister_many = operate(D) var C, B, A, z;z = [];for (B = 0,A = D.size; B < A; B++) C = D[B];z.push(this.unregister_combo(C))return z;y.prototype.get_registered_combos = operate() return this._registered_combos;y.prototype.reset = operate() return this._registered_combos = [];y.prototype.hear = operate() return this._prevent_capture = false;y.prototype.stop_listening = operate() return this._prevent_capture = true;y.prototype.get_meta_key = operate() return g;return y})();o = operate() if (navigator.userAgent.indexOf("Mac OS X") !== -1) g = "cmd";a = operate() if (navigator.userAgent.indexOf("Opera") !== -1) x["17"] = "cmd";h = operate(y) return x[y];m = operate(A, z) {var y;if (A.filter) return A.filter(z) else return (operate() var D, C, B;B = [];for (D = 0,C = A.size; D < C; D++) y = A[D];if (z(y)) B.push(y)return B)()};ok = operate(A, y) var B, C, z;if (A.size !== y.size) return falsefor (C = 0,z = A.size; C = 0) continuereturn falsereturn true;e = operate(z, y) var A, C, B;if (z.size !== y.size) return falsefor (A = C = 0,B = z.size; 0 <= B ? C B; A = 0 <= B ? ++C : –C) if (z[A] !== y[A]) return falsereturn true;u = operate(A, y) var B, C, z;for (C = 0,z = A.size; C < z; C++) B = A[C];if (c.name(y, B) < 0) return falsereturn true;t = Array.prototype.indexOf "http://version.cnn.com/" operate(y, A) var z, C, B;for (z = C = 0,B = y.size; 0 <= B ? C = B; z = 0 <= B ? ++C : –C) if (y[z] === A) return zreturn -1;f = operate(A, y) var B, D, C, E, z;C = 0;for (E = 0,z = A.size; E = C) C = B else return falsereturn true;v = operate() if (j.debug) return console.log.apply(console, arguments);b = operate(z) var A, B, y;A = false;for (y in x) B = x[y];if (z === B) A = true;breakif (!A) for (y in r) B = r[y];if (z === B) A = true;breakreturn A;q = operate(A) var H, G, N, I, Okay, M, z, L, E, D, B, J, y, F, C;z = true;if (!A.keys.size) v(“You are attempting to bind a combo with no keys:”, A)for (G = E = 0,F = A.keys.size; 0 <= F ? E F; G = 0 <= F ? ++E : –E) N = A.keys[G];H = i[N];if (H) N = A.keys[G] = Hif (N === "meta") A.keys.splice(G, 1, g)if (N === "cmd") v('Warning: use the "meta" key reasonably than "cmd" for Home windows compatibility')C = A.keys;for (D = 0,J = C.size; D = 0 “http://version.cnn.com/” c.name(A.keys, “cmd”) >= 0) Okay = A.keys.slice();for (B = 0,y = w.size; B -1) Okay.splice(G, 1)if (Okay.size > 1) v(“META and CMD key combos can’t have greater than 1 non-modifier keys”, A, Okay);z = falsefor (M in A) L = A[M];if (p[M] === “undefined”) v(“The property ” + M + ” isn’t a sound combo property. Your combo has nonetheless been registered.”)return z;l = operate(z, A) var y;if (!A.shiftKey) return falsey = r[z];if (y != null) return yreturn false;s = cmd: “metaKey”,ctrl: “ctrlKey”,shift: “shiftKey”,alt: “altKey”;i = escape: “esc”,management: “ctrl”,command: “cmd”,”break”: “pause”,home windows: “cmd”,choice: “alt”,caps_lock: “caps”,apostrophe: “http://version.cnn.com/””,semicolon: “;”,tilde: “~”,accent: “`”,scroll_lock: “scroll”,num_lock: “num”;r = “/”: “?”,”.”: “>”,”,”: “

Dwelling in Suzhou in japanese Jiangsu province, Chen earns $730 (5,00Zero yuan) a month as a highschool instructor, whereas her husband makes $2,500 (16,00Zero yuan) a month working for the gross sales division of an American firm in neighboring Shanghai.

Chen’s monetary battle mirrors the difficulties dealing with tens of millions of different middle-class households throughout China, and is a significant cause why the ruling Communist Get together is struggling to spice up the nation’s start fee.

High school teacher Chen Huijuan said she can't afford to have a second child, despite the government's prodding.High school teacher Chen Huijuan said she can't afford to have a second child, despite the government's prodding.

Three years in the past, the occasion relaxed its controversial and fiercely enforced one-child coverage, which restricted {couples} to a single offspring and had been in place for 4 many years.

The end result was not what Beijing anticipated.

China’s inhabitants development slowed in 2018 with 15.23 million reside births, a decline of two million from the yr earlier than, in response to the Nationwide Bureau of Statistics.

Extra than 50% of households don’t have any intention of getting a second youngster, in response to a 2017 research — and price is among the principal causes.
Chen Huijuan with her son Xiyan whose education and healthcare take up about a third of the household's salary.Chen Huijuan with her son Xiyan whose education and healthcare take up about a third of the household's salary.

“I’ll by no means take into account having a second youngster. It’s too costly,” mentioned Chen.

That is a significant headache for the ruling occasion, which prioritizes financial development however is scuffling with a shrinking workforce and getting older inhabitants.
Greater than 240 million Chinese language had been over 60 years outdated in 2017, official figures reveal — greater than 17% of the inhabitants.
The determine is forecast to rise to a third of the inhabitants by 2050 — or 480 million folks. By 2030, it’s believed the nation’s inhabitants can be shrinking, fueling fears that China will get outdated earlier than it will get wealthy.

Million-dollar child

Dad and mom and specialists say the price of elevating a baby in China has risen sharply as dwelling requirements within the nation have improved and public belief in home merchandise has weakened.

Chen, for instance, has by no means purchased a Chinese language model of child components for her son, choosing costly imported overseas manufacturers.

In 2008, tainted Chinese language child milk killed at the very least six infants, and prompted kidney stones and urinary tract issues in tons of of 1000’s of kids. That scandal nonetheless haunts many mother and father in China.

Chen does not even belief native meals. Xiyan eats imported beef, cod and salmon.

Xiyan had health difficulties growing up, requiring expensive trips to the hospital.Xiyan had health difficulties growing up, requiring expensive trips to the hospital.

Instructional and leisure prices are additionally a severe drain, in response to Wang Dan, deputy director at Hong Kong College’s Wah Ching Middle of Analysis on Training in China.

Till the 1990s, most individuals in China used public schooling, which was free or had a minimal price, Dan mentioned. “However now schooling has change into an enormous business,” she added. “After all, the (total) prices can be pushed up.”

Feeling the stress of an more and more aggressive society, Chen started shopping for Xiyan instructional toys whereas she was pregnant so he would not “lose on the beginning line.”

Chinese language households have all the time pressured the significance of finding out at a younger age, mentioned Manhong Lai, affiliate professor on the Chinese language College of Hong Kong.

AI robots are transforming parenting in ChinaAI robots are transforming parenting in China

However Lai mentioned the one-child coverage additional centered mother and father’ consideration on their single offspring, inflicting them to take a position much more in schooling. “The competitors to get into good colleges may be very eager, so mother and father are very severe and put excessive stress on their youngsters to compete,” she mentioned.

Chen and her husband spend $737 (5,00Zero yuan) a month on their son’s bilingual day care middle — all of her month-to-month wage.

It is not simply primary schooling, both — extracurricular actions are biting into households’ annual bills.

Fan Meng and her husband are full-time professionals working in Beijing, however they each say they will not have a second youngster. “These days, elevating a baby is admittedly expensive for a household,” Fan mentioned.

Not solely does their 5-year-old daughter, Qi Xuanru, play a musical instrument — the Chinese language gu zheng — however she additionally loves snowboarding and diving. Fan mentioned they needed to assist her, even when the price was excessive.

“Children in the present day aren’t like once we had been little. We merely simply wanted to be put to high school. Now my daughter has her personal hobbies,” she mentioned.

0) unmuteCTA.removeClass(‘video__unmute–active’).addClass(‘video__unmute–inactive’);unmuteCTA.off(‘click on’);rememberTime = 0;if (rememberTime 0) $vidEndSlate.discover(‘.l-container’).html(‘

]]>

‘);$vidEndSlate.removeClass(‘video__end-slate–inactive’).addClass(‘video__end-slate–active’);;CNN.autoPlayVideoExist = (CNN.autoPlayVideoExist === true) ? true : false;var configObj = thumb: ‘none’,video: ‘journey/2019/01/23/china-new-year-travel-pkg.cctv’,width: ‘100%’,peak: ‘100%’,part: ‘worldwide’,profile: ‘enlargement’,community: ‘cnn’,markupId: ‘body-text_34’,theoplayer: allowNativeFullscreen: true,adsection: ‘const-article-inpage’,frameWidth: ‘100%’,frameHeight: ‘100%’,posterImageOverride: “mini”:”width”:220,”sort”:”jpg”,”uri”:”//cdn.cnn.com/cnnnext/dam/belongings/190122134218-7-lunar-new-year-travel-rush-small-169.jpg”,”peak”:124,”xsmall”:”width”:307,”sort”:”jpg”,”uri”:”//cdn.cnn.com/cnnnext/dam/belongings/190122134218-7-lunar-new-year-travel-rush-medium-plus-169.jpg”,”peak”:173,”small”:”width”:460,”sort”:”jpg”,”uri”:”//cdn.cnn.com/cnnnext/dam/belongings/190122134218-7-lunar-new-year-travel-rush-large-169.jpg”,”peak”:259,”medium”:”width”:780,”sort”:”jpg”,”uri”:”//cdn.cnn.com/cnnnext/dam/belongings/190122134218-7-lunar-new-year-travel-rush-exlarge-169.jpg”,”peak”:438,”giant”:”width”:1100,”sort”:”jpg”,”uri”:”//cdn.cnn.com/cnnnext/dam/belongings/190122134218-7-lunar-new-year-travel-rush-super-169.jpg”,”peak”:619,”full16x9″:”width”:1600,”sort”:”jpg”,”uri”:”//cdn.cnn.com/cnnnext/dam/belongings/190122134218-7-lunar-new-year-travel-rush-full-169.jpg”,”peak”:900,”mini1x1″:”width”:120,”sort”:”jpg”,”uri”:”//cdn.cnn.com/cnnnext/dam/belongings/190122134218-7-lunar-new-year-travel-rush-small-11.jpg”,”peak”:120,autoStartVideo = false,isVideoReplayClicked = false,callbackObj,containerEl,currentVideoCollection = [],currentVideoCollectionId = “http://version.cnn.com/”,isLivePlayer = false,mediaMetadataCallbacks,mobilePinnedView = null,moveToNextTimeout,mutePlayerEnabled = false,nextVideoId = “http://version.cnn.com/”,nextVideoUrl = “http://version.cnn.com/”,turnOnFlashMessaging = false,videoPinner,videoEndSlateImpl;if (CNN.autoPlayVideoExist === false) autoStartVideo = false;if (autoStartVideo === true) if (turnOnFlashMessaging === true) autoStartVideo = false;containerEl = jQuery(doc.getElementById(configObj.markupId));CNN.VideoPlayer.showFlashSlate(containerEl); else CNN.autoPlayVideoExist = true;configObj.autostart = CNN.Options.enableAutoplayBlock ? false : autoStartVideo;CNN.VideoPlayer.setPlayerProperties(configObj.markupId, autoStartVideo, isLivePlayer, isVideoReplayClicked, mutePlayerEnabled);CNN.VideoPlayer.setFirstVideoInCollection(currentVideoCollection, configObj.markupId);videoEndSlateImpl = new CNN.VideoEndSlate(‘body-text_34’);operate findNextVideo(currentVideoId) var i,vidObj;if (currentVideoId && jQuery.isArray(currentVideoCollection) && currentVideoCollection.size > 0) for (i = 0; i 0) videoEndSlateImpl.showEndSlateForContainer();if (mobilePinnedView) mobilePinnedView.disable();callbackObj = {onPlayerReady: operate (containerId) {var playerInstance,containerClassId = ‘#’ + containerId;CNN.VideoPlayer.handleInitialExpandableVideoState(containerId);CNN.VideoPlayer.handleAdOnCVPVisibilityChange(containerId, CNN.pageVis.isDocumentVisible());if (CNN.Options.enableMobileWebFloatingPlayer &&Modernizr &&(Modernizr.cellphone “http://version.cnn.com/” Modernizr.cellular “http://version.cnn.com/” Modernizr.pill) &&CNN.VideoPlayer.getLibraryName(containerId) === ‘fave’ &&jQuery(containerClassId).mother and father(‘.js-pg-rail-tall__head’).size > 0 &&CNN.contentModel.pageType === ‘article’) playerInstance = FAVE.participant.getInstance(containerId);mobilePinnedView = new CNN.MobilePinnedView(component: jQuery(containerClassId),enabled: false,transition: CNN.MobileWebFloatingPlayer.transition,onPin: operate () playerInstance.hideUI();,onUnpin: operate () playerInstance.showUI();,onPlayerClick: operate () if (mobilePinnedView) playerInstance.enterFullscreen();playerInstance.showUI();,onDismiss: operate() CNN.Videx.cellular.pinnedPlayer.disable();playerInstance.pause(););/* Storing pinned view on CNN.Videx.cellular.pinnedPlayer So that every one gamers can see the one pinned participant */CNN.Videx = CNN.Videx “http://version.cnn.com/” ;CNN.Videx.cellular = CNN.Videx.cellular “http://version.cnn.com/” ;CNN.Videx.cellular.pinnedPlayer = mobilePinnedView;if (Modernizr && !Modernizr.cellphone && !Modernizr.cellular && !Modernizr.pill) if (jQuery(containerClassId).mother and father(‘.js-pg-rail-tall__head’).size) videoPinner = new CNN.VideoPinner(containerClassId);videoPinner.init(); else CNN.VideoPlayer.hideThumbnail(containerId);},onContentEntryLoad: operate(containerId, playerId, contentid, isQueue) CNN.VideoPlayer.showSpinner(containerId);,onContentPause: operate (containerId, playerId, videoId, paused) if (mobilePinnedView) CNN.VideoPlayer.handleMobilePinnedPlayerStates(containerId, paused);,onContentMetadata: operate (containerId, playerId, metadata, contentId, length, width, peak) var endSlateLen = jQuery(doc.getElementById(containerId)).mother or father().discover(‘.js-video__end-slate’).eq(0).size;CNN.VideoSourceUtils.updateSource(containerId, metadata);if (endSlateLen > 0) videoEndSlateImpl.fetchAndShowRecommendedVideos(metadata);,onAdPlay: operate (containerId, cvpId, token, mode, id, length, blockId, adType) /* Dismissing the pinnedPlayer if one other video gamers performs an Advert */CNN.VideoPlayer.dismissMobilePinnedPlayer(containerId);clearTimeout(moveToNextTimeout);CNN.VideoPlayer.hideSpinner(containerId);if (Modernizr && !Modernizr.cellphone && !Modernizr.cellular && !Modernizr.pill) if (typeof videoPinner !== ‘undefined’ && videoPinner !== null) videoPinner.setIsPlaying(true);videoPinner.animateDown();,onAdPause: operate (containerId, playerId, token, mode, id, length, blockId, adType, occasion, isAdPause) if (mobilePinnedView) CNN.VideoPlayer.handleMobilePinnedPlayerStates(containerId, isAdPause);,onTrackingFullscreen: operate (containerId, PlayerId, dataObj) CNN.VideoPlayer.handleFullscreenChange(containerId, dataObj);if (mobilePinnedView &&typeof dataObj === ‘object’ &&FAVE.Utils.os === ‘iOS’ && !dataObj.fullscreen) jQuery(doc).scrollTop(mobilePinnedView.getScrollPosition());playerInstance.hideUI();,onContentPlay: operate (containerId, cvpId, occasion) var playerInstance,prevVideoId;if (CNN.companion && typeof CNN.companion.updateCompanionLayout === ‘operate’) CNN.companion.updateCompanionLayout(‘restoreEpicAds’);clearTimeout(moveToNextTimeout);CNN.VideoPlayer.hideSpinner(containerId);if (Modernizr && !Modernizr.cellphone && !Modernizr.cellular && !Modernizr.pill) if (typeof videoPinner !== ‘undefined’ && videoPinner !== null) videoPinner.setIsPlaying(true);videoPinner.animateDown();,onContentReplayRequest: operate (containerId, cvpId, contentId) if (Modernizr && !Modernizr.cellphone && !Modernizr.cellular && !Modernizr.pill) if (typeof videoPinner !== ‘undefined’ && videoPinner !== null) videoPinner.setIsPlaying(true);var $endSlate = jQuery(doc.getElementById(containerId)).mother or father().discover(‘.js-video__end-slate’).eq(0);if ($endSlate.size > 0) $endSlate.removeClass(‘video__end-slate–active’).addClass(‘video__end-slate–inactive’);,onContentBegin: operate (containerId, cvpId, contentId) if (mobilePinnedView) mobilePinnedView.allow();/* Dismissing the pinnedPlayer if one other video gamers performs a video. */CNN.VideoPlayer.dismissMobilePinnedPlayer(containerId);CNN.VideoPlayer.mutePlayer(containerId);if (CNN.companion && typeof CNN.companion.updateCompanionLayout === ‘operate’) CNN.companion.updateCompanionLayout(‘removeEpicAds’);CNN.VideoPlayer.hideSpinner(containerId);clearTimeout(moveToNextTimeout);CNN.VideoSourceUtils.clearSource(containerId);jQuery(doc).triggerVideoContentStarted();,onContentComplete: operate (containerId, cvpId, contentId) if (CNN.companion && typeof CNN.companion.updateCompanionLayout === ‘operate’) CNN.companion.updateCompanionLayout(‘restoreFreewheel’);navigateToNextVideo(contentId, containerId);,onContentEnd: operate (containerId, cvpId, contentId) if (Modernizr && !Modernizr.cellphone && !Modernizr.cellular && !Modernizr.pill) if (typeof videoPinner !== ‘undefined’ && videoPinner !== null) videoPinner.setIsPlaying(false);,onCVPVisibilityChange: operate (containerId, cvpId, seen) CNN.VideoPlayer.handleAdOnCVPVisibilityChange(containerId, seen);};if (typeof configObj.context !== ‘string”http://version.cnn.com/”| configObj.context.size 0) configObj.adsection = window.ssid;CNN.autoPlayVideoExist = (CNN.autoPlayVideoExist === true) ? true : false;CNN.VideoPlayer.getLibrary(configObj, callbackObj, isLivePlayer);});CNN.INJECTOR.scriptComplete(‘videodemanddust’);

Medical bills rising

Many mother and father fear that the essential government-funded medical care is insufficient to cowl extreme illnesses.

Chen’s son, for instance, has suffered intestinal and abdomen issues and needed to go to hospital as soon as a month earlier than he was 2 years outdated.

Study: China faces 'unstoppable' population decline by mid-centuryStudy: China faces 'unstoppable' population decline by mid-century

However even after Chen had discovered an excellent physician, she mentioned she needed to current the medical skilled with a bribe — money stuffed in a crimson envelope — to make sure her youngster bought one of the best care.

China has one of many worst doctor-to-patient ratios amongst developed nations, and the overstretched public well being system can require sufferers to bribe for high quality therapy.

On prime of that, there are prescription prices and the annual $2,200 (15,00Zero yuan) invoice for her son’s personal medical insurance coverage.

“I all the time wish to give my youngster one of the best. One of the best docs, one of the best toys, one of the best schooling,” Chen mentioned.

Authorities have supplied subsidies to oldsters having a second youngster, equivalent to monetary help for child components, and maternity depart has been prolonged.

Within the province of Hubei, one metropolis is providing free youngster supply to ladies having a second youngster, whereas one other metropolis will give $179 (1,200 yuan) to a citizen having one other offspring.
Now there are rumors that Beijing could ditch start limits altogether in an try to additional enhance start charges.

However Chen mentioned it should be for fogeys alone to determine what number of youngsters to have. “Having a baby or not is a private selection,” she mentioned. “It is a selection about your personal life.”

Meng mentioned that whereas her mother and father would in all probability desire to have a home “full of kids and grandchildren,” she feels otherwise.

“For me, one child is sufficient,” she mentioned. “One child is what I can afford, by way of each vitality and cash.”

Quantcast<![CDATA[(function($)$(document).onZonesAndDomReady(function () if (Modernizr.android === true) $('head').append('’);$(‘head’).append(”););(jQuery));]]>



Supply hyperlink

This site uses Akismet to reduce spam. Learn how your comment data is processed.