domingo, 18 de agosto de 2013

MATERIALISMO

Em filosofia, materialismo é o tipo de fisicalismo que sustenta que a única coisa da qual se pode afirmar a existência é a matéria, que, fundamentalmente, todas as coisas são compostas de matéria e todos os fenômenos são o resultado de interações materiais; que a matéria é a única substância.

Materialismo é o oposto de idealismo.



sexta-feira, 31 de maio de 2013

Amor?

"Passei a ocupar meus dias pensando sobre o que, afinal, é isso que todo mundo enche a boca para chamar de amor, como se fosse algo simplificado: defina em meia dúzia de frases, é fácil, querida.
É fácil? Pois a querida não entende como uma palavrinha simples formada por apenas duas vogais e duas consoantes pode absorver um universo de sensações contraditórias, diabólicas, insensatas, incandescentes e intraduzíveis. O que é o amor? Já tentei explicar a mim mesma e, por mais que tente, jamais conseguirei atingir a essência dessa anarquia que dispensa palavras." (Medeiros; Marta, 2010, contracapa,Fora de Mim).




terça-feira, 28 de maio de 2013

Meu mundo e nada mais.

MEU MUNDO E NADA MAIS
Guilherme Arantes

Quando eu fui ferido,
Vi tudo mudar,
Das verdades que eu sabia.

Só sobraram restos,
Que eu não esqueci.
Toda aquela paz que eu tinha.

Eu que tinha tudo, 
Hoje estou mudo,
Estou mudado,
À meia noite, à meia luz,
Pensando.
Daria tudo por um modo de esquecer.

Eu queria tanto estar
No escuro do meu quarto
À meia noite, à meia luz,
Sonhando.
Daria tudo por meu mundo e nada mais.

Não estou bem certo,
Que ainda vou sorrir,
Sem um travo de amargura.

Como ser mais livre,
Como ser capaz,
De enxergar um novo dia.

Eu que tinha tudo, 
Hoje estou mudo,
Estou mudado
Á meia noite, à meia luz,
Pensando
Daria um modo de esquecer.

Eu queria tanto estar
No escuro do meu quarto
À meia noite, à meia luz,
Sonhando.
Daria tudo por meu mundo e nada mais.



domingo, 19 de maio de 2013

DICAS PARA CRIAR O NOME DE UMA EMPRESA

Algumas dicas para criar o nome de uma empresa:


  • Fácil sonoridade
  • Termos ou nomes regionais podem atrapalhar a expansão da marca, pois a identificação do consumidor com o produto pode se estreitar através do nome.
  • Cuidado ao se escolher nomes ou palavras de outra língua. Uma difícil pronúncia pode prejudicar.
  • Se optar por siglas, ter cuidado com o significado, que deve mostrar uma ligação direta com o produto.

Exemplos:


  1. LEGO - o nome dessa empresa dinamarquesa surgiu da junção de duas palavras: LEG GODT (brincar bem).
  2. VOLKSWAGEN - em alemão significa "carro do povo".
  3. Skype - transformação do termo peer to peer, uma estrutura de rede de computadores interligados.
  4. Sony - derivação da palavra Sonus, que em latim significa som.
  5. Nike - nome da deusa grega da vitória.
  6. Intel - abreviatura de "Integrated Eletronics
  7. AMBAR - Américo Barbosa
  8. Adidas - Junção das abreviaturas do nome do fundador da marca: Adolf, que no diminutivo fica Adi e seu sobrenome Dassler. 
  9. Amazon - O fundador gostaria que o nome da sua empresa aparece entre as primeiras nas listas alfabéticas por isso em primeiro lugar optou por um nome começado com a letra A. Em segundo lugar em suas pesquisas descobriu que o Amazonas é o maior rio do mundo, portanto um bom presságio para a sua companhia.

DESTAQUES QUE FICARAM DEPOIS DA CORRIDA PARA APROVAR A MP DOS PORTOS



    Um dos principais pontos a se destacar dos acontecimentos que marcaram a aprovação das medidas provisórias dos portos foi a falta de compartilhamento de interesses e atitudes da base aliada a favor do governo.
     Essa falta de apoio é decorrente dos interesses pessoais de deputados, em grande parte, os deputados do PMDB.
     Essa situação serviu para mostrar a falta de articulação entre o PT (Dilma Rousseff) e os políticos que formam a base desse governo. Essa falta de cumplicidade, organização e trabalho em conjunto mostra uma rachadura que prejudica a aprovação de leis e maior dinamismo para resolução de problemas que tem enfrentado grande parte dos principais gargalos estruturais do país, como portos, ferrovias e transporte (em especial o setor aeroviário).
     Para as pretensões futuras do partido petista esse ocorrido serve para rever como anda sua relação com a base e aliados políticos visando as próximas eleições; afinal, o alicerce do governo depende, infelizmente, muito das relações e acordos com os representantes políticos de outros partidos na Câmara.


sábado, 20 de abril de 2013

5. Um atleta quer saber quantos segundos gastou em uma corrida. Faça uma fórmula que calcule para ele:


main ()
{
int h, m, s, total;

printf("Vamos calcular para voce o total de segundos gastos na corrida.\n\n");
printf("Digite por favor o total de horas gastos\n");
scanf("%d", &h);
printf("Digite por favor o total de minutos gastos\n");
scanf("%d", &m);
printf("Digite por favor o total de segundos gastos\n");
scanf("%d", &s);
printf("\n\n");

h=h*3600;
m=m*60;
total=h+m+s;
printf("Segundo nossos calculos você gastou %d + %d + %d =  %d segundos na corrida\n\n", h, m, s, total);
}

Aqui temos um item novo. A soma. As dicas são as mesmas, atenção na hora de declarar, para não errar a quantidade de elementos. 
4. Um professor de pré-escola possui um certo número de balas que deseja distribuir igualmente entre seus alunos. Ele ficará com as balas que sobrarem, se houver. Determinando o número de alunos e o número de balas, apresente quantas balas cada aluno recebe e quantas ficam com o professor.

Código:


// 4. Um professor de pré-escola possui um certo número de balas que deseja distribuir igualmente entre seus
// alunos. Ele ficará com as balas que sobrarem, se houver. Sabendo se o número de alunos e o número de
// balas, determine quantas cada aluno recebe e quantas ficam com o professor.

main ()
{
  int balas, alunos, div, mod;

  printf("Quantas balas o professor trouxe?\n");
  scanf ("%d", &balas);
  printf("\n\n");
  printf("Quantos alunos estao presentes na sala?\n");
  scanf ("%d", &alunos);
  div=balas/alunos;
  mod=balas%alunos;
  printf ("\n\n");
  printf ("Entao definimos que pelo calculo %d / %d = %d balas eh o que cada aluno recebera\n", balas, alunos, div);
  printf ("E que sobrarao %d mod %d = %d balas para o professor\n\n", balas, alunos, mod);

  system ("pause");
}

OBSERVAÇÕES

Mais um exercício que apresenta o uso de módulo e inteiro. Fica como treino



3- Um lote de várias peças idênticas deve ser embalado em caixas que cabem 48 peças em cada caixa. Dada a quantidade de peças de um lote, determinar a quantidade de caixas necessárias e a quantidade de peças que deixarão de ser embaladas.

Segue o código:

main ()
{
int p, c, mod, div; //p=peças e c=caixas

printf("Digite a quantidade de pecas recebidas:\n");
scanf("%d", &p);
c=48;
printf("\n\n");
div=p / c;
mod=p % c;
printf("Apos a distribuicao das pecas, teremos %d / %d = %d caixas\n", p, c, div);
printf("E desse lote sobraram %d mod %d = %d pecas\n\n", p, c, mod);

system ("pause");

}

Observações.

1- Mais uma vez, dou a dica para prestar atenção na apresentação do comando div e mod. Dessa vez por falta de atenção gastei um bom tempo nessa parte.

2- O pedaço que mais tomou meu tempo foi o gasto para descobrir como declarar a maneira e sequência dos elementos p, c, mod/div


printf("Apos a distribuicao das pecas, teremos %d / %d = %d caixas\n", p, c, div);
printf("E desse lote sobraram %d mod %d = %d pecas\n\n", p, c, mod); 

Note que apesar de o elemento c já ter um valor pre estabelecido (48), ele é declarado como elemento que sofre variação "%d" .





2- Leia dois números inteiros e retorne o quociente e o resto da divisão.

main ()
{
int a, b, div, mod;

    printf("Para descobrir o quociente e o resto de uma divisao, faca.\n\n");
    printf("Digite primeiro o dividendo.\n");
    scanf("%d", &a);
    printf("\n\n");
        printf("Agora entre com o numero divisor:\n");
        scanf("%d", &b);
            div = a / b;
            mod = a % b;
                printf("\n\n");
                printf("O quociente de %d / %d = %d\n", a, b, div);
                printf("O resto de %d mod %d = %d\n\n", a, b, mod);

system ("pause");
}

OBSERVAÇÕES
1- Uma técnica que me ajuda muito é começar a resolução de um algoritmo rabiscando no papel. Ajuda a expandir a visão do problema anotando por onde começar, onde se quer chegar, os caminhos principais (aqueles que vem primeiro a mente), como completá-los.

2- Não se esqueça de no início declarar o tipo de variável e todos os seus elementos. Diversos erros que surgem durante o caminho para a execução do programa,  são por esquecimentos de complementar, ajustar e/ou preencher o a variável.


3- Para calcular o resto, é necessário declará-lo:
mod = a % b; 
Note que dentro do comando "print" ele foi usado de forma diferente:
 printf("O resto de %d mod %d = %d\n\n", a, b, mod);

Faço essa observação pois no caso da divisão, da mesma maneira que foi declarada, ela também foi usada dentro do comando print:
declaração -> div = a / b;
print:          -> printf("O quociente de %d / %d = %d\n", a, b, div);


EXERCÍCIO 1. Leia uma temperatura em Celsius e imprima o valor desta temperatura em Farenheit., sabendo que: 
F = C * (9.0 / 5.0) + 32.0

Exercício simples que merecem algumas observações importantes, mas primeiro vamos aos códigos:

main (){

    float graus;

printf("Digite aqui a temperatura atual em Celsius para descobrir sua representação em Fahrenheit.\n");
scanf ("%f", &graus);
printf ("Representação da temperatura em Fahrenheit sera em: %f/n", (graus*(1.8)+32 ));
system("pause");

Primeira observação: 
- Diferente do VISUALG, a declaração de váriaveis vem primeiro e depois os elementos, como no caso float (que é a variável para números reais). Float é uma alusão ao ponto flutuante.

- No lugar do escreval, utilizado no visualG usaremos o printf. 
Não tem importancia nem valor, a necessidade de dar ou não espaços entre o comando PRINTF e as instruções escritas depois do parenteses. Exemplos:
*printf("Digite aqui a temperatura atual em Celsius para descobrir sua representação em Fahrenheit.\n");
*printf ("Digite aqui a temperatura atual em Celsius para descobrir sua representação em Fahrenheit.\n");
A mesma informação serve para a instrução:  (graus*(1.8)+32 )); tanto faz colocar ou não pararenteses antes de "grau" e depois de +32) 



Obrigado pela visita, até a próxima.



CODE BLOCK,




CODE::BLOCK, é um ambiente de desenvolvimento, mais conhecido como IDE. Mas o que é uma IDE?
IDE, resumindo (*para uma explicação mais detalhada click no link), esse programa oferece várias ferramentas que auxiliam na criação de softwares.
Principais características:
 - Editor - facilita a edição de códigos fonte.
 - Compilador - Transforma em linguagem máquina
- Depurador - Auxilia a encontrar defeitos em códigos font.
- Modelagem - Auxilia na criação de modelos de classes, objetios, interfaces, associações e interações.

Existem muitas outras ferramentas, porém uma rápida pesquisa com palavras chaves em um bom site de pesquisas como o Google, Bing, podem fornecer infindáveis exemplos, funções e respostas para todas as funções e ferramentas que esse programa oferece.

O motivo desse post é dar início a uma séria de publicações a respeito de exercícios que utilizam esse software.
Por que?
A maioria dos usuários já devem ter escutado conselhos mais ou menos assim: "Tenha cuidado com o que encontra na internet! Nem tudo é correto, nem tudo é confiável, investigue as fontes e conteúdo.
Fazer isso exige muito tempo, pois dependendo do assunto/matéria, a pesquisa  e o estudo podem levar horas. Infelizmente, nem sempre dispomos de tanto tempo e prazo, e foi exatamente essa sensação que tive ao tentar sanar dúvidas que estão surgindo ao realizar uma tarefa para a faculdade.
Estou com uma lista com cerca de 20 questões, para serem resolvidas utilizando um programa IDE.
Portanto a idéias de fazer posts relacionados a resolução de questões surgiu como forma de retribuir a ajuda encontrada na internet e por um segundo motivo: tentar ser o mais claro e breve possível. Resumir o caminho para a solução de forma a evitar excesso de termos técnicos.
Sendo assim, dou destaque para a seguinte observação: ESTOU PRODUZINDO E REPRODUZINDO ESSE CONTEÚDO PARA AUXILIAR NA INTERPRETAÇÃO E SOLUÇÃO DE PROBLEMAS E NÃO PARA ATRAPALHAR O DESENVOLVIMENTO DE NINGUÉM QUE BUSCA INFORMAÇÃO.

Sendo assim, fica declarado o meu interesse em auxiliar e, portanto,  não fornecer nenhum tipo de cola ou trapaça.
Será da consciência de cada um utilizar o código para fazer uma reflexão dos pontos que tem dificuldade na interpretação e resolução de problemas algoritmos.

terça-feira, 20 de novembro de 2012

Marisa Monte - Pra Ser Sincero



Eu era tão feliz
E não sabia, amor
Fiz tudo que eu quis
Confesso a minha dor...

E era tão real
Que eu só fazia fantasia
E não fazia mal...

E agora é tanto amor
Me abrace como foi
Te adoro e você vem comigo
Aonde quer que eu voe...

E o que passou, calou
E o que virá, que dirá
E só ao seu lado
Seu telhado
Me faz feliz de novo...

O tempo vai passar
E tudo vai entrar
No jeito certo
De nós dois...

As coisas são assim
E se será, que será
Pra ser sincero
Meu remédio é
Te amar, te amar...

Não pense, por favor
Que eu não sei dizer
Que é amor tudo
O que eu sinto
Longe de você...

uhmm...

E agora é tanto amor
Me abrace como foi
Te adoro e você vem comigo
Aonde quer que eu voe...

Essa canção faz parte do sexto álbum de estúdio da cantora Marisa Monte, Infinito Particular. Todas canções são de autoria dela com diversos outros compositores, em destaque Arnaldo Antunes e Carlinhos Brown.
Como resultado de sucesso Marisa Monte é a única artista a ter os seus primeiros sete álbuns consecutivamente no topo das paradas de vendas; Esse álbum por exemplo recebeu duas vezes disco de platina.

segunda-feira, 19 de novembro de 2012

Mapa da América Latina


Saídas para reduzir a pobreza na América Central

Antes de combater um problema é preciso diagnosticá-lo. E é isso o que buscam fazer os autores do livro Crecimiento con Equidad - La Lucha contra la Pobreza en Centroamérica, resultado da parceria entre o Programa das Nações Unidas para o Desenvolvimento (Pnud) e o Instituto de Pesquisa Econômica Aplicada (Ipea) com o objetivo de desenhar estratégias que reduzam a pobreza na América Latina e no Caribe. A publicação analisa os determinantes da pobreza e da desigualdade em seis países - Guatemala, Honduras, El Salvador, Nicarágua, Costa Rica e Panamá. A grande questão que norteia a obra é saber se o crescimento é mais efetivo que a distribuição de renda para reduzir a pobreza ou o contrário. 

O estudo foi realizado pelos pesquisadores do Ipea Ricardo Paes de Barros, Mirela de Carvalho, Samuel Franco e Rosane Mendonça e por Enrique Ganuza, economista-chefe para a América Latina do Pnud. O livro fornece um diagnóstico detalhado dos diferentes fatores que determinam a pobreza na região e propõe estratégias de superação focalizadas, baseadas estritamente nas informações disponíveis. 

Revela um cenário pouco animador: mais da metade da população da região (cerca de 19 milhões de pessoas) vive em famílias com renda per capita abaixo da linha de pobreza, e quase 8 milhões vivem em famílias com renda per capita abaixo da linha de extrema pobreza. Segundo os cálculos feitos pelos autores, se a pobreza fosse combatida apenas por meio de transferência de renda, seria necessário destinar cerca de 19 bilhões de dólares anuais para a população pobre. E esse valor corresponde a cerca de 17% da renda total das famílias centro-americanas. Ou seja, a capacidade de erradicar a pobreza no curto prazo é bastante limitada. Mas isso não significa que não há o que fazer. É possível erradicar a pobreza extrema com os recursos disponíveis. Uma das saídas seria criar um fundo de erradicação da extrema pobreza, para o qual cada cidadão não-pobre contribuiria com 14 dólares mensais. 

A redistribuição dos recursos, segundo o livro, teria impacto muito reduzido na pobreza caso se mantenha o nível de desigualdade na distribuição de renda no interior de cada país da região. Assim, a redistribuição dos recursos deveria ocorrer não só entre os países (dos mais ricos, como a Costa Rica, aos mais pobres, como Honduras), mas também no interior deles. 

Diminuir a desigualdade é, portanto, central para a redução da pobreza. Enquanto o crescimento econômico apresenta retornos decrescentes no que se refere à redução da pobreza, a maior igualdade de renda apresenta retornos crescentes. Para reduzir a pobreza à metade com base em estratégias que visam exclusivamente ao crescimento econômico seriam necessários 17 anos consecutivos com crescimento de 3% ao ano. A redução da desigualdade de renda exigiria uma taxa de crescimento significativamente menor, segundo sustenta o livro do Ipea e Pnud. 

Outro fato curioso: ao contrário do que se poderia pensar, a causa da pobreza na região, de acordo com os autores, não é a falta de trabalho, mas sim a baixa qualidade dos postos de trabalho. Se a qualidade dos postos de trabalho ocupados pelos membros das famílias pobres fosse igual à dos ocupados por trabalhadores de famílias não-pobres, a renda per capita dos pobres seria cinco vezes maior do que a atual. Ou ainda: se essa qualidade fosse idêntica à qualidade dos postos nos países da Organização para a Cooperação e o Desenvolvimento Econômico (OCDE), essa renda per capita seria três vezes maior.

Com todos esses dados esmiuçados e comparados, o livro acaba sendo um importante instrumento para a elaboração de políticas públicas, para estudiosos do tema "pobreza e desigualdade" e também para avaliar quanto falta para cumprir os Objetivos de Desenvolvimento do Milênio, um conjunto de compromissos dos países-membros das Nações Unidas voltados para a redução da pobreza pela metade até o ano 2015.

Fonte:
IPEA
Giovana Tiziani
http://www.ipea.gov.br/desafios/index.php?option=com_content&view=article&id=1782:catid=28&Itemid=23

Como sustentar e aumentar o crescimento econômico do Brasil

Tomando a China como exemplo, desde 1978, com a entrada de Deng Xiaoping no poder, ela foi ganhando o mercado mundial na busca constante para se tornar um forte país exportador. Para isso utilizou diversas reformas econômicas, atraiu investimento estrangeiro, esforços para oferecer uma mão de obra especializada e barata, e principalmente infra estruturada: fornecimento de energia, construção de aeroportos, ferrovias, portos, rodovias, usinas hidrelétricas...
Com a atual crise mundial, um novo modelo econômico chinês é investir na economia interna.
O Brasil ignorando esse exemplo, vai na contramão; Investe no aumento do consumo oferecendo crédito baixo, facilidade em financiamentos (carros e imóveis) e bolsas; Existe a décadas uma queda de braço entre governo e a iniciativa privada pela briga contra o excesso de impostos, juros excessivos e debate com agências reguladoras.
No que o Brasil precisa investir para crescer?
Investir na Educação, infraestrutura e logística!

domingo, 18 de novembro de 2012

De novo, de novo...


E a história se repete...


Dez anos e um dia depois, a agonia de estar entre os quatro mais mal posicionados da tabela do campeonato nacional volta a acontecer para o time da capital paulista. 
Sempre que alguma situação como essa acontece, a primeira coisa a se fazer é encontrar as causas e culpados. Diversas escolhas, opções e decisões da diretoria fizeram que o grupo de dirigentes esteja entre os principais responsáveis pelo momento delicado do time.
Um dos conceitos da organização está a boa administração; tendo isso como base e pegando como fonte uma lista publicada numa matéria da Folha de São Paulo de domingo (18/12/2012 ) a respeito dos principais erros do time Alviverde é possível entender porque o jogo de interesses pelo poder e a falta de comprometimento atrapalharam a caminhada pelo Brasileirão:
  1. Título da Copa Do Brasil iludiu e fez perder o foco em se preocupar em manter se na primeira divisão
  2. Comissão técnica, jogadores e dirigentes demoraram para perceber o perigo do descenso
  3. Conflitos entre o técnico Felipão, parte dos jogadores e diretoria atrapalha o clima do grupo
  4. A decisão do presidente em continuar jogando em Barueri por motivos como baixo valor do aluguel afastou o torcedor que ainda estava empolgado com o título e estava disposto a apoiar o time
  5. Deficiência de atletas para diversos setores como meio e ataque. Faltou peças de reposição e opções
  6. Valdivia e Daniel Carvalho, responsáveis pela organização ao ataque sempre foram inconstantes e de baixo rendimento
  7. Dependência das jogadas de Marcos Assunção
  8. Diretoria sempre se mostrou mais preocupada com as eleições do que com os péssimos resultados em campo
  9. Apenas no final do campeonato com a chegada de Gilson Kleina, jogadores destaques do time da base foram usados como João Denoni e Patrick Vieira
  10. Nervosismo dentro de campo e preocupações excessivas com a arbitragem tiravam o foco dos jogos
Faltam ainda três rodadas mas só um verdadeiro milagre para salvar o time de um desfecho vergonhoso, resultado de uma campanha abaixo do medíocre. Caso isso venha a acontecer que seja um passo dado para trás para poder dar dois à frente, mas que essa lição realmente fique gravada na memória e sirva como base para o planejamento dos próximos anos, pois o ocorrido de dez anos atrás parece não ter tido efeito.

domingo, 4 de novembro de 2012

Enem.

Eu e mais 4,1 milhões de pessoas espalhadas pelo Brasil, participamos nos dias 3 e 4 (hoje) de novembro, das provas do Enem ( Exame Nacional do Ensino Médio).
Sai da sala de aula quando faltava menos de quinze minutos para o término; Admito cansaço e até certa tontura. Pelos corredores a caminho da saída, percebi que a maioria estava indo embora com cara de final de maratona. Fora o desgaste pelas mais de cinco de horas fica a preocupação com o resultado, afinal, a maioria visa um bom resultado para disputar vagas em cursos técnicos e superiores em escolas federais e estaduais.
Mas o que motivou esse post foram algumas informações que chegam a ser consideradas bizarras, exemplos:

- 27,9% dos candidatos faltaram; a maioria dos estados de Roraima, Bahia e Amazonas.

- 65 alunos foram punidos por publicarem fotos das provas. Algo me diz que o vício de postar no Facebook tudo que está a sua volta gera uma necessidade de fotografar até o que não deve. Olha os riscos consequências do mau uso da tecnologia.

- Número não divulgado de participantes além de punidos, tiveram os nomes enviados pelo MEC para Polícia Federal por divulgar falsas informações de que as provas seriam canceladas.

- Uma matéria que passou no jornal da noite, em uma emissora paulista, mostrou uma garota caindo no choro pois esqueceu de passar as respostas para o gabarito. XDDDDDDD

- Procurando na internet fatos bizarros, encontro casos em que o candidato esqueceu de colocar a frase de capa no cartão de resposta, outros que pularam questão ou marcaram duas respostas numa mesma linha e só percebeu o erro no final, quando sobrou espaço para preencher...

- Candidato no segundo dia com cara de sono (BALADAAAA...).

Bom, o por que de citar tudo isso? Se você já procurou na internet a resolução das provas que alguns cursinho já estão liberando e não atingiu aquela quantidade de acertos que tinha como meta, acalme-se: PODIA SER PIOR, BEM PIOR....


Maratona de Nova York cancelada.

Entre os diversos problemas causados pelo furacão Sandy, como falta de energia, destruição de casas, edifícios, inundações, mortes e prejuízos financeiros, uma outra baixa foi causada não só para os moradores da região, mas também para milhares de esportistas: o cancelamento da tradicional Maratona de Nova York.
Essa seria a quadragésima segunda corrida, que é disputada desde 1970.
Apesar do cancelamento, milhares de corredores se reuniram e fizeram uma espécie de corrida simbólica, fazendo o percurso mas de forma autônoma.

A participação brasileira está marcada na lista de campeões, e por duas vitórias de Marilson dos Santos em 2006 e 2008.


Fontes:
Terra, Folha de São Paulo, O2.