text:
#ifndef JACE_JFACTORY_H
#define JACE_JFACTORY_H

#ifndef JACE_OS_DEP_H
#include "jace/os_dep.h"
#endif

#ifndef JACE_NAMESPACE_H
#include "jace/namespace.h"
#endif

#include <jni.h>

#include "jace/BoostWarningOff.h"
#include <boost/shared_ptr.hpp>
#include "jace/BoostWarningOn.h"

BEGIN_NAMESPACE_2( jace, proxy )
class JValue;
END_NAMESPACE_2( jace, proxy )

BEGIN_NAMESPACE( jace )
class JClass;
END_NAMESPACE( jace )

BEGIN_NAMESPACE( jace )

/**
 * An interface for a factory that creates new instances
 * of a specific JValue subclass.
 *
 * @author Toby Reyelts
 *
 */
class JFactory {

public:

/**
 * Creates a new instance of the value type
 * for this JFactory.
 */
JACE_API virtual boost::shared_ptr< ::jace::proxy::JValue > create( jvalue val ) = 0;

/**
 * Creates a new instance of the value type for this JFactory
 * and throws that instance.
 *
 * This method is equivalent to
 *
 *   throw * ( JFactory::create( aValue ) ).get();
 *
 * except that the return value's real type is preserved and
 * not sliced to a JValue upon being thrown.
 *
 */
JACE_API virtual void throwInstance( jvalue val ) = 0;

/**
 * Returns the class of which this factory
 * creates instances.
 *
 */
JACE_API virtual const ::jace::JClass& getClass() = 0;

/**
 * Destroys this JFactory.
 *
 */
JACE_API virtual ~JFactory();

};

END_NAMESPACE( jace )

#endif // #ifndef JACE_JFACTORY_H


We made our minds on making to the cost this day so we got the bikes packed and set off early in the morning, Quito is a very big city so having a working maps on GPS helped allot and we got through the morning traffic just fine.
For a first couple of hours we were still in the mountain twisty roads with many nice views and the roads were in good shape, but as you get closer to the Pacific the scenery changes from somewhat of a jungle ride to dusty almost desert like areas. The mountains cities are nice and clean and here we started to see more trash along the road and poor dirty small towns everywhere, still it was a great ride and new things to see on my trip.
Finally after 300 plus mile ride we made to the cost, we still had to get through Manta a busy port city and after that was all beaches and ocean views. As we were searching for place to stay in mall towns along the cost we noticed another traveler, His name is Roberto and his is traveling on BMW 650X from Mexico to where else? Bottom of SA :). So we rolled in to Puerto Cayo where we found a cheap hostal to stay for the night.


text:
Backstage news regarding Brock Lesnar's appearance on the October 1st 2021 edition of Smackdown
Brock Lesnar made an appearance on the October 1st 2021 edition of WWE Smackdown. Lesnar had an in-ring confrontation with Roman Reigns and then later cut a backstage promo about being a free agent.
According to Mike Johnson of PWInsider.com, the backstage segment was pre-taped. Johnson noted the following…
"We are told Lesnar left the arena right after his in-ring segment with Roman Reigns to head home. There is an expectation among some that he'll be on RAW Monday, but we haven't 100% confirmed that."
Lesnar is scheduled to challenge Reigns for the Universal Title at the Crown Jewel PPV later this month.
ASK TITO: WWE Draft Night #1 on Smackdown, Adult Oriented NXT, Sammy Guevara AEW TNT Title, and More
Reference made to AEW stars during segment on the October 1st 2021 edition of Smackdown

redpajama_set_name: RedPajamaCommonCrawl


text:
North Dakota pretrial services pilot project moves ahead
JACK DURA
The Burleigh County Courthouse is located in downtown Bismarck on Thayer Avenue between Fifth and Sixth streets.
Tom Stromme
Three judicial districts, including the one encompassing Burleigh and Morton counties, have been named pilot sites for a state project to keep indigent or less-serious offenders out of jail before trial.
The three sites -- the state's East Central, North Central and South Central judicial districts -- were chosen in mid-September from five that showed interest. The North Dakota Supreme Court's Pretrial Detention Reform Subcommittee helped the state Department of Corrections and Rehabilitation name the sites after conducting interviews and gathering information.
The 2019 Legislature budgeted $755,034 for the pretrial services program and its seven full-time staff. The 2021 Legislature will receive a report on the pilot's outcome.
Justice Jon Jensen said the court's committee is working to submit a proposed administrative rule to the Supreme Court in three or four months to specifically address "pre-appearance release," or the period between arrest and a person's first appearance before a judge.
Some people just don't need to be held for days to see a judge, Jensen said, pointing to people arrested on a Friday night for driving under suspension and held over a weekend.
"They're probably not a risk to the public, and they're probably not a flight risk because we're talking about a pretty small offense, but the impact on those folks was pretty significant," Jensen said.
Jailed defendants can lose their job for missing work, fall behind on rent and bill payments and miss medication, all because of a bond, as low as a few hundred dollars, that they can't afford to pay to get out.
A few days behind bars can disrupt and destabilize a person's life, according to Pat Bohn, director of the state's Parole and Probation Division.
"We know that people who are incarcerated for even up to three days are more likely to end up serving longer jail sentences and/or including committing more crimes in part because they're disconnected from a lot of their stabilizing factors," he said.
Work groups comprising judges, prosecutors, defense attorneys, law enforcement officials and corrections officials in each of the three judicial districts will convene to create policies for the pilot.
Designating which defendants are to receive pretrial services will be a major point of the pilot, Bohn said. Those services include supervision, case management and reports to judges from two pretrial service staff in each judicial district, to begin in 2020.
The state Department of Corrections and Rehabilitation also is planning to hire a consultant for advising on pretrial services. Jensen said the court's committee will act as a "sounding board" to the pilot as it moves ahead.
He and Bohn each said they'd like consistency statewide to emerge as a theme for any rules that might come forth.
South Central District Judge Doug Bahr said he hopes the pilot can produce positive results for defendants, their families and employers.
TOM STROMME, TRIBUNE
"I am sure when we get feedback from everyone involved in the working group and start looking at different things, we'll hopefully come up with some very good ideas of how to improve the lives of those people during those periods so they're not simply kind of in a limbo period while they're waiting for trial," said Bahr, who is coordinating the South Central pretrial work group.
Rep. Karla Rose Hanson, D-Fargo, who introduced the pilot project as a bill before it was rolled into the corrections budget, said pretrial services are "the next phase" of justice reform in North Dakota, after the 2017 Legislature passed a set of bills tabbed as "justice reinvestment" to curb recidivism and address offenders' behavioral health.
Hanson hopes the pilot can "objectively assess" defendants' risk to public safety and likelihood to appear for court dates, ultimately to produce "more equity in the system" for defendants who can't afford a $500 bond while wealthier people go free. It's also expensive to hold people for weeks or months preceding trial.
"I think it's good for defendants and it's good for taxpayers," Hanson said.
Reach Jack Dura at 701-250-8225 or jack.dura@bismarcktribune.com.
Sign up for our Crime & Courts newsletter
Get the latest in local public safety news with this weekly email
Capitol Reporter
Follow JACK DURA
Pretrial services likely next focus of North Dakota justice reform
Efforts are underway from multiple branches of state government to study pretrial detention and services for potential reform in North Dakota.
North Dakota court filings steady in 2018, Burleigh-Morton's judicial district still busiest
Court filings in 2018 in North Dakota stayed fairly steady while Burleigh and Morton counties' judicial district remained the busiest in the state.
Jason Heupel


Fast growing and colorful, Caitlin's Giant is perfect for adding color to your garden.The flowers of the Ajuga bloom in early Spring through mid-July and are usually shades of blue/purple. A member of the Mint family, it is commonly referred to as Bugleweed and Carpet Bugle. It is widely used in landscaping for groundcover. This invasive perennial spreads by runners and fills in areas very quickly. The Ajuga will spread over and around rocks, does well under trees in the shade, and it maintains its beauty year round.


Hi Lauren, I have very oily skin. Even though I use oil-free products, toner, and wash my face every single day (twice a day!!) the shine just won't go away and I break out all the time. What products do you use and do you have any tips for an oily skinned girl like me?
Cleanse your face with a botanical oil-based face wash.
It may sound counterintuitive but when you have oily skin, it's important to use a botanical oil-based face wash. Many of us have been trained to shop for "oil-free" products, but more recently dermatologists have learned that it's not necessarily the best rule of thumb to apply to every aspect of your face wash routine. So why use a botanical oil-based face wash? Cleansing botanical oils adhere to the sebum deep inside your pores and when the skin is rinsed with water both the sebum and botanical oil both get washed away!
Use products with oil-absorbing ingredients.
If you're prone to shine, start your beauty regimen by applying a mattifying gel or lotion (primer). Make Up For Ever has a great micro-perfecting primer that feels pretty weightless and gets the job done. At night, use an alcohol-free toner after you have washed your face and before you apply your moisturizer.
Apply a retinol exfoliate to unclog pores and limit oil production. I suggest putting this on at night since retinol makes the skin very sensitive to sun exposure. Also, because retinol is especially drying, I would recommend that you slather some Egyptian Magic on top (it's the perfect mix).
You still need to moisturize.
Last but not least, remember to drink plenty of water to keep your skin calm and properly hydrated.
Do you have an Ask Lauren question for me? Any topic is okay—relationships, fitness, beauty—anything. Leave your questions below or send me a private message via my profile page if you'd rather it be anonymous.
For more pointers on dealing with oily skin, be sure to check out this thread in the Fourm!
Ask Lauren: How Do I Fix Dry Skin?


The lying buggy Lima makes your daily life with a child a special treat.
Thanks to the lockable and swivelling front wheels the buggy copes with any bend.
A good suspension ensures optimum comfort on every ride. The 2-position foot rest and the continuously adjustable back rest, which can be brought into a lying position, make for extra comfort. You can easily stow your errands in the large shopping basket.
The detachable front bar, the padded 5-point harness system and a locking brake acting on both rear wheels provide for optimum safety.
For transport, the buggy Lima can be folded down small and can therefore be stored in any boot.
You will always have the right companion at your side with this lying buggy.
Double-parking brake on rear wheels.
Front bumper bar and canopy with fold away sun visor are removable.


text:
Q: Conflicting lifetime requirements when forwarding slices from a static callback into a channel I am using a Rust Midi library to receive and handle real-time Midi messages. It exposes a connect function that accepts a callback which will be called for every Midi message that arrives. My plan was to forward these Midi messages to a channel. This is the minimal version of the code that still reproduces my issue (Rust Playground link):
use std::sync::mpsc;

fn main() {
    let (tx, rx) = mpsc::sync_channel(0);

    // The callback forwards all data it gets to the channel
    connect(|data| tx.send(data).unwrap());

    // `rx` will be given to some other part of the program here
}

// This is basically the function signature of my Midi library's `connect` function
// I *don't have control over it*, as it's part of that external library
fn connect<F>(callback: F)
        where F: FnMut(&[u8]) + Send + 'static {}

After researching this issue for a while, I thought the solution was to add the move keyword to the callback. This made sense to me, as the callback may live longer than the main function so tx may have been dropped when the callback still needs it. move forces the callback to capture its environment by value which should lead to tx living exactly as long as the callback. Yet move changes nothing at all; the error message stays the same.
I noticed that when I change the parameter of the callback from &[u8] to just u8, move actually does the trick. I have no idea why this could be.
Another question I've found explains how to send mutable slices over channels, but I have immutable slices, so I assume there is an easier solution than the one that has been explained there.
To close this off: I know that it's possible to restructure the code to avoid channels. However, I'm still interested in the solution so I can solve future issues with channels and callbacks on my own.

A: It clicked inside my brain.
Additionally, to the move keyword, the following is required:
connect provides a reference to an array which lives for the scope of the callback. That means that when the callback finishes, the &[u8] is inaccessible. I tried sending the reference outside of the callback which made no sense because then it would have to live longer.
The solution is to create an owned object from the slice, like a Vec. That's trivially done by adding .to_vec():
connect(move |data| tx.send(data.to_vec()).unwrap());

The Vec can be passed around freely without any lifetime conflictions. :)

redpajama_set_name: RedPajamaStackExchange


Infinite choice and distractions aren't really what make us happy. You want to be the one he meets he's traveled this road.Most women imagine this whole settling down thing works really differently than it does."I'm not just looking for a hookup," he'll say in between sips of wine. A man who truly wants to get married will work with you, while a commitment-phobic man will give up at the first sign of conflict. Because when you spend the majority of your adult life single, you like doing things your way, and these guys have major trouble with change.He has an answer ready about why he was never married; he hasn't met the right person, or he focused on his career. He won't work things out, he won't compromise, and he won't bend. Suddenly, after months or years of devoting yourself to this person and thinking you're building a future, you're single again wondering WTF just happened.Lots of women start out dating people who are looking for things like casual dating, hookups, or "let's see what happens" romance.These women think, "Once they get to know me, if they love me, they will want to stay with me." The problem is, being ready to settle down is developmental. It's internally-driven, and has nothing to do with you.But once a guy hits his late 30s, there's no more clear "tell." Most men at this age trade frequent nights at the bar for dinners with friends and more low-key, mature plans. They start dressing better and maybe even losing their hair or going gray.They look different, they act different, and would dare say they're afraid of commitment at this age. But they have failed to address whatever it is that has held them back from making a real commitment.
You can look another person in the eye and tell him you love him, and you can squeeze that person tightly and make him feel it. And while it's wrong of them to waste your time, just know that this experience only validates that you, my friend, are able to love. It seems you're doomed to live a life without a love to share it.There's a reason it's been so tough, and the reason isn't you. Some women have found a way to create committed partnerships that last. Just like them, you can choose a partner who's ready for commitment. If this sounds familiar, chances are you've been dating people who weren't ready.It can easily take more than a decade to build a solid career. Many guys don't see examples of what good, satisfying love looks like.Though they're out there, few male role models talk about the potential for committed partnership to create deep fulfillment and growth.
If you want to settle down, you're looking for a taxi with the light on.
There are plenty of settings in Skype that let you limit who can call you and who can and cannot send you video.


text:
package TouristRoutes;

import Collections.Linear.Interfaces.UnorderedListADT;
import Collections.Linear.List.UnorderedList.LinkedUnorderedList;

import java.time.LocalTime;
import java.util.Iterator;
import java.util.Objects;

/**
 * Created by aluno on 1/19/16.
 *
 * @param <T>
 */
public class Trajeto<T extends Transporte> {

    private final String cidadeOrigem;
    private final String cidadeDestino;

    private final T transporteUsado;
    private final int tempoViagem;
    private final double distancia;
    private final double precoKm;
    private final UnorderedListADT<LocalTime> horarios;

    /**
     * cria uma classe trajeto com as informaçoes detalhadas
     * @param cidadeOrigem
     * @param cidadeDestino
     * @param transporteUsado
     * @param tempoViagem
     * @param distancia
     * @param precoKm
     */
    public Trajeto(String cidadeOrigem, String cidadeDestino, T transporteUsado, int tempoViagem, double distancia, double precoKm) {
        this.cidadeDestino = cidadeDestino;
        this.cidadeOrigem = cidadeOrigem;
        this.transporteUsado = transporteUsado;
        this.distancia = distancia;
        this.precoKm = precoKm;
        this.tempoViagem = tempoViagem;
        this.horarios = new LinkedUnorderedList<>();
    }

    public String getCidadeDestino() {
        return cidadeDestino;
    }

    public void addHorario(LocalTime horario) {
        horarios.addToFront(horario);
    }

    public T getTransporteUsado() {
        return transporteUsado;
    }

    public int getTempoViagem() {
        return tempoViagem;
    }

    public double getDistancia() {
        return distancia;
    }

    public double getPrecoKm() {
        return precoKm;
    }

    @Override
    public String toString() {
        return "\n\n" + cidadeOrigem + "->"
                + cidadeDestino + "\n"
                + transporteUsado.toString() + "\n"
                + "Tempo Viagem: " + tempoViagem + "\n"
                + "Distancia: " + distancia + "\n"
                + "Preco/Km: " + precoKm + "\n"
                + "Horarios: " + horarios.toString();
    }

    @Override
    public boolean equals(Object obj) {
        if (this == obj) {
            return true;
        }
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final Trajeto<?> other = (Trajeto<?>) obj;
        if (this.tempoViagem != other.tempoViagem) {
            return false;
        }
        if (Double.doubleToLongBits(this.distancia) != Double.doubleToLongBits(other.distancia)) {
            return false;
        }
        if (Double.doubleToLongBits(this.precoKm) != Double.doubleToLongBits(other.precoKm)) {
            return false;
        }
        if (!Objects.equals(this.transporteUsado, other.transporteUsado)) {
            return false;
        }
        return true;
    }

    @Override
    public int hashCode() {
        int hash = 7;
        hash = 97 * hash + Objects.hashCode(this.transporteUsado);
        hash = 97 * hash + this.tempoViagem;
        hash = 97 * hash + (int) (Double.doubleToLongBits(this.distancia) ^ (Double.doubleToLongBits(this.distancia) >>> 32));
        hash = 97 * hash + (int) (Double.doubleToLongBits(this.precoKm) ^ (Double.doubleToLongBits(this.precoKm) >>> 32));
        return hash;
    }

    /**
     * Verifica se o transporte do trajeto cumpre com o indicado
     *
     * @param trajeto trajeto a verificar se cumpre o indicado
     * @param transporteTrajeto transporte
     * @return true se cumprir ou falso se nao cumprir
     */
    public static boolean checkTransporteTrajeto(Trajeto trajeto, Transporte transporteTrajeto) {
        return trajeto.getTransporteUsado().equals(transporteTrajeto);
    }

    /**
     * Verifica se a transportadora do trajeto cumpre com o indicado
     *
     * @param trajeto trajeto a verificar se cumpre o indicado
     * @param transportadora transportadora
     * @return true se cumpre ou falso se nao cumpre
     */
    public static boolean checkTransportadoraTrajeto(Trajeto trajeto, String transportadora) {
        if (trajeto.getTransporteUsado() instanceof Autocarro) {
            Autocarro autocarro = (Autocarro) trajeto.getTransporteUsado();
            if (autocarro.getTransportadora().equals(transportadora)) {
                return true;
            }
        }
        return false;
    }

    /**
     * Verifica se o trajeto cumpre com a distancia maxima
     *
     * @param trajeto trajeto a verificar se cumpre o indicado
     * @param distanciaMaximaTrajeto distancia maxima
     * @return true se cumpre ou falso se nao cumpre
     */
    public static boolean checkDistanciaMaximaTrajeto(Trajeto trajeto, double distanciaMaximaTrajeto) {
        return trajeto.getDistancia() < distanciaMaximaTrajeto;
    }

    /**
     * Verifica se o trajeto cumpre com a distancia maxima
     *
     * @param trajeto trajeto a verificar se cumpre o indicado
     * @param precoMaximoTrajeto preco maximo
     * @return true se cumpre ou falso se nao cumpre
     */
    public static boolean checkPrecoMaximoTrajeto(Trajeto trajeto, double precoMaximoTrajeto) {
        return Trajeto.getPrecoTrajeto(trajeto) < precoMaximoTrajeto;
    }

    /**
     * Retorna o custo da viagem
     *
     * @param trajeto trajeto que se quer saber o custo
     * @return true se cumpre ou falso se nao cumpre
     */
    public static double getPrecoTrajeto(Trajeto trajeto) {
        return trajeto.getDistancia() * trajeto.getPrecoKm();
    }

    /**
     * Retorna o trajeto mais curto dentro de uma determinada lista de trajetos
     *
     * @param trajetos lista de trajetos que onde se quer selecionar
     * @return o trajeto mais curto
     */
    public static Trajeto trajetoMenorDistancia(UnorderedListADT<Trajeto> trajetos) {
        if (!trajetos.isEmpty()) {
            Trajeto menorDistancia = null;
            Iterator<Trajeto> it = trajetos.iterator();
            while (it.hasNext()) {
                Trajeto temp = it.next();
                if (menorDistancia == null || temp.getDistancia() < menorDistancia.getDistancia()) {
                    menorDistancia = temp;
                }
            }
            return menorDistancia;
        } else {
            return null;
        }
    }

    /**
     * Retorna o trajeto com o preco mais barato
     *
     * @param trajetos lista de trajetos que onde se quer selecionar
     * @return  o trajeto com o preco mais baixo
     */
    public static Trajeto trajetoMaisBarato(UnorderedListADT<Trajeto> trajetos) {
        if (!trajetos.isEmpty()) {
            Trajeto maisBarato = null;
            Double precoMaisBarato = null;
            Iterator<Trajeto> it = trajetos.iterator();
            while (it.hasNext()) {
                Trajeto temp = it.next();
                //o custo do trajeto é a distancia vezes o custo por km
                double preco = getPrecoTrajeto(temp);
                if (maisBarato == null || preco < precoMaisBarato) {
                    precoMaisBarato = preco;
                    maisBarato = temp;
                }
            }
            return maisBarato;
        } else {
            return null;
        }
    }

    /**
     * Retorna o trajeto com menor tempo de viagem
     *
     * @param trajetos lista de trajetos que onde se quer selecionar
     * @return o trajeto com menor tempo de viagem
     */
    public static Trajeto trajetoMenosTempoViagem(UnorderedListADT<Trajeto> trajetos) {
        if (!trajetos.isEmpty()) {
            Trajeto menosTempoViagem = null;
            Iterator<Trajeto> it = trajetos.iterator();
            while (it.hasNext()) {
                Trajeto temp = it.next();
                if (menosTempoViagem == null || temp.getTempoViagem() < menosTempoViagem.getTempoViagem()) {
                    menosTempoViagem = temp;
                }
            }
            return menosTempoViagem;
        } else {
            return null;
        }
    }

     public String getCidadeOrigem() {
        return cidadeOrigem;
    }

}

redpajama_set_name: RedPajamaGithub


Hamas supporters organized a rally at Al-Quds University in Jerusalem on Sunday, the Times of Israel reports. Members of the Islamic Bloc of Al-Quds University, a student organization associated with Hamas, wore black face masks and carried green banners and cardboard replicas of missiles like the ones recently launched from Gaza into Israel.
According to the group's Facebook page, the rally was titled "Alerting the loyal–on the path of the great leaders" and was organized to commemorate Hamas leaders killed by Israel.
It was rumored earlier this year that Brandeis was considering reestablishing their partnership with Al-Quds, which they established in 1998, and students at the Jerusalem university also reportedly expressed dissatisfaction with the university's continued tolerance of the campus rallies. That prospect seems less likely after Sunday's rally.


text:
Trump has benefited from evangelicals' support, but he's not the first choice of the most committed
By Jessica Martínez and Gregory A. Smith
Donald Trump is at the head of the Republican field due, in part, to the strength of support from many self-described "born-again or evangelical" Christians in the early primary and caucus states, according to the exit polls. His success with evangelicals has surprised many observers because of his background; he is a thrice-married man who once
">described himself as "pro-choice," and appears not to share some of the beliefs embraced by one of the country's most socially conservative religious groups.
But a new Pew Research Center poll shows that among evangelicals, Trump performs far worse with the roughly two-thirds who are most religiously committed. Whereas half of white evangelical Republican voters who attend religious services less than once a week say they'd like to see Trump get the GOP nomination, just 31% of churchgoing GOP evangelicals say the same.
White evangelical Republicans who attend church regularly are most heavily concentrated in the Ted Cruz camp. Indeed, roughly half (48%) of Cruz supporters are white evangelical Protestants, and most of them (35% of all Cruz supporters) say they are weekly churchgoers. Smaller shares of Trump (34%) and Kasich (26%) supporters are white evangelicals.
John Kasich has a larger share of white mainline (i.e., those who do not identify as born-again or evangelical) Protestant supporters than do the other two candidates. And Trump has more religious "nones" in his camp than does either Cruz or Kasich.
Overall, nearly six-in-ten Cruz supporters, regardless of religious group, say they attend services at least once a week. Far fewer Kasich and Trump supporters say the same (42% and 30%, respectively).
Much of the discussion about religion and politics in the current campaign has focused on the battle for the Republican nomination. But there also are notable differences in the religious profiles of those who support Hillary Clinton and Bernie Sanders on the Democratic side.
Most strikingly, nearly half of Sanders supporters (45%) are religious "nones" – people who identify as atheist, agnostic or nothing in particular. "Nones" are only half as numerous among Clinton's supporters. For her part, Clinton garners more support from Protestants (especially racial and ethnic minorities) and Catholics than does Sanders. To a large extent, these differences in the religious composition of supporters of Sanders and Clinton reflect Sanders' comparative advantage among younger Democrats (who are more likely to be religious "nones" than older Democrats), and Clinton's comparative advantage among non-whites (who are more likely to be religiously affiliated).
Among both Clinton and Sanders supporters, fewer than half say they attend religious services on a weekly basis. Still, Clinton's group of supporters is more heavily composed of weekly churchgoers than is Sanders' base (37% vs. 24%).
Election 2016U.S. Political FiguresReligion and U.S. Politics
Jessica Martínez is a former senior researcher focusing on religion at Pew Research Center.
POSTS	BIO	EMAIL
Gregory A. Smith is an associate director of research at Pew Research Center.
Among white evangelicals, regular churchgoers are the most supportive of Trump
Churchgoing Republicans, once skeptical of Trump, now support him
Exit polls and the evangelical vote: A closer look
Evangelical approval of Trump remains high, but other religious groups are less supportive
Most Americans don't see Trump as religious; fewer than half say they think he's Christian