Download Crack [BETTER]head Attacked By Alligator
Click Here ---> https://urlin.us/2tfE3l
Chicken Satay: $6.95Chicken Coconut Soup: $3.95Cinnamon Soup: $2.95Yellow Curry: $9.95Pad Thai: $9.95Sweet Rice With Custard: $3.95Fried Bananas: $2.95[ { \"name\": \"Ad - NativeInline - Injected\", \"component\": \"38482495\", \"insertPoint\": \"3\", \"requiredCountToDisplay\": \"5\" },{ \"name\": \"Real 1 Player (r2) - Inline\", \"component\": \"38482494\", \"insertPoint\": \"2/3\", \"requiredCountToDisplay\": \"9\" } ]Before his cousin got killed, before a jury convicted his brother of murder, before he became a member of one of the most notorious gangs in East Cleveland, Shawntel Gibson was just a scrawny kid fighting for his life. He was 14 and weighed 112 pounds when his family moved to Shaw Avenue in 1988. Everyone wanted a piece of him.\"Guys just always came to me,\" he says. \"I'm a little guy. You win one fight, now you're going to be fighting the rest of your life. Everybody gonna wanna come challenge you.\"He and his brother, Savalas Crosby, a taller, meatier man who wore his hair long and straightened, found safety in numbers when they joined a gang called the Valley Low. The name derived from their vision of the neighborhood. \"It was the ghetto, the lowest,\" says Gibson.Members dealt crack on street corners, but they were disorganized and lacked the network to qualify as a full-fledged cartel. What they did have was extraordinarily bad luck. In the early 1990s, Gibson lost 13 friends in just a few years. Most of the deaths stemmed from stupid street violence -- a crackhead killing his dealer, a guy on the losing end of a fight coming back with a gun. \"It was like a curse,\" Gibson says.Despite the casualties, there was no shortage of recruits. A group of kids in their early teens, calling themselves the Tribe, hung with the Valley Low, who were then in their late teens and early 20s. The Tribe was like a youth affiliate, says Jermelle Thomas, 27, an early member. \"Everybody knew that if they messed with us, they would mess with the Valley Low, too.\"Wrestling was a favorite pastime. To differentiate teams, the kids wore colors during their play battles. At the time, the war between the Bloods and the Crips raged on the streets of Los Angeles, as well as in music and videos. Kids imitated those fights in the same way that their parents had played cowboys and Indians.\"The red-and-blue thing started in California, and it was in all the rap songs,\" Thomas says. \"We was all friends, so some people would say, 'I'm with the red,' or 'I'm with the blue,' and we would wrestle with each other, like an everyday, ongoing thing, just playing.\"But as the Valley Low's \"younger brothers\" grew up, the play fighting turned serious. Both gangs used the duplex where Gibson's family lived as their playground. \"We used to hang out at our house, because my mom didn't want us out on the street, getting into trouble,\" says Crosby. As the Tribe asserted its independence, the Valley Low began to resent sharing its hangout with a bunch of kids.\"They started beating up the younger guys,\" Gibson says of the Valley Low. \"I'm talking about putting them in the hospital and everything.\"By 1994, the Valley Low was asking Gibson and Crosby to choose loyalties. \"They would tell Shawntel and them, 'The younger guys got to go,'\" Thomas says. \"But Shawntel would take up for us. Him and Savalas.\"Given an ultimatum, the brothers chose the Tribe. They became the leaders of the splinter group, says an East Cleveland Police officer. (The brothers deny the charge.)Yet their departure set off a feud that rages to this day. \"The Bloods and the Crips -- it was just playing around,\" Gibson says. \"Then one day, they started saying we was the Bloods and Crips for real.\"Gangs aren't known as recruiting grounds for Mensa, but the Tribe lacked even the limited sophistication necessary for organized crime, police say. \"They don't have the intelligence to even handle nothing like that,\" says an East Cleveland cop who asked not to be identified.But what they lacked in smarts, they made up for in hustle. Members racked up impressive rap sheets for carjackings, robberies, and drug dealing.Police don't know if a share of the proceeds flowed to Crosby and Gibson, but the $20,000 that Crosby's family laid out in legal fees in the last year raises suspicions. \"It has to be coming from either them or the younger guys passing it up,\" says an officer.Adds Aaron Phillips, an assistant county prosecutor based in East Cleveland: \"Nobody ever worked, and they sure had money. They sure was flossing, spending money like crazy.\"Over the years, the Tribe went through names the way most people change T-shirts -- they've also been known as the Shaw Avenue Boys and the Bros. And the gang grew, as members' younger brothers came of age. \"That's how it got bigger,\" Gibson says. \"Your little brother is gonna hang out with you sometimes.\"But one thing remained constant: the color red. \"We stuck with red, and then it symbolized us being together,\" says Thomas.Tribe members are so protective of their color that they jump those who wear it without their permission. Several years ago, freshman football players from Shaw High drew the Tribe's ire by walking to practice in their red jerseys. \"We had one little boy that was beat to a pulp and blinded, 'cause he had on red,\" a police officer says. \"They beat him so bad that it was just beyond repair.\"After the two gangs split, the Valley Low wore blue and hung out on Hayden Avenue, where most of them live. The Tribe stayed on Shaw. But the two streets intersect at a gas station, which became the epicenter for the rivalry.When the Tribe and the Valley Low crossed paths, as they often did, there would be \"hand-to-hand combat,\" Thomas says. In 1994, Crosby, Gibson, and two other Tribe members ran into the Valley Low at a clothing store on Hayden. Crosby tangled with a guy named James Parker. \"I turned around, and I just protected myself,\" Crosby says. \"Hit him a couple times, and he fell and busted his head on the curb.\" Crosby pleaded guilty to aggravated assault; he was given a suspended sentence and placed on probation for a year.The fights usually lasted \"until somebody pulled out a gun and everybody dispersed,\" says Thomas. At the time, the gangs were shooting into the air so much that East Cleveland looked like a giant Afghan wedding. And when they weren't shooting clouds, they were strafing homes. The facade of Crosby's house is pockmarked from Valley Low drive-bys. \"They was never trying to kill anybody,\" Thomas says. \"It was just to let you know, 'I will shoot.'\"Police offer a less gracious explanation. \"I consider them bad shots,\" an officer says.Whatever the reason, the gang war in East Cleveland was producing no fatalities. That changed last year.In the early afternoon of May 30, 2001, Tribe members were playing basketball in the backyard of James \"Big Boy\" Maddox's house on Shaw Avenue. A member nicknamed \"Bodie\" spotted several Valley Low members across the street at the Shaw football stadium. He alerted Jermelle Thomas.Not wanting to alarm everybody, Thomas pulled Savalas Crosby aside and asked him to come to the front of the house. Crosby and Thomas saw Valley Low member Steve Cottrell -- a.k.a. \"Steve Jerome\" -- being held back by his friends. \"We saw them trying to come over here, and the girls were trying to stop him, but at that point, we were like 'Let him come,'\" Thomas says.Several Tribe members emerged from the backyard to provide reinforcements. The outnumbered Valley Low beat a slow retreat. The Tribe followed.But when the Tribe got into the open, Cottrell pulled a gun and fired. \"They kind of suckered us over there, acting like they was going to fight,\" Thomas says, \"until they got right to where they could get behind something and we couldn't, and then they started shooting at us.\"The Tribe was surprised by Cottrell's brazenness. \"They would never come and shoot at us in broad daylight,\" says Gibson, who claims the Valley Low preferred \"cowardly acts\" like drive-bys. \"He must have been trying to prove he had a lot of heart.\"Cottrell had arrived from Alabama only a few years earlier. Apparently, no one had bothered to teach him East Cleveland gang etiquette.None of the Tribe was hit. A cop pulled over and Tribe members told him what happened. \"The officer told us he was leaving in a few hours to go to Vegas, and he didn't have time for it,\" Thomas later said in court.Another Tribe member, Othello Calloway, said the officer \"told us he was going on vacation, let Savalas handle it.\"Assistant Prosecutor Phillips says the Tribe mischaracterize the exchange. \"It is true he was going on vacation, and he was going to Vegas, but he told them he was putting it in the hands of another detective,\" Phillips says. East Cleveland Police Chief Patricia Lane did not respond to repeated interview requests.Most Tribe members decided to stay off the street that day -- but not all of them. Later that afternoon, Derrick and Roger Ashley were playing catch in their front yard when Cottrell and two other Valley Low members -- Marcus \"Dupree\" McCall and Richard Johnson -- strolled past. Cottrell stared down Roger, 21. \"I asked him what the fuck he was looking at,\" says Roger.\"I'm looking at your ho ass,\" Cottrell allegedly responded. (Through his lawyer, Cottrell declined to comment.)Roger threw down his baseball glove like a gauntlet. \"You all ain't going to play me as no ho,\" he said and stormed into his house. The Valley Low members started jogging away. When they looked over their shoulder, they saw Roger emerge with a shotgun, Johnson told police. (The Ashley brothers deny that Roger had a shotgun.)At about 5 p.m., the three Valley Low members again walked past the Ashleys' house and found Tribe member Tony \"Animal\" Bonds standing on the doorstep with a friend.\"Steve asked Animal what he was looking at, and Animal mumbled something,\" Johnson said. \"Steve then turned towards Animal and showed him the .380 pistol that he had in the waistband of his pants.\"Animal ducked inside, and the incident ended without violence, but the tension was rising.While the two gangs sparred, Larry \"Shock\" Calloway -- Crosby and Gibson's 18-year-old cousin -- was installing new rims on his friend Antonio Marshall's Ford pickup. The two men ran a few errands, then drove to Elwood Road, near Shaw.A bunch of Tribe members, including Jermelle Thomas, came to admire Calloway's handiwork. \"Larry was in the middle of the street, like joking around, while we was looking at the truck,\" Thomas says.Meanwhile, the Valley Low was on the prowl.After the day's incidents, Johnson rented a car in exchange for a rock of crack, then picked up Cottrell and Dupree, intending to get high. \"We was riding for a minute, and then Dupree said, 'Let's see if them Tribe boys out,'\" Johnson later said in court.They saw the Tribe on Elwood. Johnson pulled over on another street. Dupree jumped out, carrying a .357 Magnum. Cottrell, carrying a .380 semiautomatic, followed. Johnson waited in the car.The backyards on Shaw merge into a thick, tangled field of weeds -- perfect for guerrilla warfare. Dupree and Cottrell scurried through the brush, then popped out and started shooting.Thomas heard what sounded like a firecracker. He turned and saw the muzzle flash from Cottrell's gun. \"I could see the fire coming,\" Thomas says. He turned to run, then felt a thump, as if he'd been hit with a rock. The bullet entered his buttocks, cut through his torso, and blew out his chest. He tried to keep running, but collapsed. \"Help!\" he screamed.Another bullet tore into Larry Calloway. The slug ripped through his arm, burrowed into his chest cavity, and pierced his heart. \"Larry, get up, man!\" Marshall said. He smacked Calloway. \"Larry, get up! Get up!\" But Calloway just lay there, his eyes wide open.Othello Calloway and another man carried Larry to the sidewalk. \"I didn't see no holes and no blood, but he was heavy when I tried to pick him up off the ground,\" Othello later said in court.Larry Calloway was pronounced dead at Meridia Huron Hospital at 11:32 p.m. The hours after the shooting were a blur to Marshall. \"It was just the blue and the red, you know\" he said. \"I just couldn't see nothing but the police car.\"After Calloway's murder, police braced for retaliation. \"They was making threats that something was going to happen,\" a police officer says. \"After Larry Calloway's funeral, there was supposed to be a big shootout that we got wind of.\"But Tribe members say they had no intention of seeking revenge. \"We told the police, 'We're not even on that. We want you to handle it,'\" says Shawntel Gibson.From his hospital bed, Jermelle Thomas positively identified Steve Cottrell as one of the shooters. Police staked out the home of one of Cottrell's friends and arrested him within days.Several months later, they arrested Richard Johnson. He confessed to his role as the getaway driver and fingered Cottrell and Dupree as the shooters, agreeing to testify against them in exchange for leniency. He pleaded guilty to voluntary manslaughter and was sentenced to six years in prison.The coroner determined that the bullet that killed Calloway came from a .357 Magnum, so it's likely Dupree fired the fatal shot. He was 17 at the time of the shooting. A juvenile court judge ordered that he be tried as an adult. Dupree pleaded guilty to murder and was sentenced to 15 years to life.Only Cottrell would go to trial, and his case turned the courtroom into a new battleground. The rival factions wore colors and flashed gang signs across the aisle. During one lunch break, women associated with the gangs flung accusations at each other in the cafeteria in front of jurors. \"I have never seen it happen before,\" Judge Judith Kilbane Koch said, as she scolded the defense lawyer.Despite his plea agreement, Johnson was reluctant to testify when Assistant County Prosecutor John Kosko put him on the witness stand. \"Cottrell was never with us,\" Johnson said. \"He was never with us.\"But it was obvious to observers that he was being coached by Valley Low members in the courtroom. \"During the testimony of the witness, there were people in the audience that [were] pointing to their head like a gun, indicating if he should give an answer yes or no,\" testified Sheriff's Deputy Larry Jordan.After Kosko read Johnson his police statement implicating Cottrell, Johnson broke down and confessed. The jury found Cottrell guilty of aggravated murder with a firearm, with an added penalty because it was gang-related. He was also found guilty of attempted murder, for shooting at Jermelle Thomas. Cottrell was sentenced to 29 years to life.The murder brought the gangs unwanted attention. \"It's not that they're doing anything new, we're just on their ass,\" says Phillips. A month after Calloway's slaying, the prosecutor's office and East Cleveland Mayor Emmanuel Onunwar held a rally to send a message to the gangs. They called it \"Take Back Shaw Avenue.\"But the Tribe wasn't going anywhere. About 50 members, decked in red, arrived to bring their message to the media, which showed up expecting a self-congratulatory gabfest by politicians. \"We had just lost Larry from guys shooting in the backyard, and they was still blaming us for it,\" Gibson says, noting that the rally wasn't held on Hayden, where the shooters lived. \"That's why we came out and told them how it really was.\"The gang felt unfairly targeted by East Cleveland Police, whom the Tribe claims are in league with the Valley Low. \"We told them that the police come down in their police cars, throwing gang signs, wearing blue bandannas, threatening to kill us,\" says Gibson.\"Quote this,\" says Derrick Ashley. \"The East Cleveland Police Department is the biggest gang in East Cleveland. And let 'em know Derrick Ashley said it.\"Though the Tribe's claims sounded laughable, Mayor Onunwar paid attention. \"As I listened to them, it occurred to me, you know, everybody talks about jobs, but some of them have a long criminal history, and no one is providing employment,\" he says.Onunwar created an initiative called the Second Chance Program and hired about a dozen Tribe members to work for the city cutting grass, doing maintenance, and sweeping streets. The program allowed Tribe leaders to crow like stumping politicians. \"We the guys that got guys jobs in the city,\" Gibson often brags.But soon after Onunwar was reelected, the city's persistent financial woes forced him to make layoffs. \"I did not forget them,\" Onunwar says. \"I just don't have the money.\"No matter. Anyone who thought a few jobs would change the Tribe's lifestyle need look only as far as Larry Calloway's funeral. Mourners eschewed suits and ties for red shirts. Soon after, Tribe members got tattoos reading \"R.I.P. Shock.\"Long before her son was murdered, Nerrissa Calloway, a tall, thin woman who works behind the meat counter at Giant Eagle, had trouble paying rent to landlord Andre Reed. \"He would always have to chase her down, come to where she worked,\" says Reed's wife, Daphene. \"Couple times, he sent me down there, and she would say, 'I have half of it.'\"In April, Andre served Nerrissa with an eviction notice, but when her son died the next month, Andre decided to give her more time. \"My husband was kind of lenient with her, and he was telling her, 'I understand. Don't worry about the rent right now,'\" says Daphene.The Reed family knew the strife on Shaw firsthand. They had lived there for five years before moving to quieter Cleveland Heights. \"I did not want to bring my children up in that environment,\" Daphene says.The house where Nerrissa stayed was next door to where Patricia Gibson and her son Savalas Crosby lived. The two homes became a magnet for gang members. \"By them moving next door to where I stayed at, that brought a lot of heat,\" says Savalas Crosby. \"It brought all kinds of turmoil around my house.\"Although Andre cut Nerrissa a break on rent, his patience eventually wore thin. \"After about two months, he said, 'Enough is enough, we still got a mortgage to pay,'\" Daphene says. Andre served Nerrissa with eviction notices in June and again in July.Soon after, Daphene ran into Nerrissa at Giant Eagle. \"She approached me and told me that she had moved,\" Daphene says.Yet Nerrissa's son Othello still lived in the house, and members of the Tribe used it as a hangout. They came and went as they pleased, through a broken back door. (Nerrissa claims she was paying Reed a fraction of the rent, and that he had agreed to let her friend take over the lease.)On November 8, 2001, Andre decided to move the stove and refrigerator out of the house. He rounded up sons Andre Jr., 15, Anthony, 17, and their friend Chris Moore, 18, to provide extra muscle. A family friend came along for the ride, but left once they got to Shaw.The three boys waited in the car while Andre Sr. went inside. A few minutes later, he signaled them to come in. What they found was a scene from a gangsta rap video. \"I seen a whole bunch of dudes chilling,\" Anthony said in court. \"Ten to 13. They had on red.\"Tribe members had gathered to watch the martial arts movie Iron Monkey. \"We was smoking blunts,\" admits Shawntel Gibson.Andre Sr. called Othello into the kitchen and told him of plans to move the appliances. But Jerome Thomas -- Jermelle's brother -- would have none of it. \"Jerome told him not to put his hands on anything, or he was going to put his hands on him,\" Othello said in court.\"I ain't worried about y'all,\" Andre Sr. allegedly responded. \"I got 13 shots.\"The Tribe took that to mean Reed had a gun. Jerome put him in a full nelson while Shawntel frisked him. \"Where's it at Where's it at\" Shawntel asked. Tribe members also patted down the three children. They didn't find any guns, but snatched Andre Jr.'s silver necklace, the boys say.The Tribe wrestled Andre Sr. and the three boys out the back door. Near an SUV parked in the trash-littered alley, the Reed children saw a stocky, dark-skinned man with long hair. He was holding a rifle.The boys took off running. They heard several shots. When they reached the house their family friend had gone to visit, Andre Jr. called his mom.\"You need to get down here,\" Andre Jr. said.\"Where's your dad\" Daphene asked.\"I can't find him, Mom. I can't find him.\"When Daphene arrived on Shaw, she heard sirens and saw the flashing lights of emergency vehicles. Andre Sr.'s body lay in a yard across the street from Nerrissa's. \"I didn't even notice my husband laying over there until I seen his boots,\" Daphene says.Andre Sr. had been hit four times as he ran away. The fatal shot sliced through his back and perforated his lungs, aorta, and heart.That night, the three boys went to the police station and identified their father's assailant. They knew the telltale shoulder-length hair to be that of a man called \"Banky\" -- Savalas Crosby. Tribe member Andre Mims later confirmed it was Crosby, who wore a red bandanna over his face. \"I know who my dogs are, and it was him,\" Mims told police.Crosby is alleged by the prosecutor's office to be the Tribe's enforcer. \"Whenever somebody needs to be dead for the Tribe, they call Savalas Crosby,\" says Assistant County Prosecutor Phillips.At Crosby's home on Shaw, a green and yellow macaw chews lead paint chips from a window sill. A back room houses a red-tail boa, a tarantula, and a small alligator grinning sinisterly from its glass cage.Downstairs in the basement, Crosby produced tracks for his fledgling label, Family Blood Records. \"Everybody who say they got some talent, I'll spend time with them,\" says Crosby. \"It was something I was doing, trying to build a future for my family.\"But as magnanimous as Crosby tries to sound, he knows his reputation speaks otherwise. \"The police know I'm a name brand around here,\" he says. \"Everybody know me. I'm a public figure. And they put my name in the garbage.\"Crosby gave them plenty of help. He's been arrested several times for assault, dealing crack and weed, and weapons possession.On December 16, 2000, Crosby allegedly shot Kenneth Taylor in the back while he sat in his car, paralyzing him from the waist down. A few weeks earlier, Crosby had been in a fistfight with Taylor's cousin, who was in the Valley Low, prosecutors say.Crosby claims he was at home at the time of Taylor's shooting, and the case has yet to go to trial. Crosby's family paid $3,800 to bail him out of jail. Eleven months later, he allegedly murdered Andre Reed.\"That's kind of the modus operandi of these gang guys,\" says Assistant County Prosecutor Peter Corrigan. \"They don't just take it out on you, they hurt your family --whether you're being evicted out of your party house, or you get in a fistfight at a bar and somebody whips your ass.\"At the trial for the slaying of Andre Reed, his sons identified Crosby as the killer. Andre Mims, in jail on charges of burglary and receiving stolen property, was then led into the courtroom in a county-issue orange jumpsuit and handcuffs. As he shuffled to the stand, he nodded toward Savalas, and it soon became clear that Mims would be a hostile witness.\"Playing dumb\" doesn't do justice to his testimony -- Mims played borderline retarded. He claimed not to remember the details of his police statement. When shown a transcript, Mims denied its authenticity, though he had initialed every answer. In the end, prosecutors were reduced to showing him a picture of himself amid seven members of the Tribe, yet Mims denied even knowing the men's names.\"How can you be in a picture with seven people and not know their names\" Assistant Prosecutor Mark Mahoney asked.\"That's how it be,\" Mims answered.\"How it be where\"\"Somewhere.\"The act apparently didn't satisfy Crosby, who couldn't have been pleased with how quickly Mims initially rolled over on him. Within earshot of a sheriff's deputy, Crosby allegedly said, \"That boy will be dead in 30 days or less.\"After the prosecution rested, a stream of Crosby's family members took the stand to provide his alibi. They claimed he had been at a party celebrating the birth of his younger brother Sylvester's first child.But under cross-examination, the stories at times seemed confusing or contradictory. Shawntel Gibson's girlfriend, Nicole Jones, testified that she had picked him up after the shooting, yet claimed she hadn't seen the body -- or any of the emergency vehicles that arrived within 15 minutes of the murder. Jones also said she had spent hours assembling a bassinet at the party where Crosby claimed to be, yet when Crosby took the stand, he had no memory of her doing so.The jury wasn't buying Crosby's story. He was found guilty of murder.At his sentencing, he offered a rambling statement that was more X-Files than Law & Order, painting himself as the victim of a vast conspiracy. \"This is a case of bogus lies, and I'm in the middle of it,\" Crosby said. He blamed police, the victim, the victim's family -- even his own lawyer.Near the end, Crosby broke down in tears. \"That's my family!\" he bellowed. \"That's my family! That's all I got, man! You took my family away from me!\"But Judge David Matia dismissed him brusquely. \"Unfortunately, the Reed family doesn't have all their family anymore,\" he said. With that, he sentenced Crosby to 18 years to life.Crosby's family refuses to accept the verdict. They silk-screened T-shirts reading \"Free Savalas,\" in hopes of turning him into East Cleveland's own Mumia Abu Jamal. Shawntel Gibson even suggests that the East Cleveland Police murdered Andre Reed so they could frame Crosby.Tribe members are equally insistent in denying accusations that they're a gang. The \"b\" they make with their fingers isn't a gang sign, they argue; it stands for \"brothers,\" not \"Bloods.\" And the red T-shirts They're just an expression of pride in their alma mater, Shaw High -- their beatdown on freshmen football players notwithstanding.\"It's just a bunch of guys hanging out,\" Gibson says.\"We stopped considering ourself to be a gang,\" says Jermelle Thomas. \"We grew out of it.\"But it no longer seems to matter if they consider themselves a gang or not. Everybody else does, including the police, prosecutors and, most important, their rivals in the Valley Low.As recently as August, the rival gangs drew guns on each other during a confrontation in the street, but stopped short of an Old West-style shootout. The Valley Low seems to be seeking reinforcements by merging with another gang, the Hot Sauce Hustlers, who also wear blue and who got their name because they hang out near a Hot Sauce Williams Barbecue Restaurant.Law-enforcement agencies aren't letting up, either. One Tribe member with an outstanding warrant was arrested when he made the mistake of showing up at the courthouse for Crosby's trial. The prosecutor's office is also applying for a federal grant to start a school program that would hinder gang recruiting.\"They're some intimidating sons of bitches, and I hate them,\" says Assistant Prosecutor Aaron Phillips. \"Without them, the city of East Cleveland could be something.\"But Gibson can only look back and marvel. He was just a scrawny kid who moved to Shaw Avenue. \"From day one, when we hit East Cleveland, it was over for us,\" he says. \"We moved to hell.\" Foundation.ParagraphTool = Foundation.ParagraphTool function (element) { // Compile and store usable paragraph endings that are good for element insertion // Avoides paragraph insertions immediately following a header or block element // Includes paragraph endings before a this.bodyContainer = jQuery(element); this.textNodeMatch = new RegExp('^(#textAIB)$','i'); this.getPreviousNonEmptySibling = function (currentNode) { let prevNode = currentNode currentNode.previousSibling : null; let prevNodeFound = false; while (prevNode && !prevNodeFound) { let isText = prevNode.nodeType === Node.TEXT_NODE; // Empty text node. Move on to the next node if (isText && prevNode.nodeValue.trim() === '') { prevNode = prevNode.previousSibling; } else { prevNodeFound = true; } } return prevNode; } this.getNextNonEmptySibling = function (currentNode) { let nextNode = currentNode currentNode.nextSibling : null; let nextNodeFound = false; while (nextNode && !nextNodeFound) { let isText = nextNode.nodeType === Node.TEXT_NODE; // Empty text node. Move on to the next node if (isText && nextNode.nodeValue.trim() === '') { nextNode = nextNode.nextSibling; } else { nextNodeFound = true; } } return nextNode; } this.isDoubleBrParagraphBreak = function (currentNode) { let prevNode = this.getPreviousNonEmptySibling(currentNode); let prevPrevNode = this.getPreviousNonEmptySibling(prevNode); if (currentNode && prevNode && prevPrevNode) { let currentNodeIsBr = currentNode.nodeName === 'BR'; let prevNodeIsBr = prevNode.nodeName === 'BR'; let prevPrevNodeIsText = prevPrevNode.nodeName.match(this.textNodeMatch) !== null; let isBrParagraphBreak = prevPrevNodeIsText && prevNodeIsBr && currentNodeIsBr; if (isBrParagraphBreak) { return true; } } return false; } this.isBrParagraphBreakBeforeBlockElement = function (currentNode) { let prevNode = this.getPreviousNonEmptySibling(currentNode); let nextNode = this.getNextNonEmptySibling(currentNode); if (prevNode && currentNode && nextNode) { let prevNodeIsText = prevNode.nodeName.match(this.textNodeMatch) !== null; let currentNodeIsBr = currentNode.nodeName.match(/^BR$/i) !== null; let nextNodeIsBlock = nextNode.nodeName.match(/^DIV$/i) !== null; let isParagraphBreakBeforeBlock = prevNodeIsText && currentNodeIsBr && nextNodeIsBlock; if (isParagraphBreakBeforeBlock) { return true; } } return false; } this.isParagraphBreak = function (currentNode) { let prevNode = this.getPreviousNonEmptySibling(currentNode); if (currentNode && prevNode) { let currentNodeIsP = currentNode.nodeName === 'P'; let currentNodeIsNotHeader = jQuery(currentNode).children().length let prevNodeIsNotBlock = prevNode.nodeName.match(/^IMGDIVBLOCKQUOTEULOLhr$/i) === null; // Check for only one or tag and empty text nodes as children let isPHeader = false; if (currentNodeIsP && currentNode.childNodes.length >= 3) { let textNodesHaveText = false; let brStrongElementCount = 0; let otherElementCount = 0; currentNode.childNodes.forEach((item)=> { if (item.nodeType === Node.TEXT_NODE) { if (item.nodeValue.trim() !== '') { textNodesHaveText = true; } } else if (item.nodeType === Node.ELEMENT_NODE) { if (item.nodeName.match(/^BSTRONG$/i) !== null) { brStrongElementCount++; } else { otherElementCount++; } } }) if (brStrongElementCount === 1 && textNodesHaveText === false && otherElementCount === 0) { isPHeader = true; } } let isParagraphBreak = prevNodeIsNotBlock && currentNodeIsP && !isPHeader; if (isParagraphBreak) { return true; } } return false; } let myParagraphTool = this this.paragraphEndNodes = myParagraphTool.bodyContainer.first().contents().filter(function(index, element) { let isText = this.nodeType === Node.TEXT_NODE; let isElement = this.nodeType === Node.ELEMENT_NODE; // Empty text node. Move on if (isText && this.nodeValue.trim() === '') { return false; } let currentNode = this; if (myParagraphTool.isParagraphBreak(currentNode)) { return true; } if (myParagraphTool.isDoubleBrParagraphBreak(currentNode)) { return true; } if (myParagraphTool.isBrParagraphBreakBeforeBlockElement(currentNode)) { return true; } return false; }) this.getParagraphEndNodeCount = function () { return this.paragraphEndNodes.length; } this.insertElemenAtIndex = function (element, index) { let isValidIndex = index < this.paragraphEndNodes.length; if (isValidIndex) { let currentNode = this.getNodeAtIndex(index); if (this.isDoubleBrParagraphBreak(currentNode)) { if (jQuery(element).get(0).tagName.match(/SCRIPT/i) !== null) { jQuery('').insertAfter(this.paragraphEndNodes[index]); jQuery('').insertAfter(this.paragraphEndNodes[index]); } else { jQuery('div.fdn-content-body').append(' ') let lineHeight = jQuery('[line-height-check]').get(0).clientHeight; jQuery('[line-height-check]').remove() if (jQuery(element).prop('tagName').match(/HIDDEN/i) !== null) { jQuery(element).children('div').last().css({ marginBottom: `${lineHeight*2}px` }); } else { jQuery(element).css({ marginBottom: `${lineHeight*2}px` }); } } } jQuery(element).insertBefore(this.paragraphEndNodes[index]); } else { console.warn('Foundation.ParagraphTool.insertElemenAt: invalid insertion index', index); } } this.getNodeAtIndex = function (index) { return this.paragraphEndNodes[index]; } } window.Foundation = window.Foundation {}; Foundation.Content = Foundation.Content {}; Foundation.Content['1480280'] = Foundation.Content['1480280'] {}; Foundation.Content['1480280'].inlineComponents = [{ componentOid: '38482495', parentWrapperClass: '', insertPoint: '3', startingPoint: '1', requiredCountToDisplay: '5', componentHtml: \"\\n\\n\\/\\/ Define the slot\\ngoogletag.cmd.push(function() {\\nconst currentElement = jQuery('[ad-slot-div-id=\\\"CLE_NativeInline\\\"]').first();\\nconst adTemplateId = currentElement.attr('ad-slot-div-id');\\nconst adTemplateItem = Foundation.Ad.getSlotConfigTemplate(adTemplateId);\\nconst generatedDivId = Foundation.Ad.generateDivIdFromSlotConfigPresets(adTemplateId);\\ncurrentElement.attr('ad-slot-div-id', generatedDivId);\\ncurrentElement.attr('id', generatedDivId);\\n\\/\\/ console.info(`[FdnAd] adTemplateId: ${adTemplateId}, generatedDivId: ${generatedDivId}, currentDivId: ${currentElement.attr('ad-slot-div-id')}`);\\n\\/\\/ console.info(`[FdnAd] adTemplateItem && generatedDivId ${adTemplateItem !== null && generatedDivId !== null} ${adTemplateItem} ${generatedDivId}`);\\nif (adTemplateItem !== null && generatedDivId !== null) {\\nif (adTemplateItem.type.match(\\/displaynative\\/i) !== null) {\\nFoundation.Ad.slots[generatedDivId] = googletag.defineSlot(adTemplateItem.adUnit, adTemplateItem.sizes, generatedDivId)\\n}\\nelse if (adTemplateItem.type.match(\\/outofpage\\/i) !== null) {\\nFoundation.Ad.slots[generatedDivId] = googletag.defineOutOfPageSlot(adTemplateItem.adUnit, generatedDivId)\\n}\\nif (adTemplateItem.targeting) {\\nadTemplateItem.targeting.forEach(function (target, index) {\\nFoundation.Ad.slots[generatedDivId].setTargeting(target.key, target.value)\\n})\\n}\\nFoundation.Ad.slots[generatedDivId].addService(googletag.pubads())\\nif (adTemplateItem.sizeMap) {\\nFoundation.Ad.slots[generatedDivId].defineSizeMapping(Foundation.Ad.CreateSizeMapping(adTemplateItem.sizeMap))\\n}\\nFoundation.Ad.slots[generatedDivId].slotLoaded = false\\n}\\n\\/\\/ Small delay and queue up the show ad funciton\\nsetTimeout(()=>{\\ngoogletag.cmd.push(function() {\\nFoundation.Ad.showAd(currentElement);\\n});\\n}, 200);\\n});\\n\\n\", },{ componentOid: '38482494', parentWrapperClass: '', insertPoint: '2/3', startingPoint: '1', requiredCountToDisplay: '9', componentHtml: \"\\n\\n(function () {\\nvar realOneHookElement = document.querySelector('[r1-script-hook]');\\nvar realOneScriptElement = document.createElement('script');\\nrealOneScriptElement.defer = true;\\nrealOneScriptElement.src = 'https:\\/\\/www.voqally.com\\/hub\\/app\\/r.jskey=d3e30ab48d6a7d675fe4f6739b94a493';\\ndocument.querySelector('[r1-script-hook]').after(realOneScriptElement);\\nrealOneHookElement.remove();\\n})();\\n\\n\", }]; Foundation.Content['1480280'].setupInlineComponents = function (callback) { setTimeout(() => { let contentBody = jQuery('[fdn-content-multi-item=\"1480280\"] .fdn-content-body'); // For multiple content scenarios if (contentBody.length) { Foundation.Content['1480280'].paragraphTool = new window.Foundation.ParagraphTool(contentBody); } // Assume only a single content else { contentBody = jQuery('.fdn-content-body'); Foundation.Content['1480280'].paragraphTool = new window.Foundation.ParagraphTool(contentBody); } var myParagraphTool = Foundation.Content['1480280'].paragraphTool Foundation.Content['1480280'].inlineComponents.forEach((item,index) => { if (item.parentWrapperClass.trim() === '') { var componentElement = jQuery(item.componentHtml); } else { var componentElement = jQuery(`${item.componentHtml}`); } var paragraphCount = myParagraphTool.getParagraphEndNodeCount(); // No need to insert if there aren't enough paragaphs if (paragraphCount >= parseInt(item.requiredCountToDisplay)) { // Matches specific paragraph insertion indexes if (item.insertPoint.match(/^\\d+$/) !== null) { var insertIndex = parseInt(item.insertPoint) - 1; // Insert within content if (insertIndex < paragraphCount) { myParagraphTool.insertElemenAtIndex(componentElement, insertIndex); } // Append to the end if the insert point is beyond the paragraph count else { contentBody.append(componentElement); } } // Matches for 1/2, 1/4, 2/3, 5/6, etc else if (item.insertPoint.match(/^[1223456]\\/[23456]$/) !== null) { var fractionMatch = new RegExp(/^([123456])(:\\/)([23456]$)/); var fractionPart = parseInt(item.insertPoint.match(fractionMatch)[1]); var fractionWhole = parseInt(item.insertPoint.match(fractionMatch)[2]); var fractionValue = fractionPart / fractionWhole; var fractionIndex = Math.floor(myParagraphTool.paragraphEndNodes.length * fractionValue) - 1; myParagraphTool.insertElemenAtIndex(componentElement, fractionIndex); } // Matches for every Nth insertion point else if (item.insertPoint.match(/^\\d*th$/i) !== null) { var intervalIndex = parseInt(item.insertPoint.match(/^(\\d*)th$/i)[1]); var startingIndex = item.startingPoint; for (var i = startingIndex; i < myParagraphTool.paragraphEndNodes.length; i++) { if ((i - startingIndex) % intervalIndex === 0) { let currentNode = myParagraphTool.getNodeAtIndex(i); myParagraphTool.insertElemenAtIndex(componentElement, i); } } } } }); Foundation.Content['1480280'].setupInlineComponents = function () { return true; }; if (typeof callback === 'function') { callback(); } }, 200); } jQuery(function () { Foundation.Content['1480280'].setupInlineComponents(); }); About The AuthorKevin HoffmanScroll to read more Cleveland News articles // Define the slot googletag.cmd.push(function() { const currentElement = jQuery('[ad-slot-div-id=\"CLE_NativeEndOfArticle\"]').first(); const adTemplateId = currentElement.attr('ad-slot-div-id'); const adTemplateItem = Foundation.Ad.getSlotConfigTemplate(adTemplateId); const generatedDivId = Foundation.Ad.generateDivIdFromSlotConfigPresets(adTemplateId); currentElement.attr('ad-slot-div-id', generatedDivId); currentElement.attr('id', generatedDivId); // console.info(`[FdnAd] adTemplateId: ${adTemplateId}, generatedDivId: ${generatedDivId}, currentDivId: ${currentElement.attr('ad-slot-div-id')}`); // console.info(`[FdnAd] adTemplateItem && generatedDivId ${adTemplateItem !== null && generatedDivId !== null} ${adTemplateItem} ${generatedDivId}`); if (adTemplateItem !== null && generatedDivId !== null) { if (adTemplateItem.type.match(/displaynative/i) !== null) { Foundation.Ad.slots[generatedDivId] = googletag.defineSlot(adTemplateItem.adUnit, adTemplateItem.sizes, generatedDivId) } else if (adTemplateItem.type.match(/outofpage/i) !== null) { Foundation.Ad.slots[generatedDivId] = googletag.defineOutOfPageSlot(adTemplateItem.adUnit, generatedDivId) } if (adTemplateItem.targeting) { adTemplateItem.targeting.forEach(function (target, index) { Foundation.Ad.slots[generatedDivId].setTargeting(target.key, target.value) }) } Foundation.Ad.slots[generatedDivId].addService(googletag.pubads()) if (adTemplateItem.sizeMap) { Foundation.Ad.slots[generatedDivId].defineSizeMapping(Foundation.Ad.CreateSizeMapping(adTemplateItem.sizeMap)) } Foundation.Ad.slots[generatedDivId].slotLoaded = false } // Small delay and queue up the show ad funciton setTimeout(()=>{ googletag.cmd.push(function() { Foundation.Ad.showAd(currentElement); }); }, 200); }); TrendingConcord Casimir, Cleveland's Feline Answer to Punxsutawney Phil, Predicts Spring Weather by Eating Pierogies 153554b96e