thegoodfellas/blogset-br huggingface dataset:
0x28fef8Basicamente, o valor de "p" e o endereco de "a" (0x28fefc), e o endereco de "p" (0x28fef8) e o local da memoria onde esta guardado este valor.Alem disso, quando declaramos "p" nao atribuimos nenhum valor a ele. Assim como qualquer outra variavel declarada sem valor, ele ira conter neste momento um "lixo" qualquer. Considerando que este lixo pode ser um endereco valido, usar este ponteiro sem atribuir-lhe o valor correto pode ter consequencias catastroficas como os lendarios bugs nao-deterministicos. Por este motivo, e uma boa pratica ao declarar ponteiros sem valor atribuir-lhe o valor zero ou NULL (NULL = 0), pois os sistemas operacionais modernos sao capazes de lancar excecoes (null pointer exception) quando tentamos acessar o endereco zero, mas eles nao necessariamente conseguem diferenciar um endereco "lixo" valido de um endereco "bom" e, acredite, e muito melhor varrer o codigo em busca de um null pointer exception do que de um erro aleatorio.int *p = NULL; // Sempre!Uma ultima observacao antes de seguir no tema, ainda dentro da parte basica, e com relacao a declaracao dos ponteiros. Voce observou que o operador * tem duplo significado: se utilizado na declaracao da variavel, ele nos diz que a variavel e um ponteiro, e; se utilizado no escopo do programa, em uma variavel de ponteiro, ele nos diz que queremos desreferenciar o ponteiro, ou seja, utilizar o valor para o qual ele aponta, ao inves do seu proprio valor (que e um endereco).Agora, pensando nisso, como fazemos para declarar varios ponteiros em uma unica linha? Num primeiro momento, pensando em variaveis normais, declaramos assim:int a, b, c;Entao, por consequencia, declarar ponteiros deve ser igual, certo?int* p, q, r;Errado! Na verdade, o operador * faz parte do nome da variavel, e nao do tipo. Embora seja correto escrever tanto int* p como int *p (mudou apenas a posicao do espaco), o * e considerado parte do nome e, portanto, a declaracao acima ira produzir um ponteiro para um inteiro "p" e duas variaveis inteiras "q" e "r". A declaracao correta e:int *p, *q, *r;Uma forma de demonstrar isto seria com o seguinte codigo:int main() { char* c, d, e; cout << "sizeof: c = " << sizeof(c) << " d = " << sizeof(d) << " e = " << sizeof(e) << endl; return 0;}Saida:sizeof: c = 4 d = 1 e = 1Escolhi um tipo char desta vez por que com tipos inteiros nao veriamos diferencas no sizeof. Uma maneira de corrigir este problema, alem de declarar todos os ponteiros com o devido operador *, seria utilizar um typedef:typedef char* CharPtr;int main() { CharPtr c, d, e; cout << "sizeof: c = " << sizeof(c) << " d = " << sizeof(d) << " e = " << sizeof(e) << endl; return 0;}Saida:sizeof: c = 4 d = 4 e = 4Logo, o typedef garante que todas as variaveis sejam do mesmo tipo.Equivalencia com ArraysAntes de entrar mais a fundo nas operacoes com ponteiros, existe uma ultima questao de sintaxe que vale a pena ser mencionada: a equivalencia com arrays. Um array em
C/C++ e declarado da seguinte forma:int a[N];Onde "a" e o nome do array e "N" e o seu tamanho.Uma das propriedades do array e que, se utilizarmos apenas o seu nome, sem um indice referenciado, estamos tratando do endereco do primeiro elemento do array. Veja:int main(){ int a[10] = {0,1,2,3,4,5,6,7,8,9}; // Declaracao de uma variavel tipo array de int com tamanho 10 cout << " a[0] = " << a[0] << "\t\t &a[0] = " << &a[0] << endl; cout << " a = " << a << "\t &a = " << &a << endl; cout << endl; return 0;}Saida: a[0] = 0 &a[0] = 0x28fed8 a = 0x28fed8 &a = 0x28fed8Na primeira linha pedimos para imprimir o valor do primeiro elemento (a[0]) e o endereco do primeiro elemento (&a[0]). Na linha seguinte, utilizamos duas notacoes equivalentes: tanto "a" como "&a" trazem o endereco do primeiro elemento.Operacoes com PonteirosEspero que esteja tudo tranquilo ate agora, pois agora vamos entrar na parte mais complexa. Lembra que o valor de um ponteiro e um endereco, certo? Entao observe o seguinte:int main() { int *a = 0; char *b = 0; long long *c = 0; float *d = 0; double *e = 0; cout << "sizeof:\n a = " << sizeof(a) << " *a = " << sizeof(*a) << endl << " b = " << sizeof(b) << " *b = " << sizeof(*b) << endl << " c = " << sizeof(c) << " *c = " << sizeof(*c) << endl << " d = " << sizeof(d) << " *d = " << sizeof(*d) << endl << " e = " << sizeof(e) << " *e = " << sizeof(*e) << endl; return 0;}Saida:sizeof: a = 4 *a = 4 b = 4 *b = 1 c = 4 *c = 8 d = 4 *d = 4 e = 4 *e = 8Ou seja, embora os tipos de dados que estes ponteiros apontem sao totalmente distintos, os tamanhos dos ponteiros sao exatamente os mesmos: 4 bytes. Isto se deve ao fato de que eu estou compilando este programa em modo 32 bits (4 bytes * 8 bits = 32 bits) e, portanto, todos os enderecos estao dentro deste espaco. Note que se estivessemos compilando em 64 bits, cada ponteiro teria 8 bytes.Alem disso, tanto em 32 bits como 64 bits nos conseguimos enderecar toda a memoria como um bloco continuo, mas se voltarmos um pouco no tempo e pensarmos em programas de 16 bits, isso nao e totalmente verdade. Os processadores x86 em modo 16 bits utilizam uma forma mais complexa de enderecamento, composta por segmentos e offsets que compoem um endereco efetivo de 24 bits. Nao vou entrar no detalhe, mas fica aqui como uma curiosidade para quem quiser pesquisar um pouco mais.Para comecar a trabalhar com operacoes em ponteiros, vamos trabalhar com a associacao com arrays, pois desta forma estaremos trabalhando dentro de um espaco valido de enderecamento. Estas operacoes sao possiveis em qualquer ponteiro, mas lembre-se sempre que a responsabilidade destas operacoes e totalmente do programador, o
compilador nao tem como checar se os limites estao sendo respeitados ou nao, e bugs bizarros podem acontecer. Usando o array sabemos que temos o controle dos enderecos de memoria dentro daquela faixa.A primeira operacao e a adicao:int main() { int a[10] = {0,1,2,3,4,5,6,7,8,9}; int *p = a; cout << "p = " << p << " *p = " << *p << endl; p = p + 1; cout << "p = " << p << " *p = " << *p << endl; return 0;}Saida:p = 0x28fed4 *p = 0p = 0x28fed8 *p = 1Note que somar 1 ao ponteiro nao somou 1 ao endereco do ponteiro, mas sim 4. Por que? Porque o compilador sabe que aquele ponteiro aponta para um inteiro que ocupa 4 bytes, e ao somar 1 voce esta pedindo para o compilador que quer o proximo elemento alinhado com aquele ponteiro.Por exemplo, se fizessemos o mesmo com um tipo char:int main() { char a[10] = {'0','1','2','3','4','5','6','7','8','9'}; char *p = a; cout << "p = " << (void*) p << " *p = " << *p << endl; p = p + 1; cout << "p = " << (void*) p << " *p = " << *p << endl; return 0;}Saida:p = 0x28fef2 *p = 0p = 0x28fef3 *p = 1A diferenca entre os enderecos e apenas 1 byte, ou o tamanho do char.Que outras operacoes sao validas em ponteiros? Basicamente todas operacoes relacionadas a adicao e subtracao:int main() { int a[10] = {0,1,2,3,4,5,6,7,8,9}; int *p = a; cout << "p = " << p << " *p = " << *p << endl; p++; ++p; cout << "p = " << p << " *p = " << *p << endl; p--; p -= 1; p += 3; cout << "p = " << p << " *p = " << *p << endl; return 0;}Saida:p = 0x28fed4 *p = 0p = 0x28fedc *p = 2p = 0x28fee0 *p = 3Sempre observando que o tamanho da variavel apontada pelo ponteiro tem efeito direto nos calculos dos enderecos.Note que, o endereco de um elemento "N" no array sera sempre:e = e0 + N * sizeof(T)Onde "e0" e o endereco inicial do array e "T" e o tipo de dado do array.Seguindo esta logica, podemos ver que o operador [] nada mais e do que um operador de enderecamento, que abstrai estes calculos para o programador.Para testar assertiva, vamos fazer o seguinte (cuidado!):int main() { int *p = 0; cout << "&p[1] = " << &p[1] << endl; cout << "&p[2] = " << &p[2] << endl; cout << "&p[3] = " << &p[3] << endl; cout << "&p[4] = " << &p[4] << endl; return 0;}Saida:&p[1] = 0x4&p[2] = 0x8&p[3] = 0xc&p[4] = 0x10Note que mesmo declarando a variavel "p" como um ponteiro (e nao um array), podemos utilizar normalmente o operador []. O importante aqui e ressaltar que embora o programa tenha calculado os enderecos corretamente, qualquer tentativa de acessar este espaco de memoria pode ser desastrosa (por isso estou apenas imprimindo os enderecos,
nao faco nenhum acesso a valor), logo, todo cuidado e pouco!ConclusoesO meu objetivo com este artigo era fazer um panorama geral de operacoes com ponteiros. Eu acredito que uma vez que fique claro que trabalhando com ponteiros estamos trabalhando com enderecos de memoria grande parte da "mistica" que envolve os ponteiros se desfaz e eles deixam de ser instrumentos obscuros para se tornarem ferramentas poderosas para o programador.Como nota mental, fico devendo alguns topicos interessantes para uma proxima edicao deste artigo: chamadas de funcoes com ponteiros, arrays de arrays e ponteiros de funcoes.
A LENDA DO ALGODAO...Era uma vez...uma pequena aldeia onde o dinheiro nao entrava. Tudo o que as pessoas compravam, tudo o que era cultivado e produzido por cada um era trocado entre eles!A coisa mais importante, a coisa mais valiosa, era a AMIZADE! Quem nada produzia, quem nao possuia coisas materiais, que pudessem ser trocados por alimentos, ou utensilios, davam seu carinho.O carinho era simbolizado por um floquinho de Algodao; muitas vezes era normal que as pessoas trocassem floquinhos sem querer nada em troca, penas pelo simples prazer de "DOAR" e ver o outro feliz!As pessoas davam seu CARINHO pois sabiam que receberiam outros num outro momento ou em outro dia.Um dia, uma mulher muito ma que vivia fora da aldeia e que nao havia experimentado o prazer de doar; convenceu um pequeno garoto a nao dar mais seus floquinhos. Desta forma, ele seria a pessoa mais rica da cidade e teria o que quisesse; iludido pelas palavras da malvada, o menino que era uma das pessoas mas populares e queridas da aldeia, passou a juntar CARINHOS. e em pouquissimo tempo sua casa esta r pleta de floquinhos, ficando ate dificil de circular dentro dela!Dai entao, quando a cidade ja estava praticamente sem floquinhos, as pessoas comecaram a guardar o pouco de CARINHO que tinham e toda a HARMONIA da cidade desapareceu: Surgindo a ganancia, a desconfianca, o primeiro furto, o odio, a discordia, as pessoas passaram a se xingar e a se ignorarem uma as outras pelas ruas pela primeira vez.Como era o mais querido da cidade, o garoto foi o primeiro a sentir-se triste e sozinho. Isto fez o menino procurar velha mulher para perguntar-lhe se aquilo fazia parte da riqueza que ele acumularia...Nao a encontrando mais, ele tomou a decisao: Pegou uma grande carroca, colocou todos os seus floquinhos em cima e caminhou por toda a cidade distribuindo aleatoriamente seu carinho! A todos que dava carinho, apenas dizia: "Obrigado por receber meu carinho" Assim, sem medo de acabar com seus floquinhos, ele distribuiu ate o ultimo carinho sem receber um so de volta.Sem que tivesse novamente tempo de sentir-se sozinho e triste, alguem caminhou ate ele e lhe deu carinho...Um outro fez o mesmo....e outro...mais outro...ate que a aldeia voltou ao normal!!!O texto acima, foi meu floquinho de algodao pra voce...e quero que passe pra frente!bj... Deborah O dia dos pais e comemorado no segundo domingo de agosto.Conta a historia que esta data existe ha mais de 4 mil anos, quando um jovem fez um cartao, esculpindo na argila algumas palavras desejando sorte, saude e vida longa a seu pai.Porem, foi nos Estados Unidos que uma moca (Sonora Luise) resolveu homenagear seu pai, John Bruce Dodd, um ex-combatente militar, por este ter ficado viuvo e criado seis filhos sozinho, sem a presenca de uma outra mulher em sua vida. A filha, encantada com a dedicacao do pai, escolheu como data especial o dia de seu aniversario, 19 de junho. A data fez tanto sucesso que foi divulgada por todo estado de Washington, passando logo a se tornar uma festa
nacional, mas so foi oficializada no governo do presidente Richard Nixon.Pais e Filhos se divertindo juntosO publicitario Sylvio Bhering trouxe a data para o Brasil, porem a data passou de junho para o mes de agosto, em razao dos interesses comerciais.A criacao desta data e muito importante, pois aproxima pais e filhos para momentos agradaveis e felizes. Os pais merecem respeito, amor e carinho, pois e ele quem luta pelo sustento da casa, buscando dar educacao, saude, alimentacao e conforto aos seus filhos.Existem familias que nao podem conviver juntas, por motivo de separacao do casal ou por outros problemas. Isso nao quer dizer que nao possam se comunicar, para que o filho deseje coisas boas, como saude e amor e manifestar seu carinho pelo pai.Fonte: Site /www.escolakids.com
Sempre ao comecar uma reuniao, encontro, semana pedagogica ou como queira chamar, o coordenador precisa antes de mais nada sensibilizar a todos os presentes, como uma forma de abrir portas, para a compreensao e necessidade que os educadores tem de planejar o ensino. O texto a seguir, toca profundamente no que e ser diferente, e acredito ser bem utilizavel num encontro entre professores por buscar questionar o que e ser o diferente nas acoes, atitudes e pensamentos.Podemos divergir em muitos momentos, mas o respeito pela diversidade de opinioes sempre deve prevalecer. Boa Leitura!Alma dos Diferentes"... Ah, o diferente, esse ser especial!Diferente nao e quem pretenda ser. Esse e um imitador do que ainda nao foi imitado, nunca um ser diferente.Diferente e quem foi dotado de alguns mais e de alguns menos em hora, momento e lugar errados para os outros que riem de inveja de nao serem assim. E de medo de nao aguentar, caso um dia venham, a ser.O diferente e um ser sempre mais proximo da perfeicao.O diferente nunca e um chato. Mas e sempre confundido por pessoas menos sensiveis e avisadas.Supondo encontrar um chato onde esta um diferente, talentos sao rechacados; vitorias, adiadas; esperancas, mortas. Um diferente medroso, este sim, acaba transformando-se num chato. Chato e um diferente que nao vingou.Os diferentes muito inteligentes percebem porque os outros nao os entendem. Os diferentes raivosos acabam tendo razao sozinhos, contra o mundo inteiro.Diferente que se preza entende o porque de quem o agride. Se o diferente se mediocrizar, mergulhara no complexo de inferioridade. O diferente paga sempre o preco de estar - mesmo sem querer - alterando algo, ameacando rebanhos, carneiros e pastores. O diferente suporta e digere a ira do irremediavelmente igual: a inveja do comum; o odio do mediano.O verdadeiro diferente sabe que nunca tem razao, mas que esta sempre certo.O diferente comeca a sofrer cedo, ja no primario, onde os demais de maos dadas, e ate mesmo alguns adultos por omissao, se unem para transformar o que e peculiaridade e potencial em aleijao e caricatura.O que e percepcao agucada em : "Puxa, fulano, como voce e complicado".O que e o embriao de um estilo proprio em : "Voce nao esta vendo como todo mundo faz? "O diferente carrega desde cedo apelidos e marcacoes os quais acaba incorporando. So os diferentes mais fortes do que o mundo se transformaram (e se transformam) nos seus grandes modificadores. Diferente e o que ve mais longe do que o consenso. O que sente antes mesmo dos demais comecarem a perceber.Diferente e o que se emociona enquanto todos em torno agridem e gargalham. E o que engorda mais um pouco; chora onde outros xingam; estuda onde outros burram; quer onde outros cansam. Espera de onde ja nao vem.Sonha entre realistas. Concretiza entre sonhadores. Fala de leite em reuniao de bebados. Cria onde o habito rotiniza. Sofre onde os outros ganham.Diferente e o que fica doendo onde a alegria impera. Aceita empregos que ninguem supoe.Perde horas em coisas que so ele sabe importantes.Engorda onde nao deve.Diz sempre na hora de calar.Cala nas horas
erradas.Nao desiste de lutar pela harmonia.Fala de amor no meio da guerra.Deixa o adversario fazer o gol, porque gosta mais de jogar do que de ganhar.Ele aprendeu a superar riso, deboche, escarnio, e consciencia dolorosa de que a media e ma porque e igual.Os diferentes ai estao: enfermos, paraliticos, machucados, engordados, magros demais, inteligentes em excesso, bons demais para aquele cargo, excepcionais, narigudos, barrigudos, joelhudos, de pe grande, de roupas erradas, cheios de espinhas, de mumunha, de malicia ou de baba. Ai estao, doendo e doendo, mas procurando ser, conseguindo ser, sendo muito mais.A alma dos diferentes e feita de uma luz alem. Sua estrela tem moradas deslumbrantes que eles guardam para os pouco capazes de os sentir e entender.Nessas moradas estao tesouros da ternura humana. De que so os diferentes sao capazes.Nao mexa com o amor de um diferente. A menos que voce seja suficientemente forte para suporta-lo depois."Texto Atribuido a Arthur da TavolaFonte: Caminhosdeluz.com.br
de SI, ASL e outros, e, por outro lado a heterogeneidade presente nos discursos de algums TILS de paises isolados, como, inclusive a falta de pagamento para TILS em algums paises.Na fala de hoje a tarde, as professoras das Universidades Macquarie e Victoria, situadas na Australia e Nova Zelandia. Jamine Nappier e Rachel McKee deram show na sua apresentacao, mostraram muitos dados sobre o processo de qualificacao e formacao de TILS nesses paises que com certeza servirao para futuras comparacoes com o processo que estamos iniciando hoje no Brasil com o Letras LIBRAS. Da experiencia que estamos tendo aqui no congresso, e super importante que nos, TILS do Brasil, apressemo-nos em aprender uma segunda e/ou terceira lingua, nao somente oral mas, tambem de sinais, o que eu tenho considerado, mais fortemente agora, como uma condicao cinequanor para a internacionalizacao de nossas reflexoes e producoes que sao riquissimas.No ensejo de que a nossa presenca no congresso e as relacoes em prol do crescimento do trabalho de traducao e interpretacao no Brasil, sejam acrescidas em todos os sentidos, mandamos um grande abracao pra todos os interpretes do Brasil.Anderson Almeida da Silva
para interesses pessoais. Simplesmente o governo poderia fiscalizar o projeto. Se as metas basicas nao fossem cumpridas a entidade seria descadastrada e nao receberia mais o beneficio. Ainda teria que devolver o dinheiro e responder a um processo. Este projeto poderia beneficiar as ~ 227 entidades astronomicas, incentivar maior numero de descobertas e tirar do marasmo muitas pessoas que querem se dedicar a observacao, divulgacao, astrofotografia ou ate a pesquisa.
Assisti um diva para dois e adorei. E claro que os atores devem ajudar muito, os tres sao incriveis e deixam o filme com uma dinamica otima. Existem varios coadjuvantes, mas os principais sao: Meryl Streep, que consegue encarnar os papeis de uma maneira maravilhosa, Tommy Lee Jones, que faz expressoes que dao a impressao de mostrar o que o personagem esta pensando e o comico Steve Carell, eu simplesmente nao consigo deixar de rir com ele. A historia e de uma mulher insatisfeita com o casamento. Ela claramente esta em uma rotina: acorda pela manha, prepara o cafe dele, espera ele para o jantar, quando ele dorme na frente da TV ela chama-o, deixa ele em um quarto e segue para outro. Entao ela encontra um anuncio de um terapeuta de casamentos, em um livro que compra sobre o tema e decide investir $4000,00 em uma sessao intensiva de uma semana. No comeco ele fica doido com o dinheiro gasto. Ele e um mao-de-vaca reclamao. Por fim ele decide ir com ela para muito longe de casa fazer essas sessoes. Quando eles chegam ele reclama da cidade pequena, do hotel, do restaurante, dos precos e dorme no sofa. Quando eles vao ao terapeuta, este faz com que claramente ele fique incomodado, falando sobre a vida sexual(inexistente) dos dois. E interessante observar como eles se aproximam e se afastam no sofa e como algumas pequenas coisas facam com que mudancas ocorram no relacionamento, para melhor e para pior. Vou parar por aqui, caso contrario encherei esse post de spoilers. O filme vale a pena e mostra como a rotina, a falta de comunicacao, e imposicoes culturais e sociais podem afastar pessoas que vivem em um mesmo teto e que um dia compartilharam sentimentos, desejos, tesao. Recomento o filme. E fonte de gargalhadas, lagrimas e boas reflexoes. Eu sempre ouvi minha mae falar sobre a importancia de comer alface, por que ele tem fibras, assim como ja ouvi diversas outras pessoas falando que e importante comer fibras. Essas pessoas tem razao, apesar de muitas vezes nao saberem o por que e importante, o por que e saudavel! Sem contar que muitas e muitas vezes torcemos o nariz, por que consideramos alimentos ricos em fibra ruins(de gosto). Afinal ai, quem e gamado em um alface? Ou todo mundo que esta lendo esse texto sabe fazer um arroz integral macio e saboroso? Mas o que sao essas tais de fibras? Sao partes de vegetais (celulas mais especificamente) que nosso organismo nao digere. Mas se ele nao digere, como elas podem fazer bem, voce ai esta pensando e e sobre isso que vamos falar aqui... Mas, para que elas servem? Elas regulam o intestino, melhorando o transito intestinal, ajudam a baixar o colesterol ruim, controlam o acucar no sangue, ajudam a combater alguns tipos de cancer e ajudam na saciedade. Sem contar que podemos dizer que algumas fibras limpam as paredes do intestino, ajudando na absorcao dos nutrientes. Elas tambem ajudam no esvaziamento da vesicula biliar - sabe aquele troco que muita gente acha que so
serve para dar pedra, mas que serve e muito para a digestao? - esse esvaziamento ajuda na digestao dos alimentos e previne a formacao de calculos(nao os de matematica, as pedras mesmo). Quem come poucas fibras esta mais propenso a ter apendicite, colesterol alto, cancer de intestino, pedra na vesicula, diverticulose, prisao de ventre, etc. A ingestao de fibras deve ser acompanhada de ao menos 2 litros de agua por dia, para que nao cause prisao de ventre. E por acaso existem muitos tipos de fibras? Existem basicamente dois tipos: As fibras soluveis e as insoluveis. As insoluveis, que sao encontradas em farelo de trigo, por exemplo, servem para regular e limpar o intestino, enquanto as soluveis, que sao encontradas no feijao, na beterraba, na aveia, ajudam a baixar o colesterol do sangue, ja que absorvem parte da gordura ingerida e eliminam essa gordura. ATENCAO: Nenhuma fibra vai tirar a gordura que esta ARMAZENADA no seu corpo. Essa absorcao e da gordura que voce estara ingerindo naquele momento. Alimentos que contem fibras: Cevada; Arroz integral; Feijao; Lentilha; Ameixas secas; Macas com casca; Laranja; Banana; Kiwi; Uvas passas; Pera; Ervilhas; Espinafre; Alface; E comum pessoas dizerem que ao consumir fibras a digestao fica mais rapida. Isso e um equivoco o que acontece na verdade e que ao ingerir fibras elas incham (dando impressao de saciedade) e apos, elas aumentam o bolo fecal o que pode aumentar o numero de idas ao banheiro, mas nao aceleram a digestao. As fibras devem estar presentes em todas as refeicoes e caso isso nao seja possivel, existem muitos suplementos disponiveis para aumentar a ingestao de fibras soluveis e insoluveis. Muitas pessoas nao gostam de alimentos integrais que por acaso sao os que possuem mais fibras por que tem um gosto forte, sao mais dificeis de preparar, demoram mais para ficar prontos, sao dificeis de temperar, etc. O arroz integral, por exemplo, que e um dos alimentos mais recomendados em uma alimentacao saudavel, e odiado por muitas pessoas. Existem maneiras simples de preparar alimentos integrais de maneira pratica e saborosa e eu pretendo postar receitas e videos de receitas para voces! E preciso tomar cuidado com paes que se dizem integral, olhar os rotulos com atencao, pois tem paes no mercado que nao tem nem 3% de farinha integral!