One of my favorite holidays growing up other than Christmas was Chinese New Year. While Christmas was mostly an excuse to exchange presents (#consumerism), Chinese New Year was an excuse to eat good food, relax and be merry.
Since most of the time I never got Chinese New Year off (my school started giving the day off sometime in high school), my family just ate foods that took slightly more work than the foods we'd normally eat throughout the week. At night, my parents would turn on the TV to catch the elaborate Chinese New Year festivities that always aired on Chinese TV while I went back to doing homework.
I'm back to not having school off on Chinese New Year and last year, the dining halls made an effort to have some Chinese foods (though it was a far cry from Chinese food). I spent the night watching the broadcast of Chinese New Year Gala with some international friends from down the hall.
This year is the year of the sheep. My friends joked that it was my year since I tend to associate myself with sheep (it's less of a love of sheep and more of a play on words with my last name). I've decided to celebrate the sheep in literature and pop culture.
It's one of the most famous lines from Little Prince and one of my favorite. It's full of innocence and wondering about the world, much like most of the book. I really enjoy reading Little Prince when I feel introspective and mellow.
I'm also very excited for the Little Prince movie, despite the fact I don't understand French.
Every time I think of that book, I think of the Alps and sheep/goats. I'm not the only one since the Swiss commemorative coin for Heidi is one of Heidi with a running goat. While goats and sheep are not the same thing, 2015 is according to some news sources also the year of the "horned animal".
A nursery rhyme that doesn't really have any meaning to it for the most part but according to Wikipedia, it may be potentially referring to slave trade.
Rather comedic shorts that used to air Disney Channel (originally premiered on BBC shorts) but I'm not sure if it's still on air in the US anymore. In either case, some videos are up on YouTube and are quite enjoyable.
What are some of your favorite animals in literature?


text:
Christmas show, Sister kelleher reminds us about service
Series: Latin Waves
Subtitle: Sister Elizabeth Kelleher speaks about the moral need to build social housing
Featured Speakers/Commentators: Sister Kelleher with music by Dana Lyons
Contributor: latinwaves@gmail.com [Contact Contributor]
Summary: This interview aired in 2011 and is still relevant today, Sister Kelleher passed on Aug 16 2013 and her life continues to be an inspiration to all***Gives us all something to think about at this time of year**
We speak to Sister Elizabeth Kelleher, an 85 year old nun with the Franciscan Sisters of the Atonement, we talk about her efforts to stop more gentrification in Vancouver's Downtown Eastside the poorest postal code in Canada.
Sister Elizabeth is a pillar in the Downtown Eastside where she tirelessly gives of her time and continues to be a source of inspiration for many, many people. She operates a soup kitchen that feeds between 300 and 500 of the city's most poverty stricken each day.
It is estimated that there are over 10,000 homeless people in BC , of which 32 percent are aboriginal, and amongst women, 50 percent. A homeless person dies every 12 days in B.C. Conservative Estimates put the national homeless numbers at close to 300,000. The annual cost of homelessness in Canada in 2007 was approximately $4.5 to $6 billion in emergency services, community organizations, and non-profits. The cost both financially and morally of doing nothing is tremendous.
Credits: Stuart and Sylvia Richardson,
Latin Waves Grassroots Media
www.latinwavesmedia.com
Latin Waves is syndicated in many Canadian cities and would welcome any participating stations to get in touch with us or visit our website at www.latinwavesmedia.com for samples of our work.
If you find a regular home for us in your programming schedule just let us know so we can promote your station on our website
Version 1: Sister Elizabeth Kelleher speaks about the moral need to build social housing
Description: Sister Elizabeth Kelleher speaks about the moral need to build social housing
Location Recorded: Vancouver Studios www.latinwavesmedia.com
1 Kelleher Interview 00:25:00 192Kbps mp3

redpajama_set_name: RedPajamaCommonCrawl


text:
My review of Thief (2014)
Thread: My review of Thief (2014)
29th Dec 2020 09:29 #1
Hi guys, I recently purchased Thief (2014) and I started by making some notes for my own reference, but ended up fleshing it out a little more to read more like an actual review. So, I thought I'd share it with you in case someone can find any value in it.
After being in lockdown (ironically the name of the prologue of the game) for weeks again and having watched multiple gameplay and review videos of Thief (2014) out of a blend of boredom and curiosity, I found it on Steam in the winter sale for just £2.39. I told myself that I wouldn't buy it, but curiosity got the better of me as I wanted to see how it played firsthand, as well as how it compared performance-wise to Unreal Tournament 3 (as they use the same engine yet the required hardware specs stated are vastly different).
Thief 4, essentially, requires a massive 23.44 Gb of storage space. This game feels more like a sequel specifically to Thief: Deadly Shadows than either of the first two games, with a similar game structure (a city hub that acts as a central point to find equipment shops, missions, and side quests) and visual style (both games use a version of the Unreal Engine which explains the latter). Gameplay-wise, it feels more like the Far Cry series after, and including, Far Cry 3. Modern UI elements, full mini map, objective markers, dramatic mission notification sounds, incidental music, scripted level events and interactions, mashable button scripted events, takedowns, collecting journals and letters, picking flowers for power-ups, dream sequences, etc, etc. Luckily the HUD elements are all split-up individually so you can turn any and all of them off, allowing you to find the right balance for you. This game is clearly one which was made with consoles in mind, due to over-simplified gameplay and janky controls intended to be mapped to a game controller. The game strangely requires multiple times the system requirements of the flagship Unreal Engine 3 game, Unreal Tournament 3, even though they both use the same engine and the Thief levels aren't a whole lot bigger than those found in UT3. I guess they are more detailed, but not THAT much more detailed. When playing UT3, the fans on my laptop barely kick in, if at all. When playing Thief, the fans ramp up to about 50% just while sitting at the main menu screen, and are loud enough to require me to have to turn the volume up or wear headphones. I played the game at both 1280x720 and 1600x900 resolutions, with little impact on performance using the higher one. I used the High graphical quality settings in most cases, but turned everything such as FXAA and SSAA off.
The game is set in a Victorian-like era, rather than a Medieval one. Due to the use of a city hub type of structure again, there's a lot of tedious navigating around, backtracking, and loading screens. And again, like T-DS, you have to walk around and find specific people or areas around the city in order to do even the simplest of tasks such as sell loot and buy items, get your next mission, or find side quests. There's an emphasis on travelling above ground level, and the verticality is quite neat, but requires a lot of monotonous jumping, climbing, mantling ledges and grabbing pre-placed ropes. You've got no sword, so if you find yourself cornered in melee combat... you're pretty much screwed. The blackjack is 'always armed', even though you can't see it, as if you press the 'fire' button, Garrett will swing it in front of him. The bow is a strange futuristic-looking compound-type, and is bizarrely treated as its own item where there's a separate key to use it. The lighting and shadows are generally good-looking, but in reality to the game are quite bright and irrelevant, respectively... which in a Thief game is a crime. You'll often find yourself in bright light, but the light gem says you're in the dark. Shadows are much less pronounced, instead being represented by just slightly darker areas normally found around the edges of an area or room. I feel the use of the lockers that you can hide in are too over-used in some missions, which is a side-effect of the poor lighting and shadows. There's literally 'nowhere to hide' in the natural environment so if you're seen and pursued, getting inside a locker is your only hope of survival. The A.I. is questionable, as remarked on by other players, and guards return to their normal routines shortly after being on red alert... even ignoring dead bodies once they return to the scene of a crime that's in full view. Another point of controversy is the loot. I'm not too bothered by the animation that occurs when the player picks up every single piece of loot, as it is quite immersive. However, one thing that immediately strikes you is how the loot is worth bugger all... with even lavish items only being worth a few gold.
So far I'm only just up to the brothel mission, but don't care much for the story thus far. After playing the original two Thief games on the Dark Engine for the best part of 20 years, and only dabbling with the third in the series, this one is too difficult for me to get acquainted with. It feels more like an action game with stealth elements, rather than a stealth game with action elements. There's some fun to be had, but a lot of frustration too. It has a few neat ideas and features, but these are overshadowed, pardon the pun, by the things it gets horribly wrong such as bizarre controls and unwelcome modern gameplay trends and mechanics.
Last edited by Garras; 2nd Jan 2021 at 09:37.
31st Dec 2020 00:38 #2
Grandmauden
Location: Shawano County, Wisconsin
It feels more like an action game with stealth elements, rather than a stealth game with action elements. There's some fun to be had, but a lot of frustration too. It has a few neat ideas and features, but these are overshadowed, pardon the pun, by the things it gets horribly wrong such as bizarre controls and unwelcome modern gameplay trends and mechanics.
I agree wholeheartedly with this. Every now and then, Thief 2014 offers a glimpse of what could've been a great game, but then squanders its potential with boring characters, cliché writing, frustrating level design, and pointless action sequences. Heck, the only reason it's still on my hard drive is that the completionist in me still wants to nab the last few achievements I'm missing.
When I want to play a modern Thief, I do a pacifist run of the Dishonored games.
2nd Jan 2021 16:37 #3
Location: the Sheeple Pen
Good review Garras! I somewhat disagree about "action game with stealth elements, rather than a stealth game with action elements" though. Stealth is one of the few things that keeps Thief afloat, but I think it does it fairly well. The first two Thief games are pure stealth, but Thi4f adds a bit of action to the mix... which, I must say, is not at all a bad thing. The older games offer an option for more action-orientated gameplay with the fire arrows and mines (does anyone ever really use those?) and stuff, but that part of the game is just awfully broken in my opinion. So yeah, I don't think that stealth is what lets the "new" Thief down - it's most of the other things in the game that are either mediocre or just bad! As for Dishonored, I think there's a good example of an action game with stealth elements - what fun are all those cool super powers if you never get to use them?
Originally Posted by Garras
Thief 4, essentially, requires a massive 23.44 Gb of storage space.
I think 23.44 Gb is remarkably little for an AAA game these days!
3rd Jan 2021 07:12 #4
Level 10,000 achieved
Yeah even by 2014 standards 23GB is on the slimmer side. To compare it to some other 2014 AAA titles: Alien Isolation: 35GB, Far Cry 4: 30GB, Wolfenstein - The New Order: 47GB.
And UT3 and Thief might both use Unreal Engine 3 but they came out 7 YEARS APART! The engine didn't stay stagnant during that time, so no, you can't expect the same features/performance from those 2 games.
And I really don't know how anyone who's actually played the game can think it's an action game first and foremost? If you'd just seen the trailers, which focused on the action setpieces, sure, I can see how you'd get that impression. But actually playing it? Wasn't at least 95% of what you did in the game stealth? I mean I guess you could just run around and get into fights all the time, by why would you?
Quick Navigation Thief (2014) General Discussion Top Back to Forum
Forum Rules and Privacy Policy


text:
using namespace std;
using namespace vg;
using namespace vg::subcommand;

void help_inject(char** argv) {
    cerr << "usage: " << argv[0] << " inject [options] input.[bam|sam|cram] >output.gam" << endl
         << endl
         << "options:" << endl
         << "    -x, --xg-name FILE       use this graph or xg index (required)" << endl
         << "    -t, --threads N          number of threads to use" << endl;
}

int main_inject(int argc, char** argv) {

    if (argc == 2) {
        help_inject(argv);
    }

    string xg_name;
    int threads = 1;

    int c;
    optind = 2;
    while (true) {
        static struct option long_options[] =
        {
          {"help", no_argument, 0, 'h'},
          {"xg-name", required_argument, 0, 'x'},
          {"threads", required_argument, 0, 't'},
          {0, 0, 0, 0}
        };

        int option_index = 0;
        c = getopt_long (argc, argv, "hx:t:",
                         long_options, &option_index);

        // Detect the end of the options.
        if (c == -1) break;

        switch (c)
        {

        case 'x':
            xg_name = optarg;
            break;

        case 't':
          threads = parse<int>(optarg);
          omp_set_num_threads(threads);
          break;

        case 'h':
        case '?':
          help_inject(argv);
          exit(1);
          break;

        default:
          abort ();
        }
    }

    string file_name = get_input_file_name(optind, argc, argv);

    // We require an XG index
    if (xg_name.empty()) {
        cerr << "error[vg inject]: XG index (-x) is required" << endl;
        exit(1);
    }
    unique_ptr<PathHandleGraph> path_handle_graph = vg::io::VPKG::load_one<PathHandleGraph>(xg_name);
    bdsg::PathPositionOverlayHelper overlay_helper;
    PathPositionHandleGraph* xgidx = overlay_helper.apply(path_handle_graph.get());

    vg::io::ProtobufEmitter<Alignment> buf(cout);
    function<void(Alignment&)> lambda = [&buf](Alignment& aln) {
#pragma omp critical (buf)
        {
            buf.write(std::move(aln));
        }
    };
    if (threads > 1) {
        hts_for_each_parallel(file_name, lambda, xgidx);
    } else {
        hts_for_each(file_name, lambda, xgidx);
    }
    return 0;
}

// Register subcommand
static Subcommand vg_inject("inject", "lift over alignments for the graph", main_inject);

redpajama_set_name: RedPajamaGithub


The last two decades have seen far-reaching changes in the structure of the international monetary system. Europe moved from the European Monetary System to the euro. China adopted a dollar peg and then moved to a basket, band and crawl in 2005. Emerging markets passed through a series of crises, leading some to adopt regimes of greater exchange rate flexibility and others to rethink the pace of capital account liberalization. Interpreting these developments is no easy task: some observers conclude that recent trends are confirmation of the 'bipolar view' that intermediate exchange rate arrangements are disappearing, while members of the 'fear of floating school' conclude precisely the opposite. We show that the two views can be reconciled if one distinguishes countries by their stage of economic and financial development. Among the advanced countries, intermediate regimes have essentially disappeared; this supports the bipolar view for the group of countries for which it was first developed. Within this subgroup, the dominant movement has been toward hard pegs, reflecting monetary unification in Europe. While emerging markets have also seen a decline in the prevalence of intermediate arrangements, these regimes still account for more than a third of the relevant subsample. Here the majority of the evacuees have moved to floats rather than fixes, reflecting the absence of EMU-like arrangements in other parts of the world. Among developing countries, the prevalence of intermediate regimes has again declined, but less dramatically. Where these regimes accounted for two-thirds of the developing country subsample in 1990, they account for a bit more than half of that subsample today. As with emerging markets, the majority of those abandoning the middle have moved to floats rather than hard pegs. The gradual nature of these trends does not suggest that intermediate regimes will disappear outside the advanced countries anytime soon.


text:
A Writing Life: Lâle Davidson
With an emphasis on fabulism, magic realism, and genre bending
General Bio
Favorite Writing Prompts
Metaphor and Simile Prompt
Random Sentences and Explanation
Synesthesia, Metaphor and Oranges
Natalie Goldberg's Visual Verb Exercise
Hook Them With Your Opening Line, but. . .What I Learned at the GrubStreet Shop Talk Happy Hour
Posted on May 27, 2016 by laledavidson
I was late to the GrubStreet Shop Talk Happy Hour, for which I had paid $75 to talk with an agent and editor. Dan Loedel, a lanky young man with a goatee and black-rimmed glasses, who works for Scribner, scooted over to the black window bench to make room for me. I introduced myself and tried my "pitch" on him: "After her mother spontaneously combusted on the Altiplano between Bolivia and Chile, Fallon struggles to make to grasp her identity and reality. Fifteen years later, her brother, who is bi-polar," I could hear him sigh at this point, but I pressed on.
He sat back and wrinkled his nose. "Your pitch is too plotty. As an editor of literary fiction, I'm less interested in plot and more interested in language and style. What are your "comparables?" That's shoptalk for authors you might compare yourself to.
I suggested magical realists like Aimee Bender and Karen Russell. That was strike two.
"People in the publishing industry don't call Karen Russell's or Aimee Bender's writing magical realism."
"What would you call it?" I asked.
He thought for a moment. "I'd call it literary fiction that pushes the boundaries of reality."
Okay, I admit it. I was discouraged. I was hoping people would say, "Wow, fascinating, send it to me" or "Sounds original, ground breaking, Pulitzer Prize winning." After all, little grandiosity goes a long way towards getting a person to stick to a project for many years.
Part way through the happy hour we were supposed to mingle. Dan introduced me to an editor from William Morrow, and she agreed. She said, "spontaneous combustion" raised so many questions about whether I was I or joking, talking about reality or metaphor, that she couldn't listen to the rest of the pitch. She thought I should simply say, "After the mysterious death of her mother . . ."
My friends all groaned when I told them this later. They love that opening line.
But later, at the GrubStreet Manuscript Mart, where agents and editors read the first 20 pages of you manuscript and comment, Laura Biagi from the Jean V. Naggar Agency agreed that I should start with something less confusing, or go into more detail about the combustion, or start in real time in the present with the main character and give us enough about her that we start to really care about her. Here's the former first paragraph:
After her mother spontaneously combusted on the altiplano between Chile and Bolivia, Fallon turned her head, saw herself reflected, beautiful and male, in the face of her older brother Ovid and fell in love. Fifteen years later, navigating her way across the crowded floor of the North Star Pub to serve drinks to tourists and Wall Street brokers, she was still struggling to disentangle herself from both events.
Ovid had called her again yesterday.
I told her I was making a bow to the opening line of Gabriel Garcia Marquez' novel, One Hundred Years of Solitude, "Many years later, as he faced the firing squad, Colonel Aureliano Buendía was to remember that distant afternoon when his father took him to discover ice." She pointed out that the his novel then goes into that scene of the discovery of ice, whereas my first paragraph starts in the past, brings us too briefly to the pub and then goes the previous day. Too much too fast.
I've been hanging out with poets too much, damn it, who like compressed language, and I've been writing a lot of short stories where things have to happen fast. But in a novel, apparently, we need to start a little slower.
Peter Blackstone from Grove also agreed that my first paragraph was front loading the novel too much.
So, I learned a valuable lesson. Start your novel with a hook but don't give people whiplash.
Course, a friend of mine who works for GrubStreet would say, "You've also learned that the big publishers aren't adventurous." They say they want something different, but not that different. After all, it has to be something that 100,000 people would like. He had personally given up on them, claiming that the best work is coming out of small presses. I can attest to the small press and magazine exuberance and inventiveness at the AWP (Associated Writers and Writing Programs) bookfair.
But if you want to quit your day job so that you can write more, you have to please the big publishers.
I've vowed to give it a shot. Then I'm going to the small presses.
Filed under Advice, Humor, Tools of the Trade and tagged Aimee Bender, comparables, GrubStreet, hooks, Karen Russell, magic realism, opening lines, Scribner |	Leave a comment
Buy ACW Book of the Year, STRANGE APPETITES with Paypal now:
Buy Stories We Tell: Tales from the Story Circle of the Capital District with Paypal now:
Visit my Facebook page, because I'm sure you've got nothing else to do…
Laledavidson@gmail.com
Davidsol@sunyacc.edu
Artists Unite Issue
Eclectica Magazine
Out of the Ordinary: a Times Union Blog
Vogages in Psychotherapy
women of mass disseminaton
Storytime With Elise Stefanik
What is Literary Fiction and Should it be a Requirement in Writing Workshops?
Speaking the Language of Trees
Trump's Covid-19 Cocktail* (Guaranteed to cure your quarantine blues!)
Strong Female Protagonists in Science Fiction
Unraveling Lovecraft's The Dream-Quest
The Potbellied Virgin by Alicia Yánez Cossío
Does Fantasy Dodge or Enhance Reality?
Fantasy's Half Sister-Magic Realism
Cone Oddyssey
Cimarron Review
"My Sister'sLabyrinth" in Eclectica
One Hundred Years of Solitude 50th Anniversary
How to overcome reading resistance
Quick Take: Black Warrior Review
Those darned submission guidelines
From the Andes to the Amazon: What I did this summer (essay for school)
Why Bill Condon's Beauty is a blockbuster beast
the stanza
stitch spectacular
English Rules
Small Press Reviews
Saratoga Springs Politics
BERKELEY FICTION REVIEW
MovieBabble
Rachael Lyon
stillshalott
Hudson Valley Writers Guild
Constitutionalism and Democracy
Live to Write - Write to Live
Cease, Cows
Pep Talks
Science Fictiohn
msshartle on What is Literary Fiction and S…
Kathleen McCoy on Trump's Covid-19 Cocktai…
laledavidson on A View of the Universe (from S…
Jesper Christman on A View of the Universe (from S…
laledavidson on Fantasy's Half Sister-Ma…
a little room for poetry and the writing life
on the poking edge of embroidery
Sporadically reviewing small press books since 2007 (or thereabouts)...
Probing Politics Affecting Saratoga Springs. By John Kaufmann.
The Casual Way to Discuss Movies
Kathleen McCoy on Poetry
a community of writers based in New York's Capital Region
We live to write and write to live ... professional writers talk about the craft and business of writing


text:
Showing results by author "Christine Wells" in All Categories
The Wife's Tale
By: Christine Wells
Narrated by: Jennifer Vuletic
An unforgettable audiobook that transports the listener from modern-day Australia to the windswept Isle of Wight and the courtrooms of London in the 1780s. With her marriage on the rocks, workaholic lawyer Liz Jones agrees to visit Seagrove, a stately home on the Isle of Wight, while she quietly investigates its provenance on behalf of a client. When she discovers Seagrove is linked to a notorious eighteenth-century court case, Liz becomes fascinated - not only by the house and its history but also by its current owners.
Interesting take on a 'romance'
By Vanessa Young on 06-06-2016
The Juliet Code
It's 1947, and the war is over, but Juliet Barnard is still tormented by secrets. She was a British agent and wireless operator in occupied Paris until her mission went critically wrong. Juliet was caught by the Germans, imprisoned and tortured in a mansion in Paris' Avenue Foch. Now that she's home, Juliet can't - or won't - relive the horrors that occurred in that place. Nor will she speak about Sturmbannführer Strasser, the manipulative Nazi who held her captive....
The Traitor's Girl
After receiving a mysterious summons from her long-lost grandmother, Australian teacher Annabel Logan agrees to visit her home in the Cotswolds. But when she arrives at the magnificent Beechwood Hall, it appears abandoned, and the local villagers have no idea where the reclusive Caroline Banks might be. The one person who might know something is enigmatic journalist Simon Culpepper. He reveals that Caroline Banks was once known as Carrie Granger.
Sisters of the Resistance
A Novel of Catherine Dior's Paris Spy Network
Narrated by: Saskia Marleveld
France, 1944: The Nazis still occupy Paris, and 25-year-old Gabby Foucher hates these enemies, though, as the concierge of 10 rue Royale, she makes it a point to avoid trouble, unlike her sister, Yvette. Until she, like her sister, is recruited into the Resistance by Catherine Dior - sister of the fashion designer Christian Dior. Gabby and Yvette are both swept into the world of spies, fugitives, and Resistance workers, and it doesn't take long for the sisters to realize that their lives are in danger.


text:
N. Korea to launch large-scale air and land exercise – report
Published time: 28 Apr, 2013 10:36
AFP Photo / Ed Jones © AFP
North Korea is preparing to carry out a large-scale combined air and land exercises along its Yellow Sea coast, Yonhap News Agency quoted a government source in South Korea saying.
The source claims that South Korean intelligence believes its neighbor may conduct an exercise around the city of Nampho involving aircraft and field artillery units. Nampho is the most populous port city in South Pyongan Province, and lies southwest of the North Korean capital Pyongyang.
"There is no way to tell when the drill will actually kick off, but there is a chance the North may opt to launch short-range missiles as part of a show of force," an anonymous official said.
Other sources in Seoul said that while there are clear signs of movement of military forces, there is no evidence that the exercise is imminent.
"A large part of the North's military is currently being used to help spring farming, although the South remains on guard against potential blitzkrieg-like attacks," an officer said.
He added that with the complete withdrawal of South Korean personnel from the Kaesong industrial complex this week, the North may seek to further heighten military tensions.
Pyongyang has been vocal that the ongoing Foal Eagle joint exercise by South Korean and US is a rehearsal for the invasion of the North and warned it will do its best to deter any aggression, going as far as using their nuclear arsenal.
Tensions between the North and South have hit their highest levels in decades, with the North conducting its third nuclear test on February 12. Pyongyang had repeatedly threatened to attack both South Korea and the US.
Earlier in April, North Korea reportedly deployed two additional short-range ballistic missile systems on its eastern shore.
The US is also strengthening its missile defense system in the region. B-2 stealth bombers, F-22 fighter jets and the USS Fitzgerald destroyer, equipped with an Aegis anti-ballistic missile system, have been deployed to South Korea.
Moscow has warned against aggravating the Korean crisis with further military drills: "One just shouldn't scare anyone with military maneuvers and there's a chance that everything will calm down," Russian Foreign Minister Sergey Lavrov said.
N. Korea 'issues ultimatum' to the South, warns of 'immediate retaliation'
Iran plans oil exports to North Korea
Missile movement: Two Scuds 'deployed' to N. Korea's east coast
US rejects N. Korea's demands to be recognized as a nuclear arms state
US national to stand trial in N. Korea for 'plotting to topple' govt


text:
Doctor sues patient for $25,000 over negative Yelp review
Katie Mather
Dec 5th 2019 4:22PM
Footage of a dentist riding a hoverboard while he extracts a patient's tooth has gone viral. Dr. Seth Lookhart is now being charged with "unlawful dental acts," as well as Medicaid fraud and theft.
Veronica Wilhelm, the patient, was sedated during the operation in 2016 and had no idea Lookhart was riding a hoverboard or even filming her surgery. According to CNN, it was when investigators got a hold of the footage and contacted her to confirm she was the patient in the video that she learned what had happened.
In the video, Lookhart is seen pulling out Wilhelm's tooth as the camera pans down to show he's standing on a hoverboard. He hands the tooth over to his assistant and zooms out of the room before riding down the hallway with his arms up in celebration.
Inside Edition reported that Lookhart was so impressed by the video that he texted it to eight people. It eventually made its way from Anchorage, Alaska to New York City, where dentist Dr. Brian Kantor was shocked by the clip.
"It was so unprofessional and unethical, what this doctor did," Kantor told Inside Edition.
Now, Lookhart is on trial for more than 40 charges. In addition to filming Wilhelm without her consent and failing to tell her that he would be riding a hoverboard during the operation, Lookhart was accused of billing Medicaid more than $25,000 for unnecessary procedures, scheming to defraud Alaska Medicaid out of $10,000 and stealing more than $25,000 in diverted funds from the Alaska Dental Arts.
His dentistry license was revoked in 2017, a year after the hoverboard incident. His trial started on Nov. 12 and his lawyer argues that he should not lose his license for good over something "idiotic."
"I've been doing this for 30 years. He's not the first person to do something idiotic. I've seen things a lot worse and nobody's ever had criminal charges filed against them. As the law is written, I don't believe that's a crime," Lookhart's attorney Paul Stockler told CNN.
"I just think that what you did was outrageous, narcissistic, you know, and crazy," Wilhelm said to Lookhart in court, according to KTUU. "I forgive you for all of that, but there's obviously a high-priced lesson that you're going to have to learn."


Aortic aneurysm – pathological local expansion of the main artery, due to the weakness of its walls. Depending on the localization of an aortic aneurysm, pain in the chest or abdomen, the presence of a pulsating tumor formation, symptoms of compression of neighboring organs: shortness of breath, cough, dysphonia, dysphagia, edema and cyanosis of the face and neck can manifest themselves. The basis for the diagnosis of aortic aneurysm are X-ray (chest and abdominal radiography, aortography) and ultrasound methods (USDG, ultrasound scan of the chest / abdominal aorta). Surgical treatment of an aneurysm involves performing its resection with aortic prosthesis or closed endoluminal prosthetics of the aneurysm with a special endoprosthesis.
Aortic aneurysm is characterized by an irreversible expansion of the arterial lumen in a limited area. The ratio of aortic aneurysms of different localization is approximately as follows: aneurysms of the abdominal aorta account for 37% of cases, ascending aorta – 23%, aortic arch – 19%, descending thoracic aorta – 19.5%. Thus, the proportion of aneurysms of the thoracic aorta in cardiology accounts for almost 2/3 of the total pathology. Thoracic aortic aneurysms are often combined with other aortic defects – aortic insufficiency and aortic coarctation.
In vascular surgery, several classifications of aortic aneurysms have been proposed, taking into account their localization by segment, shape, wall structure, and etiology. In accordance with the segmental classification, the following are distinguished: Valsalva sinus aneurysm, ascending aortic aneurysm, aortic arch aneurysm, descending aortic aneurysm, abdominal aortic aneurysm, combined localization aneurysm – thoracoabdominal aorta.
Evaluation of the morphological structure of aortic aneurysms allows us to divide them into true and false (pseudoaneurysms). A true aneurysm is characterized by thinning and protruding out of all layers of the aorta. By etiology, true aortic aneurysms are usually atherosclerotic or syphilitic. The wall of the false aneurysm is represented by connective tissue formed due to the organization of a pulsating hematoma; own walls of the aorta in the formation of a false aneurysm is not involved. Pseudoaneurysms of origin are more often traumatic and postoperative.
In shape, saccular and spindle-shaped aortic aneurysms are found: the former are characterized by a local protrusion of the wall, the latter by a diffuse expansion of the entire diameter of the aorta. Normally, in adults, the diameter of the ascending aorta is about 3 cm, the descending thoracic aorta is 2.5 cm, and the abdominal aorta is 2 cm. Aortic aneurysm is said to increase by 2 or more times the diameter of the vessel in a limited area.
Considering the clinical course, there are uncomplicated, complicated, exfoliating aortic aneurysms. The specific complications of aortic aneurysms include ruptures of the aneurysmal sac, accompanied by massive internal bleeding and the formation of hematomas; thrombosis of aneurysm and arterial thromboembolism; cellulitis of surrounding tissues due to aneurysm infection. A special type is a dissecting aortic aneurysm, when, through the rupture of the inner lining, blood penetrates between the layers of the artery wall and spreads under pressure along the vessel, gradually dissecting it.
The etiological classification of aortic aneurysms is described in detail when considering the causes of the disease.
According to etiology, all aortic aneurysms can be divided into congenital and acquired. The formation of congenital aneurysms is associated with hereditary diseases of the aortic wall – Marfan syndrome, fibrous dysplasia, Ehlers-Danlos syndrome, Erdheim syndrome, hereditary elastin deficiency, etc.
Acquired aortic aneurysms of inflammatory etiology result from specific and nonspecific aortitis with fungal infections of the aorta, syphilis, and postoperative infections. Non-inflammatory or degenerative aortic aneurysms include cases of disease caused by atherosclerosis, suture defects and prostheses. Mechanical damage to the aorta leads to the formation of hemodynamic-poststenotic and traumatic aneurysms. Idiopathic aneurysms develop in aortic medionecrosis.
Risk factors for the formation of aortic aneurysms are considered to be old age, male gender, arterial hypertension, tobacco smoking and alcohol abuse, hereditary burden.
In addition to the defectiveness of the aortic wall, mechanical and hemodynamic factors are involved in the formation of the aneurysm. Aortic aneurysms are more likely to occur in functionally stressful areas experiencing increased stress due to high blood flow velocity, pulse wave steepness and its shape. Chronic aortic trauma, as well as increased activity of proteolytic enzymes, cause destruction of the elastic framework and nonspecific degenerative changes in the vessel wall.
Formed aortic aneurysm is progressively increasing in size, as the tension on its walls increases in proportion to the expansion of the diameter. The blood flow in the aneurysmal sac slows down and becomes turbulent. Only about 45% of the blood volume in the aneurysm enters the distal arterial bed. This is due to the fact that, getting into the aneurysmal cavity, blood rushes along the walls, and the central flow is constrained by the mechanism of turbulence and the presence of thrombotic masses in the aneurysm. The presence of blood clots in the cavity of the aneurysm is a risk factor for thromboembolism of the distal aortic branches.
Clinical manifestations of aortic aneurysms are variable and are determined by the location, size of the aneurysmal sac, its length, and the etiology of the disease. Aortic aneurysms may be asymptomatic or accompanied by scanty symptomatology and be detected at routine check-ups. The leading manifestation of an aortic aneurysm is the pain caused by a lesion of the aorta wall, its stretching or compression syndrome.
The clinic of abdominal aortic aneurysm is manifested by transient or persistent spilled pain, discomfort in the abdomen, belching, weight in the epigastrium, a feeling of fullness in the stomach, nausea, vomiting, intestinal dysfunction, weight loss. Symptomatology may be associated with compression of the cardia, 12 duodenal ulcer, and involvement of the visceral arteries. Often, patients independently determine the presence of increased pulsation in the abdomen. Palpation is determined by a tense, dense, painful pulsating formation.
For the aneurysm of the ascending aorta, typical pain in the heart or behind the sternum, caused by compression or stenosis of the coronary arteries. Patients with aortic insufficiency are worried about shortness of breath, tachycardia, dizziness. Large aneurysms cause the development of the syndrome of the superior vena cava with headaches, swelling of the face and upper torso.
Aortic arch aneurysm leads to compression of the esophagus with symptoms of dysphagia; in case of clamping of the recurrent nerve, hoarseness of the voice (dysphonia), dry cough occurs; the interest of the vagus nerve is accompanied by bradycardia and salivation. With compression of the trachea and bronchi, shortness of breath and wheezing develop; with compression of the lung root – congestion and frequent pneumonia.
When irritated by the aneurysm of the descending aorta of the periaortic sympathetic plexus, pain arises in the left hand and shoulder blade. In case of involvement of the intercostal arteries, ischemia of the spinal cord, paraparesis and paraplegia may develop. Compression of the vertebrae is accompanied by their stabilization, degeneration and displacement with the formation of kyphosis; compression of blood vessels and nerves is clinically manifested by radicular and intercostal neuralgia.
Aortic aneurysms can be complicated by a rupture with the development of massive bleeding, collapse, shock, and acute heart failure. Aneurysm breakthrough can occur in the system of the superior vena cava, pericardial and pleural cavity, esophagus, abdominal cavity. At the same time, severe, sometimes fatal states develop – superior vena cava syndrome, hemopericardium, cardiac tamponade, hemothorax, pulmonary, gastrointestinal or intra-abdominal bleeding.
With the separation of thrombotic masses from the aneurysmal cavity, a picture of acute occlusion of the vessels of the extremities develops: cyanosis and soreness of the toes, left on the skin of the extremities, intermittent claudication. Renal arterial hypertension and renal failure arise in renal artery thrombosis; with damage to the cerebral arteries – stroke.
Diagnostic search for an aortic aneurysm includes an assessment of subjective and objective data, x-ray, ultrasound and tomographic studies. Auscultative sign of aneurysm is the presence of systolic murmur in the projection of aortic dilation. Aneurysms of the abdominal aorta are detected by palpation of the abdomen in the form of a tumor-like pulsating formation.
The plan of X-ray examination of patients with aneurysm of the thoracic or abdominal aorta includes fluoroscopy and chest X-ray, review radiography of the abdominal cavity, X-ray of the esophagus and stomach. In recognition of aneurysms of the ascending aorta, echocardiography is used; in other cases, the USDG of the thoracic / abdominal aorta is performed.
Computed tomography (MSCT) of the thoracic / abdominal aorta allows you to accurately and visually present the aneurysmal expansion, to identify the presence of dissection and thrombotic masses, para-aortic hematoma, calcification foci. At the final stage of the survey perform aortography, according to which the localization, size, length of the aortic aneurysm and its relation to the adjacent anatomical structures are specified. Based on the results of a comprehensive instrumental examination, a decision is made on the indications for surgical treatment of the aortic aneurysm.
Aneurysm of the thoracic aorta should be differentiated from tumors of the lungs and mediastinum; abdominal aortic aneurysm – from abdominal mass lesions, lesion of mesenteric lymph nodes, retroperitoneal tumors.
In case of asymptomatic non-progressive aortic aneurysm, they are limited by dynamic observation of the vascular surgeon and x-ray control. To reduce the risk of possible complications, antihypertensive and anticoagulant therapy is carried out, cholesterol is reduced.
Surgical intervention is indicated for abdominal aortic aneurysms with a diameter of more than 4 cm; aneurysms of the thoracic aorta with a diameter of 5.5-6.0 cm or with an increase in aneurysms of a smaller size by more than 0.5 cm in six months. When aortic aneurysm is ruptured, the indications for emergency surgical intervention are absolute.
Surgical treatment of an aortic aneurysm consists in excision of the aneurysmally altered area of the vessel, suturing the defect or its replacement with a vascular prosthesis. Taking into account the anatomical localization, resection of the aneurysm of the abdominal aorta, thoracic aorta, aortic arch, thoracoabdominal aorta, and subrenal aorta is performed.
In hemodynamically significant aortic insufficiency, resection of the ascending thoracic aorta is combined with aortic valve replacement. An alternative to open vascular intervention is endovascular prosthetics of an aortic aneurysm with stent placement.
The prognosis of an aortic aneurysm is mainly determined by its size and the concomitant atherosclerotic lesion of the cardiovascular system. In general, the natural course of the aneurysm is unfavorable and is associated with a high risk of death from aortic rupture or thromboembolic complications. The probability of aortic aneurysm rupture with a diameter of 6 cm or more is 50% per year, a smaller diameter – 20% per year. Early detection and planned surgical treatment of aortic aneurysms is justified by low intraoperative (5%) mortality and good long-term results.
Prophylactic recommendations include control of blood pressure, the organization of a proper lifestyle, regular monitoring by a cardiologist and an angiosurgeon, and medical therapy for concomitant pathology. Persons at risk of developing an aortic aneurysm should undergo an ultrasound screening examination.


text:
Q: Looping through form fields with different names So I have a form with a bunch of Text fields.  Some of the fields are related and I need to loop through them and add up the numbers in the value field.
The fields are all named differently so I can tell them apart so I'm not sure how to look through them.
Can I set them all to the same ID or same something to then do the loop based on the shared property?  I'd rather not have to manually go through them all but can do that if I have to.
I guess maybe if all the fields are part of a form array I can figure out where the fields I want start and stop and loop them that way?  hmmm

A: Native JavaScript is much simpler. A form node is an array of all its named controls, as well as an object with attributes.
The named controls are described in the HTML5 spec and in the HTML 4.01 one.
The W3C solution is quite elegant.
var form = document.querySelectorAll( 'form' )[0];
var total = 0;
for (var i = 0; i < form.length; i++) {
    console.log( form[i] );
    total += parseInt( form[i].value );
}

There's no need for libraries. The only downside is that fieldsets in the form are iterated through as well.

A: Give them all a class name. Eg. class="inputs" .
Add them to an array, then loop through with a for loop.
var inputs = document.getElementsByClassName("inputs");
for(i =0; i < inputs.length; i++)
{
  // whatever you want to do now.
}

A: If you want all the inputs for a given form, you can use jquery to easily get all the inputs within a form and iterate the values out:
http://jsfiddle.net/3TyZA/
$("#form1").find("input").each(function( index ) {
     console.log($(this).val()); // the value of each input
});

A: This has been asked before, although the question was worded differently.
Check here for several solutions, including the one already given by tinkerBot
How to parse input[] values and put them into a Javascript Array

A: If you want to write semantic HTML, you should group the related <input> fields into a fieldset, add an id to it, then loop through them with:
var total = 0;
var inputs = document.querySelector('yourFieldsetId').querySelectorAll('input');
for (var i = 0; i < inputs.length; ++i) {
  total += Number(inputs[i].value);
}

redpajama_set_name: RedPajamaStackExchange


text:
Learn/
Coin and Medal Programs/
Commemorative Coins/
American Veterans Disabled for Life Silver Dollar
Authorizing Legislation: Public Law 110-277
Members of the U.S. Armed Forces have answered the call to duty and served with distinction around the world—from hitting the beaches in World War II in the Pacific and Europe, to the cold and difficult terrain of Korea, the steamy jungles of Vietnam and the desert sands of the Middle East. Americans owe a tremendous debt to those who gave so much of themselves for our country. These include the millions of disabled veterans who continue to live with the wounds and scars of military service; those who have died after living with those wounds and scars; and those who gave their lives while defending our principles of democracy.
The United States Mint minted and issues commemorative silver dollar coins in proof and uncirculated versions to honor these heroes. The images on the 2010 American Veterans Disabled for Life Silver Dollar capture the service of the brave men and women who have honored us with their selfless duty to defend our country. These veterans often carry permanent life-altering disabilities that serve as strong reminders of the price of freedom.
Recipient Organization: Disabled Veterans' LIFE Memorial Foundation
A surcharge of $10 from the sale of each 2010 American Veterans Disabled for Life Silver Dollar is authorized to be paid to the Disabled Veterans' LIFE Memorial Foundation to support the construction of the American Veterans Disabled for Life Memorial in Washington, D.C., authorized by Congress in 2000.
Commemorative Coin Surcharges
Commemorative coin programs are created by acts of Congress to honor a person, place, or event. Surcharges from the sales of these coins help fund a variety of organizations and projects that benefit the public. Commemorative coins are only available from the United States Mint for a limited time, as specified by public law.
The coin designs are emblematic of the many stories of our disabled veterans' courage, loyalty and sacrifice. The obverse features an image of the legs and boots of three veterans. The inscription in the banner along the upper rim pays tribute to our courageous disabled veterans who have survived military service injuries for our freedom.
The reverse design depicts a forget-me-not flower at the base of a wreath wrapped in a ribbon that cradles and supports clusters of oak branches. The oak branches represent strength, while the forget-me-not is a widely recognized icon that first served as a reminder of those who fought and became disabled in World War I. The significance of the small blue flowers is attributable to an image conveyed by World War I soldiers who had seen them growing on the graves of comrades and allies who had been killed. After the war, the flower became the accepted symbol for commemorating those who had fallen.
Obverse Inscriptions
• THEY STOOD UP FOR US
• IN GOD WE TRUST
• LIBERTY
Reverse Inscriptions
• TAKE THIS MOMENT TO HONOR OUR DISABLED DEFENDERS OF FREEDOM
• UNITED STATES OF AMERICA
• E PLURIBUS UNUM
• ONE DOLLAR
Mint and Mint Mark
Weight: 26.73 grams nominal
Diameter: 1.500 inches (±0.003) or 38.10 mm (±0.08)
Composition: 90% Silver; 10% Copper
Mintage Limit: 350,000 across all product options
Don Everhart, Sculptor-Engraver
Sculptor: Joseph Menna, Sculptor-Engraver
Production and Sales Figures
Content last reviewed June 1, 2016


Appxplore(iCandy), one of the top Idle games developer has just released a brand new game Thor: War of Tapnarok for mobile. The initial beta test conducted in November 2017 and more than 10,000 warriors joined the battle. Now it is available worldwide and challenges you to complete all the stages, defeat all the bosses, stage boss, unlock all the allies, and discover all the treasures. If you have just started playing it, then today's Thor: War of Tapnarok guide and Thor: War of Tapnarok tips, cheats & strategies will help you in progressing fast.
⇒The two rare in-game currencies are shiny gems and runes. You can use shiny gems for power-ups(in the store) and break down the treasures for the runes. You can get shiny gems by completing the achievements, watching the video ads. The second rare in-game item is rune that you can use to summon treasure and level up discovered treasures. In Thor: War of Tapnarok game, you can get these runes by defeating the stage boss appeared in the 10th stage. Additionally, you can use the time travel skill for these runes.
⇒As of now, Thor: War of Tapnarok game features 37 treasures and all the treasures come in one of four grades; legendary, epic, rare, and common. Each treasure grants a unique buff to the player. You can level up these treasures with runes.
⇒The battle system is quite easy to understand; you tap the screen to deal damage to the enemies while allies attack the enemies automatically. You can check the ally DPS and current DPS/tap above the menu box. At the top of the screen, you can check the current stage. The player faces 10 waves of enemies at every stage. In the final wave, you battle against the stage boss to progress further to the next stage. After every 10 stages, you will fight against the region boss to proceed further to the next region. You will also earn runes from the final stage of a region.
⇒Gold management is another one of the main tasks in Thor: War of Tapnarok game. You can invest gold in increasing Thor level, allies level, skill level. Leveling up thor increases DPS/tap while leveling up allies will help you in generating more gold passively + increase in ally DPS. Additionally, you can spend gold on thor skills. Visit the Thor tab in the menu to check all the skills. Each skill grants a temporary special buff to the player.
Time Travel is one of the core features in the game that lets you earn runes. It unlocks when you reach Thor level 400 or unlock an ally named Eir(843.00aa). After that, In the skill tab, you will see a skill(blinking); Time Travel.
When you use the time travel skill, the game will send you back to stage one. But you will earn runes. The amount of runes you get from time travel depends on the ally level bonus, stage bonus, and full team bonus. If you want more runes from time travel skill, increase the ally level, complete more stages, and increase Thor level, skills.
Also, keep in mind that you will lose skills, allies, skill level up progress, stage progress, Thor level progress. And, you will keep all the shiny gems, runes, and treasures.
Head to the treasures tab and tap the (?) symbol in the request banner to check the list of all the treasures featured in the game. Almost every treasure increases the "all damage". So whenever you summon a treasure, all damage stats will increase and you will be able to beat the bosses.
Now the question is when to use this(time travel) feature? You have to use this feature when you are stuck or allies, thor are unable to defeat the boss or you are getting defeat by a high margin. Prior to it, you should do math; how many runes you are getting upon time travel, the cost of the next treasure summon. If you want to increase all damage by +100%, then you should either summon 3-4 treasures or upgrade existing treasures. Always go for 2-3X all bonus damage to progress fast.
TL;DR – Use time travel feature at the right time; when you are getting enough runes for the summons and treasure level up to increase all damage by +2-3X times. For example; 200% to 400%.
So these are the top basic things we have covered in Thor: War of Tapnarok guide. Let's have a look at the top Thor: War of Tapnarok tips, cheats & strategies!
All the skills have a cooldown time so you can not use them recklessly. You should activate the skills that deal massive damage to the enemy in the boss fights. In the normal fights, you can take time. But, on the other hand, In the boss fight, you will have to defeat the boss in a fixed time. Just below the boss's HP bar, you can check the timer bar. You should activate the skills if the boss is leading the battle.
When in the boss fights, always pay attention to the highlighted weak spots. Tapping those weak circles will deal massive damage to the boss.
Every now and then, you will see an eagle on your screen with a scroll. Tap that creature asap before it disappears. You could get a temporary skill buff as a gift or the game will give you an ad offer; watch the video ad for shiny gems or loads of gold.
If you are stuck or progressing very slow, you should use the time travel skill and grab the bag of runes to discover treasures. These treasures will increase all damage stats and you will progress fast. Read the time travel guide for more details.
Shiny Gem is the premium in-game item in Thor: War of Tapnarok game. Head to the store and there you can spend this item for the boosters. In addition to the power-ups, you can use these shiny gems in breaking down the treasures. Go to the treasure tab -> tap a treasure -> confirm. You will get runes.
So these are the top Thor: War of Tapnarok tips and a guide for the beginners. If you have more tips to share with other fellow players, do let us know in the comment section below!


During 2013 the Spanish government opened the so called "Spanish Golden Visa" scheme, offering investors the opportunity to gain a Spanish residency Visa for a €500,000 cash investment in Spanish property.
We have listed the basic requirements below, but please feel free to speak to our Marbella (Spain) based legal team for full details of this scheme, or alternatively our sales team can assist in suggesting particular properties that will a) gain you a Spanish Residency Visa, b) offer a very good return on investment, and c) offer you the opportunity to base your family in Marbella, the jewel in the Southern Coast of Spain's crown.
The same person owns three properties: one costing 250,000.00 EUR, another one costing 150,000.00 EUR, and a third costing 100,000.00 EUR - can we obtain residency?
The owner of a property, whose purchase price is 750,000.00 EUR, obtained a mortgage loan for 250,000.00 EUR when the purchase was made. The remainder of 500,000.00 EUR was paid upon completion of the acquisition process - can we obtain residency?
Yes, this person would be eligible for residency.
A husband and wife buy a property with a purchase price of 700,000.00 EUR - can they obtain residency?
They are NOT eligible for the residency permit, as this only equals 350,000.00EUR investment each, each one owns 50 % (350,000.000 EUR each). However, if the head of the family can show commitment to support the rest of the family through a Sponsorship letter, residency for the others can be obtained with ease.
Could I get residency buying through a non-resident company?
It is possible to do so, but the applicant must be in majority control of shares and voting rights.
Do I have to be Company Administrator?
No, as long as the conditions above are in place.
For the real estate investment permit, there is no application deadline, for example you purchase a property today, you can apply for a residency visa in 12 months time.
Can I submit the application about an acquisition bought before 2012?
No. The investment needs to be acquired after the date that the Law came into force.
What are further benefits of this application?
For how long is the residence valid?
In principle, one year for the first period. Then standard renewals are valid for 2 years, under the condition that the circumstances did not change, ie the client remains in possession of the property. After 5 years, application for a permanent visa is possible, then after a further 5 years, full Citizenship (subject to certain standard conditions being met).


So, you want to help us create a bomb digital collective for creative women? In order to create dynamic programming and products to help you flourish, we'll need to get acquainted with your lifestyle and creative passions. We launched this research series to help us create a collective experience tailored to what you really need to flourish as creatives, professionals, and entrepreneurs. Please participate at the links below.


text:
Q: The example of monomorphism which is not injective Consider subcategory of $Ab$ of category abelian groups consisting divisible abelian groups (such groups $X$ that for any $x \in X$ and $n \in \mathbb N$ there is $y \in X$ such that $ x = ny$).
I need to show that morphism $\varphi: \mathbb R \to \mathbb T$, $t \mapsto e^{it} $ is monomorhism. It is probably easy so I'm asking for just hint.
P.s. I don't get why $\mathbb T$ is said to be divisible? It is so if we define action of $n$ as $n\cdot e^{it}: = e^{i(t+n)}$, though.

A: Concerning the divisibility of ${\mathbb T}$: The action of ${\mathbb Z}$ on ${\mathbb T}$ is uniquely determined by the abelian group structure on ${\mathbb T}$ (it is for any abelian group) by $n.\exp(it)=\exp(it)^n=\exp(itn)$. In particular, ${\mathbb T}$ being divisible means that arbitrary roots exist in ${\mathbb T}$. Can you check that for yourself? Alternatively, note that it suffices to check divisibility for ${\mathbb R}$, because images of divisible groups are again divisible, and $\exp: {\mathbb R}\to{\mathbb T}$ is surjective.
Concerning the actual question: Consider first a morphism $\psi: X\to {\mathbb R}$ of a divisible abelian group $X$ into ${\mathbb R}$ such that $\exp\circ\psi$ is the trivial homomorphism. Then, looking at it as a morphism in the category of all abelian groups, it factors through the kernel of $\exp$. How does that kernel look like? Is it divisible?


text:
Flexible offices in Franklin Square
1300 I Street NW, Suite 400E, Washington, District Of Columbia, 20005
Our Franklin Square center is in the heart of Washington D.C.'s central business district (CBD), close to organizations from tourism to the government and only one block McPherson Square Metro. With 11- story columns, an impressive limestone exterior, and endless on-site amenities including restaurants and coffee shops, Franklin Square is a self-contained place for you to do business - keeping you on-site and on-target.
From $19.10 per day
From $2.20 per day
1300 I Street NW, Suite 400E
1200 G Street, NW
Thomas Circle
1441 L St NW
1101 Pennsylvania Avenue N.W.
Connecticut Avenue
1050 Connecticut Avenue, NW
601 Pennsylvania Avenue
601 Pennsylvania Ave. NW
20 F Street
1140 3rd Street
1000 Potomac Street NW
100 M Street, S.E.
The Artisphere
1101 Wilson Boulevard
1655 North Fort Myer Drive


How many people can pull off an ivory cutout bodysuit with a lace skirt? Apparently the 19 year-old star of the latest Transformers movie can.
Newcomer Nicola Peltz is having an amazing promotional tour for this movie, even if the reviews are not stellar. After making our Best Dressed list two weeks ago in Prada at the World Premiere, it's no surprise that her latest outfit has put her on our list once again.
This time, the young blonde wore Stella McCartney coupled with Dolce & Gabbana at the Berlin press conference. Capturing the perfect "summer white" look, Nicola Peltz delivers with this stunning outfit.
While promoting "Transformers: Age of Extinction," Peltz favored a neutral palette, and although she did not take many risks, every one of her looks has been gorgeous.
Hopefully, with more Red Carpet experience, Nicola Peltz will try some more daring trends. But for now, we are more than happy to stare at this fashion pairing.
Bravo, Nicola Peltz. We look forward to your encore.
FILM: The Big Deal About "Dawn of the Planet of the Apes"


i will be back to london from belgium on Dec 22 cause my shengen visa expired on that day.
i think it will be nice to stay in the continent at Xmas time, enjoy it!
around two and a half hour, but you may need to arrive 20 minutes earlier to check in.
both the stamps of leaving UK and arriving in France will be given when you check in, so when you step out of the train in Paris, there will be no further process needed to be done. a lot more simple than taking airplane.
and your luggages are always be with you, or you can put the bigger one in the interval of two trains, where they design specially for big luggage.
But anyway, you will not lose your luggage and wont need to put it in other people's custody.
I don't know, that just make me feel safe and convenient.
Thanks for the info. Chat with you next week!!!


The following functions and macros can be used within templates. These are guaranteed to work via the safemode rendering, to ensure a template can do nothing harmful. With safemode disabled other macros may work, but are not supported at this time.
To enable safemode, set "safemode_render" to "true" in Settings -> Foreman settings. Safemode rendering prevents templates from reading and writing files on the file system or modifying application data within foreman.
There are two ways to render a template, based on a single host, or based on a Hostgroup. The host or hostgroup provides all the details with which to render the template.
4. Use the first template found associated with the operating system associated with the host.
So essentially, the hostgroup/environment combination is used first, then just the environment, and finally just the operating system of the host.
where 192.168.0.1 is the ip address of the system you want to spoof. This allows you to view a template for a particular system from anywhere.
When building the default PXE template (from the Provisioning Templates page), any host group with the operating system, installation media and architecture set, plus provisioning templates with the host group set on the Associations tab will be listed at the bottom of the menu.
PXE Menus can be deployed to smart proxies from the Provisioning Templates list page (/templates/provisioning_templates). All provisioning templates will be added with each of their hostgroup combinations (see above). For example if the template "WebServerKickstart" is associated to the Hostgroup1/Production, Hostgroup2/Production, and Hostgroup2/Testing combinations, the template would only be added twice. Once for WebServerKickstart-Hostgroup1 and WebServerKickstart-Hostgroup2.
Note that you can use only macros that are not host specific since this global PXE template is not specific to one host.
These macros can be used only when the template is rendered for specific host.
NOTE: For PXELinux templates in 0.4 or older only leave off the '@host.' from the above as it is currently generated slightly different from everything else.
NOTE: Some variables can't be accessed while safemode is enabled. Disable via safemode_render in More > Settings, though be aware this enables arbitrary code to be added to templates. Some are being whitelisted via #2948.
NOTE: You may need to add "&static=yes" to the foreman_url to use the @static parameter in templates (see KickstartStatic).
NOTE: A lot of networking functions changed their meaning between 1.7 and 1.8 releases. In 1.7, primary interface used to be part of host object so it was not part of '@host.interfaces'. Also it could be detected by '@host.has_primary_interface?' which was removed in 1.8. For more advanced example of using networking functions, see kickstart_networking_setup.erb provisioning template snippet.
@epel A command which will automatically install the correct version of the epel-release rpm. Use full in a %post script. @epel => "su -c 'rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm'"
The values of those attributes are auto-computed based on the url attribute configured in the installation medium.
These check the parameter is a true/false/on/off/1/0 string.
You will need to disable Safemode-Rendering in More->Settings.
Since Foreman 1.15.3, it's not allowed to use to_proc syntax for iterators, e.g.
Kickstart/preseed files are all generated dynamically based on the setting of each host in Foreman, things like partition tables and root password can be unique per server.
If you are having issues with a system building from a template or a system is unable to retrieve a template you can see the kickstart/preseed template result using your browser. If your system failed to retrieve the kickstart file it may be due to the fact that the template build failed.


Will my child be safe at National Academy of Athletics Camps?
Absolutely! Safety is our number one priority. Aaron Locks has been running quality sports camps in Northern California for over 20-years, we have never had a child be seriously injured. We are proud of this record. National Academy of Athletics Camps has very strict rules.
All Campers are signed in and out from camp each day.
All Staff is first aid and CPR certified.
All camp staff coaches are 18 years or older.
Campers are not allowed out of the gym, except to use the restroom.
All campers using the restroom must go with another camper as a "buddy".
All basketball counselors have been thoroughly trained to never be in a compromising situation with campers. When talking with campers about personal issues, we always have two counselors present. Counselors are never to leave the gym with a camper.
Who does the teaching at the camps?
All of our programs are led by a highly trained team of coaches, teachers, & college athletes who are carefully chosen to ensure each campers safety, skill development, & individual enjoyment. At all National Academy of Athletics programs, we encourage the campers to play with confidence, enthusiasm and a love of the game. We use local college athletes to support our experienced camp directors.
What is special about National Academy of Athletics Camps compared to other Sports camps?
The National Academy of Athletics Camps have a proven track record of improving the skills of our campers both on and off the court. The camps utilize training and coaching techniques developed for players of all ages. The founder, Aaron Locks and his programs are recognized as one of the best sports have to offer. In short, the kids who attend our camps learn a lot, have fun, meet friends and become better players.
Who are the National Academy of Athletics Camps for?
Everyone. However, each camp has different ages and specifications to help insure that each participant has a positive experience. See each camp for details.
What will my child learn or gain from attending these camps?
The children will develop an understanding of how to become a more confident player on the court or field. This translates to an enhanced sense of self-confidence and "unstoppability" in life. They will learn by practicing specially designed, age-specific drills and techniques in skill progression, positive and fun, sports environment .( They will learn by practicing specially designed, age-specific drills and techniques in a positive and fun sports environment.) In addition, all National Academy of Athletics camps feature "word of the day" which is designed to help reinforce life skills at the camp.
What is the player coach ratio?
Our staff of energetic coaches are placed in each camp with a maximum camper-to-coach ratio of 10-1.
Each Camp has a specific schedule but this is a pretty good example of what you should expect.
Who will my child be playing with?
At the start of every camp the coaches do a warm up and camper evaluation. Each child is placed into groups by age and ability. The goal is to put them with players of equal ability and ages. Players will be moved during the week in order to best help their enjoyment and skill development.
Does National Academy of Athletics Camps utilize the same drills at every camp?
Each sport specific camp is designed to have drills that are fast paced yet focused enough to help the players understand what to do, how to do it and why to do it. This helps players truly understand the game that they are playing. Many of the sport specific fundamental drills remain the same for all skill levels. As players progress in abilities, they are given higher-level drills to practice and work on.
Participants benefit greatly from additional sessions of National Academy of Athletics. On each return trip to camp, our participants work on mastering the lessons from previous sessions. This strengthens the "muscle memory" started in the initial camp. Additionally, as a camper progresses, they learn higher level skills. Many of our campers have attended 3, 4, or more sessions with us.
Do the boys and girls practice and play together?
At most of our camps, yes. We believe that boys and girls (with the same skill level) should play together . In the real world, men and women work together and are expected to perform the same task. The exception is the high potential camps like Superstar Invitational Camps.
The National Academy of Athletics camps are offered at local sport fields and schools are part of our ongoing partnership with local schools, cities and parks and recreation departments. Each sport camp and session has different locations in different cities. Check the calendar for the dates and locations of the camps coming to your area.
My child is young and never played before. Will this camp be too intense or hard for them?
It may be. Our camps are a lot of work. This particular age group, ages 6 – 7, can only attend camp half day… 9am – noon. There are limited camps for players in that age group. If you are not sure, we suggest that you begin with an All Sport camp as a great introduction. If you are not sure . Feel free to call our helpful staff and we can help guide you to the perfect cap for your child.
It is not uncommon for kids to occasionally miss a day or have to leave early or late on some days due to various reasons. We realize that family schedules require flexibility. If they miss instructions for a new drill, we will ensure they get time with a camp counselor to bring them back up to speed.
In addition, most cities we work in partnership with and provide fingerprinting services for each of the coaches in using the LiveScan system.
Every Camp Director is first aid and CPR certified and all coaches receive first aid training.
All staff members are personally trained by the founder and CEO of the National Academy of Athletics, Aaron Locks, and are selected for their athletic skill, ability to teach and their love for kids.
Yes. When you register your child for camp, you must click that you have read our waiver. If you register through one of our partner cities, you will sign their waiver.
You have our word, you're safe with us.
We will never sell any personally identifiable information to a third party for marketing purposes. We will never overload your inbox. We will send you relevant camp information.
$75 deposit per child per session is due at the time of registration in order to secure your camper's spot in the camp. This is a non-refundable deposit, barring medical issues (see below).
First, we would like to encourage you to simply move to another session so your child can have the experience of summer camp. However, we understand that things come up and you may need to cancel all together. To do so, please call or email us with this information.
• $75 Deposit is not refundable or transferable at any time unless it is a medical reason (must have written explanation from Doctor).
We understand that medical issues may arise or just as your child is set to attend camp. Please call us as soon as possible to inform us of your need to cancel. We will ask that you submit a written excuse from your child's physician. If you child is sick and there is time and room, we will work with you to switch your camper to a later session.
If you have questions – call 866-90-SPORT and one of our camp specialists will be happy to help.
Call us at 866-907-7678 or email info@NAofA.us!


Fully sublimated. Price includes up to three logos, player name, team name, player numbers. We offer free set up of your design. Available in both Kids (XS-2XL) and Adults (XS-4XL). Fabric is the latest moisture wicking, breathable, comfort fit on the market. You will need to email us your logo in a suitable file format to achieve the best results. Allow 4 weeks for delivery (from artwork sign off). Full payment required in advance upon order confirmation.


What is blood spotting during pregnancy?
The term spotting, or blood spotting, during pregnancy generally refers to light vaginal bleeding, or a reddish vaginal discharge, during the first trimester of pregnancy.
The Pregistry Communities are a place where you can chat with other women about other conditions & exposures in pregnancy and lactation. The experience these moms have can be invaluable!


TUCSON, AZ (Tucson News Now) - A Border Patrol agent accused of shooting through the border fence and killing a teenager in Mexico will not be tried again, according to the latest court filing from prosecutors.
Agent Lonnie Swartz had been on trial twice already.
He was acquitted of second-degree murder in the first case in April 2018, but jurors were split on a lesser charge or involuntary manslaughter.
Swartz was found not guilty of manslaughter in November, which lead to demonstrators taking to the streets of downtown Tucson.
Following the verdict in the second trial, the judge set a date for a hearing to consider a new trial. The latest filing from the U.S. Attorney's Office states that the hearing won't be necessary.


You'll find one serious party at the world's largest Gay Pride parade in São Paulo. The first Parada de Orgulho GLBT de São Paulo was organized in 1997 and brought together 2,000 people on Avenida Paulista. Cut to 2008 and there were 3.4 million people dancing behind trios elétricos (floats) for 3.5 kilometres for seven hours. The last one Gay Parade was in June 2014 and brought together 1 million people.
A non-profit organization, the APOGLBT's mission is to fight for a more just and inclusive society, which recognizes equal rights for all. The association has served to promote citizenship and self-esteem of LGBT by conducting and encouraging activities of all kinds.
The theme for the 2014 parade was "A winner country in one without homophobia, lesbophobia and transphobia – for the approval of a law for gender identity". This is especially appropriate.
Parade participants meet up around noon at the Museu de Arte Moderna de Sao Paulo on the Avenida Paulista. The parade starts sometime between 2-3 pm. It is 2.6 miles long (4.2 km) and runs down Avenida Paulista to Rua da Consolação and ends at Praça Roosevelt around 10pm. It is incredible to think this parade can last 8 hours.
TIP: Don't miss the warm-up. Get there as early as you can. Have fun with the many shows put on by DJ's, Drag Queens and their carnival-like outfits, music concerts and much more.
Before the start of the parade DJs and Drag Queens put on several shows along the parade route. The Drag Queens are expert at playing the crowd and that can make for some funny entertainment. The highlight of the parade is the up to 25 floats called trio eletricos. These wired-for-sound behemoths are up to 2 stories tall with DJs playing lively Brazilian music. The government, gay nightclubs and unions sponsor these floats.
The parade is viewed by gays, lesbians, straight, young old, families and couples. Everyone comes together to acknowledge the trials and struggles of the gay population. The crowd is friendly and fun-loving and up for a good time.
A full month of events is planned for the Gay Pride celebration. One of the more popular exhibits is The Cycle of Debates. It runs for 10 days and focuses on gay issues. Some of the recent debates include gay culture and artistic interventions.
The Lesbian and Bisexual Walk also takes place during Gay Pride week. The theme for 2010 was "Being a Lesbian is a Right! Autonomy and Freedom for a World of Equality".
Approximately 2,500 walkers join in and the walk is divided up into segments. Some lesbians walked under the hip-hop flag and others joined in with Afro-Brazilian religious followers.
There was a section for marchers with disabilities as well as unionized workers. The event is organized by Liga Brasileira de Lésbicas ( Brazilian lesbian league). The largest event of Gay Pride week is the parade.
The parade begins around 2-3 pm at the Museu de Arte on Avenida Paulista and ends 2.6 miles and approximately 8 hours later at Roosevelt Square in Downtown Sao Paulo. It is backed by the governments of the State of Sao Paulo as well as the city of São Paulo.
They provide excellent security with up to 2,000 policemen as well as medical facilities with 55 nurses and 46 doctors on standby. The federal government also supports the parade and many politicians show up to ride on a government-backed float.
Participants in the parade consist of Drag Queens in elaborate and beautiful costumes, gays and lesbians wearing Gay Pride garb and incredible floats called trio elétricos. The Drag Queens along with local DJs work the crowd prior to the parade playing popular music and putting on shows that interact with the public. When the parade starts they will take their places amongst the other marchers. The floats, some of which are two stories high, blast popular and traditional music along the parade route. They are decorated to represent different themes from victims of HIV/AIDS to people with special needs.
The week long event is a combination of serious study in the plight of gays and lesbians as well as a celebration of the community as a whole. The city is quick to embrace the culture and is happy to celebrate side by side with the gay community.


text:
Q: Create structured JS object based on unstructured JS object I have this js object data:
const content =
  [ { h1 : 'This is title number 1'          }
  , { h2 : 'Description'                     }
  , { p  : 'Description unique content text' }
  , { h2 : 'Content'                         }
  , { p  : 'Content unique text here 1'      }
  , { ul : [
           'string value 1',
           'string value 2'
       ]
  , }
  , { p  : 'Content unique text here 2'      }
  , { h2 : 'CTA message'                     }
  , { p  : 'CTA message unique content here' }
  , { h2 : 'CTA button'                      }
  , { p  : 'CTA button unique content here'  }
  , { p  : ''                                }
  , { h1 : 'This is title number 2'          }
  , { h2 : 'Description'                     }
  , { p  : 'Description unique content text' }
  , { h2 : 'Content'                         }
  , { p  : 'Content unique text here 1'      }
  , { h2 : 'CTA message'                     }
  , { p  : 'CTA message unique content here' }
  , { h2 : 'CTA button'                      }
  , { p  : 'CTA button unique content here'  }
  , { p  : ''                                }
  ]

h1 indicates a new object, the ul is optional
I want to map it to such structure:
interface Content = {
  title: string;
  description: string;
  content: any[];
  cta: {
    message: string;
    button: string;
  }
}

I am wondering what is the best way of doing that?
I think I have to loop through the items and just populate a new JSON object based on my interface. The first element is always title, then just checking if "description" then the next item is description value.
    const json = Content[];
    content.forEach(element => {
    if(element.h1) {
        // add props to new object
        // add object to json array
    }
});

I just wonder how wold you create multiple Content objects based on that original content JSON object?
Here is the result I am expecting:
json = [
  {
    title: 'This is title number 1',
    description: 'Description unique content text',
    content: [
      {
        p: 'Content unique text here 1',
      },
      {
        ul: [
            'string value 1',
            'string value 2'
        ]
      },
      {
        p: 'Content unique text here 2'
      }
    ],
   cta: {
      message: 'CTA message unique content here'
      button: 'CTA button unique content here'
   }
  },
  ...
]

UPDATE:
Based on comments below I am looking for top down parser solution. The solution should be easily extensible in case if input array will be changed a bit by introducing new unique h2+p or h2+p+ul, etc elements.

A: As per my understanding we will have same format for each set of objects in the content array properties from top to bottom. If Yes, I just spent some time to work on this requirement and come up with this solution. I know we can optimize it little more to make it more dynamic. Can you please have a look and confirm if it works as per your expectation then I will work on the refactoring and code optimization part.
Note : All the steps has been mentioned as a descriptive comments in the below code snippet itself.
Demo :

    // Input Array
    const content = [
      { h1 : 'This is title number 1' },
      { h2 : 'Description' },
      { p  : 'Description unique content text' },
      { h2 : 'Content' },
      { p  : 'Content unique text here 1' },
      { ul : [
        'string value 1',
        'string value 2'
      ]},
      { p  : 'Content unique text here 2' },
      { h2 : 'CTA message' },
      { p  : 'CTA message unique content here' },
      { h2 : 'CTA button' },
      { p  : 'CTA button unique content here' },
      { p  : '' },
      { h1 : 'This is title number 2' },
      { h2 : 'Description' },
      { p  : 'Description unique content text' },
      { h2 : 'Content' },
      { p  : 'Content unique text here 1' },
      { h2 : 'CTA message' },
      { p  : 'CTA message unique content here' },
      { h2 : 'CTA button' },
      { p  : 'CTA button unique content here' },
      { p  : '' }
    ];

    // Variables
    const chunkEndIndexArr = []; // get the chunk ending index for each set of objects.
    const chunkArr = []; // This will contain the nested arrays containging each chunks. For ex: [[], []]
    let startIndex = 0; // This is the start index to loop through the content array.
    let splittedStr = []; // This variable is used to split the CTA message and CTA button strings which helps while building the final result.

    // Getting index to categorize the chunks seprately for each object based on the object { "p": ""} which is like a breakup for each objects.
    content.forEach(obj => {
      if (Object.hasOwn(obj, 'p') && !obj.p) {
        chunkEndIndexArr.push(content.indexOf(obj) - 1)
      }
    });

    // This set of code is used to create an array of each set of objects seperately which will help in building the algorithm.
    chunkEndIndexArr.forEach((elem, index) => {
      const innerArr = [];
      for (var i = startIndex; i <= chunkEndIndexArr[index]; i++) {
        innerArr.push(content[i])
      }
      // pushing each set of objects in a seperate array.
      chunkArr.push(innerArr);
      // resetting the startindex for the next set of records.
      startIndex = chunkEndIndexArr[index] + 2
    });

    // This set of code is used to build the desired output from the chunked array of each set of objects.
    const res = chunkArr.map(chunk => {
      const innerObj = {};
      chunk.forEach(obj => {
        // Property assignment for Title
        if (Object.hasOwn(obj, 'h1')) {
          innerObj.title = obj.h1
        }
        // Property assignment for Description
        if (Object.hasOwn(obj, 'h2') && obj.h2 === 'Description') {
          innerObj[obj.h2.toLowerCase()] = Object.values(chunk[chunk.indexOf(obj) + 1])[0]
        }
        // Property assignment for Content
        if (Object.hasOwn(obj, 'h2') && obj.h2 === 'Content') {
          innerObj[obj.h2.toLowerCase()] = [];
          if (Object.hasOwn(chunk[chunk.indexOf(obj) + 1], 'p')) {
            innerObj[obj.h2.toLowerCase()].push(chunk[chunk.indexOf(obj) + 1])
          }
          if (Object.hasOwn(chunk[chunk.indexOf(obj) + 2], 'ul')) {
            innerObj[obj.h2.toLowerCase()].push(chunk[chunk.indexOf(obj) + 2])
          }
          if (Object.hasOwn(chunk[chunk.indexOf(obj) + 3], 'p') && chunk[chunk.indexOf(obj) + 3].p.includes('Content')) {
            innerObj[obj.h2.toLowerCase()].push(chunk[chunk.indexOf(obj) + 3])
          }
        }
        // Property assignment for CTA message.
        if (Object.hasOwn(obj, 'h2') && obj.h2.includes('CTA message')) {
          splittedStr = obj.h2.toLowerCase().split(' ');
          innerObj[splittedStr[0]] = {};
          innerObj[splittedStr[0]].message = Object.values(chunk[chunk.indexOf(obj) + 1])[0];
        }

        // Property assignment for CTA button.
        if (Object.hasOwn(obj, 'h2') && obj.h2.includes('CTA button')) {
          innerObj[splittedStr[0]].button = Object.values(chunk[chunk.indexOf(obj) + 1])[0];
        }
      });
      return innerObj;
    });

document.getElementById("result").innerText = JSON.stringify(res, null, 2); // Final result

A: Here is a working solution:

const content =
  [ { h1 : 'This is title number 1'          }
  , { h2 : 'Description'                     }
  , { p  : 'Description unique content text' }
  , { h2 : 'Content'                         }
  , { p  : 'Content unique text here 1'      }
  , { ul : [
           'string value 1',
           'string value 2'
       ]
  , }
  , { p  : 'Content unique text here 2'      }
  , { h2 : 'CTA message'                     }
  , { p  : 'CTA message unique content here' }
  , { h2 : 'CTA button'                      }
  , { p  : 'CTA button unique content here'  }
  , { p  : ''                                }
  , { h1 : 'This is title number 2'          }
  , { h2 : 'Description'                     }
  , { p  : 'Description unique content text' }
  , { h2 : 'Content'                         }
  , { p  : 'Content unique text here 1'      }
  , { h2 : 'CTA message'                     }
  , { p  : 'CTA message unique content here' }
  , { h2 : 'CTA button'                      }
  , { p  : 'CTA button unique content here'  }
  , { p  : ''                                }
  ]

function getChunks (content){
   const chunks = {}
  let chunkIndex = -1
  content.forEach(entry=> {
    const entries = Object.entries(entry)[0]
    const key = entries[0]
     const value = entries[1]
    if(key=== "h1"){
      chunkIndex++
    }
    if(chunks[chunkIndex]){
       return chunks[chunkIndex].push({key, value})
    }
    return chunks[chunkIndex] = [{key, value}]
  })
  return Object.values(chunks)
}

function formatChunk(chunk){
   const interface = {
  title: "",
  description: "",
  content: [],
  cta: { message:"", button: "" }
}
    chunk.forEach(({key, value})=> {
     if(value.includes("CTA button")){
       interface.cta.button = value
       return
     }
     if(value.includes("CTA message")){
       interface.cta.message = value
       return
     }
     if(key==="h1"){
       interface.title = value
     }
     if(key==="h2"){
       interface.description=value
     }
     if(key==="ul" | key==="p"){
       interface.content.push({[key]:value})
     }
   })
  return interface
}

function parseObj(content){
  const chunks = getChunks(content)
  return chunks.map(chunk=> formatChunk(chunk))
}

console.log(parseObj(content))

A: The next provided approach features a generically implemented reducer function which is custom configurable for ...

*

*an item's key upon which the creation of a new structured content type is decided.

*an object based lookup/map/index which features key based implementations for either creating or aggregating a (key specific) content type.

From one of the OP's above comments ...

"... forgot to mention that algorithm should be extensible in case if input data will be changed slightly –
sreginogemoh"

Though I wouldn't go that far naming the approach "top-down parser" as others already did, the parser analogy helps.
The advantage of the approach comes with the (generically implemented) reducer which roughly fulfills the task of a main tokenizer by processing an array/list from top to bottom (or left to right).
Upon a match of a custom provided property name (or key-word) and a currently processed item's (token's) sole entry's key the reducer does create a new structured (data) item. Non matching item-keys do signal an aggregation task.
Both task types (creation and aggregation) have in common that they too, always have to be custom implemented/provided as methods of an object based lookup/map/index.
The aggregation tasks can be manifold, depending on whether a to be merged sub content type gets hinted explicitly (by e.g. other specific entry-keys) or not. What they have in common is the passing of always the same arguments signature of (predecessor, merger, key, value).
This four parameters present the sufficient information (neither less nor more data) it needs, in order to reliably aggregate any sub content type (based on key, value and if necessary on predecessor) at the base/main content type which was passed as merger.
FYI ... In terms of the top-down parser analogy one should notice that with the predecessor item/token one actually uses a top-down/lookbehind approach (but top-down from the little theory I know is supposed to come with lookahead).
The reducer approach allows both the adaption to other source items and the creation of other target structures by changing the to be passed initial value's properties ... newItemKey and aggregators ... accordingly.
The two folded solution of reducer and custom tasks got implemented in a way that the reducer does not mutate source items by making (actively) use of structuredClone for more complex sub contents whereas a task's arguments signature (passively) prevents the mutation of source items.

// gnenerically implemented and custom configurable reducer.
function createAndAggregateStructuredContent(
  { aggregators = {}, miscsAggregationKey = 'miscs', newItemKey, result = [] },
  item, itemIdx, itemList,
) {
  const [itemKey, itemValue] = Object.entries(item)[0];
  const createOrAggregateContentType =
    aggregators[itemKey] ?? aggregators[miscsAggregationKey];

  if ('function' === typeof createOrAggregateContentType) {
    if (itemKey === newItemKey) {
      // create and collect a new content type.
      result
        .push(
          createOrAggregateContentType(itemValue)
        );
    } else {
      // aggregate an existing content type.
      createOrAggregateContentType(
        itemList[itemIdx - 1], // - predecessor item from provided list.
        result.slice(-1)[0],   // - currently aggregated content type.
        itemKey,
        itemValue,
      );
    }
  }
  return { aggregators, miscsAggregationKey, newItemKey, result };
}

// poor man's fallback for environments
// which do not support `structuredClone`.
const cloneDataStructure = (
  ('function' === typeof structuredClone) && structuredClone ||
  (value => JSON.parse(JSON.stringify(value)))
);

// interface Content = {
//   title: string;
//   description: string;
//   content: any[];
//   cta: {
//     message: string;
//     button: string;
//   }
// }

// object based lookup/map/index for both
// content-type creation and aggregation
// according to the OP's `Content` interface.
const aggregators = {
  // creation.
  h1: value => ({ title: String(value) }),

  // aggregation.
  h2: (predecessor, merger, key, value) => {
    key = value.trim().toLowerCase();
    if ((key === 'description') || (key === 'content')) {
      merger[key] = null;
    } else if ((/^cta\s+message|button$/).test(key)) {
      merger.cta ??= {};
    }
  },
  // aggregation.
  miscs: (predecessor, merger, key, value) => {
    const contentType = String(predecessor.h2)
      .trim().toLowerCase();
    const ctaType = (/^cta\s+(message|button)$/)
      .exec(contentType)?.[1] ?? null;

    if ((contentType === 'description') && (merger.description === null)) {

      merger.description = String(value);

    } else if ((ctaType !== null) && ('cta' in merger)) {

      Object.assign(merger.cta, { [ ctaType ]: String(value) });

    } else if (value) {
      // fallback ...
      // ... default handling of various/varying non empty content.
      (merger.content ??= []).push({ [ key ]: cloneDataStructure(value) });
    }
  },
};

const content =
  [ { h1 : 'This is title number 1'          }
  , { h2 : 'Description'                     }
  , { p  : 'Description unique content text' }
  , { h2 : 'Content'                         }
  , { p  : 'Content unique text here 1'      }
  , { ul : [
           'string value 1',
           'string value 2'
       ]
  , }
  , { p  : 'Content unique text here 2'      }
  , { h2 : 'CTA message'                     }
  , { p  : 'CTA message unique content here' }
  , { h2 : 'CTA button'                      }
  , { p  : 'CTA button unique content here'  }
  , { p  : ''                                }
  , { h1 : 'This is title number 2'          }
  , { h2 : 'Description'                     }
  , { p  : 'Description unique content text' }
  , { h2 : 'Content'                         }
  , { p  : 'Content unique text here 1'      }
  , { h2 : 'CTA message'                     }
  , { p  : 'CTA message unique content here' }
  , { h2 : 'CTA button'                      }
  , { p  : 'CTA button unique content here'  }
  , { p  : ''                                }
  ];
const structuredContent = content
  .reduce(
    createAndAggregateStructuredContent, {
      aggregators,
      newItemKey: 'h1',
      result: [],
    },
  ).result;

console.log({ structuredContent, content });
.as-console-wrapper { min-height: 100%!important; top: 0; }

FYI ... questions and approaches similar to the very topic here ...

*

*Transform array into object with custom properties

*Creating nested objects from a flat array of strings based on a number of specific characters