linhas soltas...: Agosto 2003
Quarta-feira, Agosto 27, 2003
Marte aqui tão perto
E é já hoje que Marte vai atingir o ponto mais próximo da Terra. Nessa altura o planeta vermelho vai estar a 'apenas' 55.763.108 km (34.649.589 milhas). Num email que recebi dizia que, observado da terra, o planeta vermelho iria parecer ter aproximadamente o tamanho da lua... porque será que não acredito nisso?

De qualquer maneira é um momento histórico, será a primeira vez que este fenómeno será observado e registado. Mais uma coisa para contar aos meus netos, daqui a muitos anos, se ainda me lembrar.

Ontem andei a ver se encontrava Marte, mas há tanto tempo que me tenho mantido afastado da observação do céu, que já não sei onde andará. Em tempos foi uma grande paixão minha, que talvez venha a recuperar.

Como última nota, a próxima vez que será observado um fenómeno igual será a 28 de Agosto de 2287 e nessa altura Marte irá estar ainda mais próximo da terra. Segundo a SIC, este fenómeno a última vez que terá acontecido, no ano 57.538 a.C, ainda o Homem de Neandertal habitava a Terra, ou seja, somos os primeiros seres realmente conscientes do fenómeno a observá-lo.

Etiquetas:

enviado por Hugo, às GMT | comentários: 0
Quinta-feira, Agosto 21, 2003
Opostos
Parece haver a ideia geral de que os opostos funcionam bem como casal. Tenho alguns 'mas' a acrescentar.

A principal vantagem das diferenças num casal será a quebra de alguma da monotonia. Mas pode acontecer que essas diferenças sejam tão grandes que as duas pessoas tenham visões de vida completamente diferentes. Que pensem nas situações de modos diferentes, de tal modo que no casal pode estar um membro completamente destroçado e o outro não dar por nada. Uma pessoa pode fazer algo cheio de amor, e a outra não dar o mínimo valor. Durante algum tempo este tipo de situações pode ser ultrapassável, mas imaginemos viver uma vida inteira com este desequilibrio. Por muito que as duas pessoas queiram, vai sempre haver um dos membros do casal que a todo o momento esteja mal.

Há uns tempos ouvi uma pessoa de idade dizer algo do tipo: 'as diferenças são boas, mas o casal tem que estar de acordo nas coisas essenciais'. Cada vez concordo mais com isto. Os casais de opostos que resultam, de certeza que têm uma visão semelhante naquilo que é essencial. Tem que haver uma visão de vida minimamente semelhante, e um modo de sentir e entender as coisas semelhantes para que o casal realmente funcione, pelo menos pelo meu modo actual de ver as coisas. Semelhanças no essencial, diferenças naquilo que não prejudica a convivência do casal.

Etiquetas:

enviado por Hugo, às GMT | comentários: 0
Sábado, Agosto 16, 2003
Visão de beleza
Já notaram que existem momentos em que contemplamos algo simples, mas tudo parece quase parar à nossa volta? Por momentos parece não existir mais nada e conseguimos observar cada pormenor. Nesses momentos, com o tempo quase parado, usufruímos daquilo a que chamo uma visão se beleza. Raras vezes isto acontece. A mim aconteceu, que me lembre, uma vez. Ainda hoje consigo rever, como se fosse agora, esse momento, com todos os pormenores, sentindo o mesmo tempo lento. Um simples momento em que tudo perde a importância e algo simples ganha uma presença única que nos fica sempre gravada na memória. Não conseguimos descrever o momento nem explicar a razão, apenas sentimos, sem perder tempo com qualquer racionalização. A mais pura visão de beleza.

Etiquetas:

enviado por Hugo, às GMT | comentários: 0
Terça-feira, Agosto 12, 2003
Recomeçar...
Tenho notado que a vida é marcada por inicios. De tempos em tempos surge algo de muito bom ou de muito mal que nos faz repensar em tudo o que temos como certo, e somos obrigados a descobrir quem somos. Estou neste momento a passar por mais um destes inicios. Não sei muito bem o que me espera, mas esta madrugada acho que descobri parte do meu rumo. Decidi redescobrir a minha essência. Redescobrir quem sou e aquilo que realmente importa. Redescobrir o que realmente me faz sentir feliz.

Durante muito tempo vivi mais por outra pessoa do que por mim mesmo. De certa forma perdi-me de mim mesmo. Agora que tudo acabou, tenho que descobrir quem sou. Penso que em parte já descobri. Tenho que me importar mais comigo, descobrir o que me faz feliz e deixar de dar demasiada importância a coisas que me fazem sofrer. Acho que o último ponto é muito importante... não dar importância demasiada às coisas que me fazem sofrer, e colocar em primeiro plano aquilo que me faz sentir bem.

Ainda estou abalado com tudo o que aconteceu, mas tenho que avançar. Parar é morrer.

Há uns tempos li algures algo do tipo 'cada vez que uma porta da felicidade se fecha, há outra que se abre, mas muitas vezes ficamos tanto tempo a olhar para a porta que se fechou que não notamos naquela que se abriu'. Pois bem... agora que uma porta se fechou, o que tenho a fazer é procurar essa nova porta que se abriu.

Etiquetas:

enviado por Hugo, às GMT | comentários: 0
Sábado, Agosto 09, 2003
Tudo ok... acho
Bom, parece-me que está tudo ok. Desde ontem ao inicio da noite transferi a maioria do conteúdo para aqui (o que me interessava), criei um template minimalista, o sistema de comentários está a funcionar, por isso... acho que está tudo.

Se houver algum problema, avisem.

Cumps

Etiquetas:

enviado por Hugo, às GMT | comentários: 0
Sexta-feira, Agosto 08, 2003
HP ScanJet 3400C no Linux
Coloquei o meu scanner a funcionar no Linux. Ainda mantinha um 486 com o windows95 para o poder utilizar... mas enquanto andava a ver uma outra página, onde aparecem já as gsmart mini 2 e 3 suportadas como webcam, http:// spca50x.sourceforge.net, resolvi ir à página do SANE, para ver se haviam novidades em relação ao meu scanner... e existiam.

Se possui um destes scanners, leia o resto do artigo, onde explico muito resumidamente os passos necessários para que também possa utilizar o seu HP ScanJet 3400C no Linux.

O primeiro passa é dirigir-se a http://home.kabelfoon.nl/~bertrik/hp3300c/ hp3300c.html e fazer o download do programa de testes.

Se é novato, aqui vão os passos:

mkdir testtool (assim fica com os ficheiros separados dos restantes, já que o tar.gz n vem com um directorio definido)
cd testtool tar xvfz nomeficheiro.tar.gz
./configure
make

Neste momento, se não surgiu algum erro pelo meio, deve existir um ficheiro, com
o nome 'testtool'. Vamos correr este comando com o parâmetro '-h'

./testtool -h

Esperimente alguns dos comandos, para ter a certeza que realmente funciona. Se não conseguir fazer o scan, n há problema. A mim não funcionou, mas depois da instalação 'real', tudo funcionou.

Vá então a http://www.mostang.com/sane e faça o download da ultima versão, tanto do backend, como do frontend.

Faça o normal tar xvfz nomeficheiro.tar.gz a ambos.

Agora chegou o passo realmente importante: o patch do sane, para que suporte o scanner. Se reparar, no directório do testtool, existe um script chamado 'patch- sane.sh', e bastará correr este script, apontando para o directório onde estão as sources do sane-backend, da seguinte forma:

./patch-sane.sh /directorio/onde/esta/sane-backend/

Vai ver aparecerem algumas linhas no ecrã.

Agora só tem que ir até ao directório do sane-backend e correr os comandos normais...

./configure
make
(e como root)
make install

Próximo passo: compilar os sane-backends... com os mesmo comandos.

Aqui chega o momento de experimentar. O 'xscanimage' é bastante simples de
usar. Experimente fazer um preview... e pronto... já está.

Não referi que tem que estar instalado a 'usb-lib', mas se tem usb instalado no sistema, esta já deve estar disponível.

E assim me livrei de vez de tudo o que é Microsoft e Windows, finalmente.

Peço desculpa por erros, ou por ter dado os passos um pouco por alto... mas está tudo nos documentos que acompanham os programas. Como escrevi isto à pressa, podem existir erros ortográficos, sintáticos, ou mesmo técnicos. Pelo facto as minhas desculpas.

Como ultima nota, uso o Linux 2.2.25.

NÃO SOU RESPONSÁVEL POR POSSÍVEIS PROBLEMAS QUE POSSAM SER CAUSADOS PELA UTILIZAÇÃO DESDE DOCUMENTO. USE ESTE DOCUMENTO SOB SUA RESPONSABILIDADE.

Etiquetas: , , ,

enviado por Hugo, às GMT | comentários: 0
Porquê?
Estou junto ao mar. O sol está a pôr-se. Oiço as ondas a baterem lentamente, num vai e vem constante. Tudo à minha volta está tingido de vermelho. No meu pensamento estás tu. Linda, como sempre. O teu rosto, os teus olhos, que tanto eu gostava de ver fitar os meus, sem cessar. E os teus lábios... o jeito como os moves.

Levanto-me e aproximo-me mais do mar. Em volta, o vermelho dos últimos raios de sol começam a ser substituídos pelo escuro da noite. Escurece. A saudade aumenta. Começam a ser visíveis algumas estrelas. Observo-as, uma vez mais, talvez procurando alguma que brilhe tanto nos meus olhos como tu. Não. Continuo a não encontrar nenhuma que te iguale. E jamais encontrarei.

Cada vez que penso em ti, o meu coração dispara, sinto uma tranquilidade estranha, um remoinho no peito. E tu estás sempre no meu pensamento. Quando estou próximo de ti, este sintoma repete-se.

Conquistaste-me com a tua simpatia, com a tua maneira de ser. Amo-te! Que mais dizer?... Qualquer gesto teu tem grande significado para mim, mesmo os mais simples. Isto só pode ser amor. É demasiado forte. Demasiado sentido. Que mais nos pode fazer sentir felizes num momento, para logo após nos fazer sentir uma dor profunda. Uma dor cá dentro...

Porque hei-de sentir receio em declarar-me? No momento chego a duvidar dos meus sentimentos, mesmo sendo eles tão óbvios. Mas porquê? Porque ei de ter este receio? Porquê...?

Talvez por ser tímido. Talvez por te amar.

E o segundo texto com que ganhei, pelo segundo ano consecutivo, o concurso Uma aventura... literária, em 1998, 3º Ciclo e Secundário, modalidade texto.

Etiquetas:

enviado por Hugo, às GMT | comentários: 0
Calma! Calma!
"Abranda, coração! Abranda!", pedia eu, mas ele não abrandava. Lá vinha ela outra vez com o seu ar inocente. Sorriu. Lindo sorriso. E o meu coração que teima em acelerar. "Calma!Calma!", peço suplicante, mas cada vez os seus batimentos são mais fortes. Ela olha para mim. O meu coração acelera ainda mais e e começo a sentir o meu rosto a aquecer. Ela vira de novo a cara. Imagino-me a abraça-la e a dizer-lhe que a amo.

Mas a minha timidez... sempre a minha timidez,teima em não me largar. Como pedir em namoro uma rapariga quando algo mais forte nos impede? A timidez é mais forte que nós, mas será mis forte que o meu amor por ela?

Foi a pensar nisso que entro na sala de aula. Não consigo prestar atenção ao que o professor diz. Só me vem à cabeça a minha amada. "Não aguento mais, tenho de pedir-lhe em namoro". E é com esta decisão que acaba aquela longa aula.

Procuro-a, mas não há meio de encontrá-la. Começo a perder as forças, o brilho desaparece do meu olhar... acabo de descobrir que ele já se foi embora. Ai coração destroçado...

Como pode haver assim um sentimento tão bom e ao mesmo tempo tão cruel.

Recordo a sua doce face, o seu olhar a sua expressão quando sorri. O meu coração volta a bater, recupero o brilho do meu olhar, as forças regressam, e imagino como irá estar ela no dia que ainda não chegou.

Este foi o texto com que ganhei pela primeira vez o concurso Uma aventura... literária, em 1997, 3º Ciclo e Secundário, modalidade texto.

Etiquetas:

enviado por Hugo, às GMT | comentários: 0
Wine-pt-HOWTO
Wine-pt-HOWTO
Hugo Pereira, hugocunhapereira@teleweb.pt
v 0.01, 25 de Junho de 2000

1 - Experiência pessoal
1.1 - O que é o wine?

O Wine é um programa que permite correr software para windows no Linux

1.2 - Como comecei a usá-lo.

Comecei a utilizar o Wine pois existia um programa que adorava, mas não existia versão para Linux. Esse programa é o Free Agent, um cliente de nntp. Actualmente no meu sistema tenho leafnode que alimenta localmente o sistema com newsgroups, e como cliente o Free Agent.

2 - Como obter o Wine?

Pode obter o Wine apartir de http://www.winehq.com. Aconselho o descarregamento do código fonte, pois os binários são um pouco lentos. Tal também é válido se a sua distribuição possuir o Wine pré-compilado: essa versão provavelmente já é antiga e lenta, logo deve descarregar a última versão e compilá-la no seu computador.

3 - Como compilar e instalar o Wine?

Após ter descarregado o ficheiro wine-????????.tar.gz, descompacte esse ficheiro:

# tar xvfz wine-????????.tar.gz
(substitua wine-????????.tar.gz pelo nome do ficheiro que descarregou)

Entre na directoria que foi criada. Aí dever dar os seguintes comandos:

# ./configure
# make depend && make
# make install

Em principio não surgirá nenhum erro. O mais comum é não ter a biblioteca xpm instalada. Procure-a no cd da sua distribuição.

4 - Configurar o Wine

O meu objectivo era configurar o wine de modo a correr apartir do meu directório fonte. Para tal criei os seguintes directórios:

/home/---/win
/home/---/win/windows
/home/---/win/windows/system
/home/---/win/windows/temp

Não possuo o windows instalado no meu sistema. Se o tem numa partição, pode montá-la e correr os programas directamente a partir dessa partição.
Aqui está o meu ficheiro .winerc:

----------------- .winerc --------------------
;;
;; MS-DOS drives configuration
;;
;; Each section has the following format:
;; [Drive X]
;; Path=xxx (Unix path for drive root)
;; Type=xxx (supported types are 'floppy', 'hd', 'cdrom' and
'network')
;; Label=xxx (drive label, at most 11 characters)
;; Serial=xxx (serial number, 8 characters hexadecimal number)
;; Filesystem=xxx (supported types are 'msdos'/'dos'/'fat',
'win95'/'vfat', 'un$;; This is the FS Wine is supposed to emulate on a
certain
;; directory structure.
;; Recommended:
;; - "win95" for ext2fs, VFAT and FAT32
;; - "msdos" for FAT16 (ugly, upgrading to VFAT driver strongly
recommended)
;; DON'T use "unix" unless you intend to port programs using Winelib !
;; Device=/dev/xx (only if you want to allow raw device access)
;;
[Drive A]
Path=/mnt/fd0
Type=floppy
Label=Floppy
Serial=87654321
Device=/dev/fd0

[Drive C]
Path=/home/hugo/win
Type=hd
Label=MS-DOS
Filesystem=win95

[Drive D]
Path=/mnt/cdrom
Type=cdrom
Label=CD-Rom
Filesystem=win95

[Drive E]
Path=/home/hugo/win/windows/temp
Type=hd
Label=Tmp Drive
Filesystem=win95

[Drive F]
Path=${HOME}
Type=network
Label=Home
Filesystem=win95

[wine]
Windows=/home/hugo/win/windows
System=/home/hugo/win/windows/system
Temp=/home/hugo/win/windows/temp
Path=/home/hugo/win/windows;/home/hugo/win/windows/system;
/home/hugo/win/window$SymbolTableFile=./wine.sym
#

[DllDefaults]
EXTRA_LD_LIBRARY_PATH=${HOME}/wine/cvs/lib
DefaultLoadOrder = native, elfdll, so, builtin

[DllPairs]
kernel = kernel32
gdi = gdi32
user = user32
commdlg = comdlg32
commctrl= comctl32
ver = version
shell = shell32
lzexpand= lz32
mmsystem= winmm
msvideo = msvfw32
winsock = wsock32

[DllOverrides]
kernel32, gdi32, user32 = builtin
kernel, gdi, user = builtin
toolhelp = builtin
comdlg32, commdlg = elfdll, builtin, native
version, ver = elfdll, builtin, native
shell32, shell = builtin, native
lz32, lzexpand = builtin, native
commctrl, comctl32 = builtin, native
wsock32, winsock = builtin
advapi32, crtdll, ntdll = builtin, native
mpr, winspool = builtin, native
ddraw, dinput, dsound = builtin, native
winmm, mmsystem = builtin
msvideo, msvfw32 = builtin, native
mcicda.drv, mciseq.drv = builtin, native
mciwave.drv = builtin, native
mciavi.drv, mcianim.drv = native, builtin
w32skrnl = builtin
wnaspi32, wow32 = builtin
system, display, wprocs = builtin
wineps = builtin

[options]
AllocSystemColors=100

[fonts]
;Read documentation/fonts before adding aliases
Resolution = 96
Default = -adobe-times-

[serialports]
Com1=/dev/ttyS0
Com2=/dev/ttyS1
Com3=/dev/modem,38400
Com4=/dev/modem

[parallelports]
Lpt1=/dev/lp0

[spooler]
LPT1:=|lpr
LPT2:=|gs -sDEVICE=bj200 -sOutputFile=/tmp/fred -q -
LPT3:=/dev/lp3

[ports]
;read=0x779,0x379,0x280-0x2a0
;write=0x779,0x379,0x280-0x2a0

[spy]
Exclude=WM_SIZE;WM_TIMER;

[Registry]
; Paths must be given in /dir/dir/file.reg format.
; Wine will not understand dos file names here...

;UserFileName=xxx ; alternate registry file name (user.reg)
;LocalMachineFileName=xxx ; (system.reg)

[Tweak.Layout]
;; WineLook=xxx (supported styles are 'Win31'(default), 'Win95', 'Win98')
WineLook=Win95

[programs]
Default=
Startup=

[Console]
;XtermProg=nxterm
;InitialRows=25
;InitialColumns=80
;TerminalType=nxterm

#


----------------- .winerc --------------------

5 - Que programas correm no Wine?

Já corri no Wine o Free Agent, o Agent, o mIRC, o winamp, o freecell, a diciopédia entre outros. Acho que o Free Agent e a Diciopédia são dois dos programas que melhor correr no Wine.
O Wine ainda está numa fase muito inicial de desenvolvimento, mas já é capaz de correr um grande número de aplicações. Seguindo li, correr bastante bem jogos, mas inda não experimentei.

----------------------------------------------

Copyright (C) 2000 Hugo Pereira

Este texto é documentação livre, pode ser distribuido, modificado ou traduzido livremente desde que o autor seja notificado. O autor pode alterar a totalidade ou parte do documento sem qualquer aviso prévio.

O autor não se responsabiliza por qualquer dano que possa ocorrer pela utilização da informação existente neste documento.

Sugestões e críticas para: hugocunhapereira@teleweb.pt

Poderá encontrar a última versão deste documento no seguinte endereço:

http://sevennet.webhop.org

Etiquetas: , , ,

enviado por Hugo, às GMT | comentários: 0
Leafnode-pt-HOWTO
Leafnode-pt-HOWTO
Hugo Pereira, hugocunhapereira@teleweb.pt
v 0.01, 21 de Junho de 2000

Este documento pretende ser um pequeno guia para aqueles que querem instalar o leafnode no computador de modo a terem um pequeno servidor nntp no computador doméstico.

1 - O que é o Leafnode?

O leafnode é um programa (ou melhor, conjunto de programas) que permite puxar as mensagens do servidor de nntp do seu ISP, permitindo-lhe ler newsgroups offline usando o seu programa cliente favorito.

2 - Como obter o Leafnode?

Pode efectuar o download a partir de http://www.leafnode.org. Na altura em que este documento estava a ser escrito a última versão era a 1.9.14.

3 - Como instalar o Leafnode?

É possível que a sua distribuição já possua este programa, o que torna a instalação muito fácil como (se for um pacote *.rpm):

# rpm -i leafnode.rpm

Se a sua distribuição não possuir o pacote, pode descarregar o código fonte a partir do endereço referido acima e compilá-lo.
Antes de instalar deve certificar-se que não possui nenhum outro servidor de nntp a correr no seu computador. Para tal, num consola ou terminal escreva:

$ telnet localhost nntp

Se receber uma mensagem de erro significa que não tem nenhum servidor a correr na sua máquina. Caso possua o INN, CNEWS ou qualquer outro, deve desinstalá-lo. Após isso deve editar o ficheiro /etc/inetd.conf e verificar se existe alguma linha começada por nntp. Caso exista de comentá-la. Para comentar basta colocar um # antes da linha. De seguida deve criar um utilizador chamado news (se já não possuir um). Para isso utilize a ferramenta de configuração da sua distribuição, ou então:

# adduser news

Após ter descarregado o ficheiro deve descompactá-lo. Imaginando que o ficheiro se chama leafnode.tar.gz, deve fazer:

# tar xvfz leafnode.tar.gz

Deve ter sido criado um directório com o nome "leafnode". Entre nesse directório. Para compilar o leafnode basta fazer:

# ./configure
# make
# make install

Para terminar a configuração do leafnode faltam agora apenas dois passos:
1.º Editar o ficheiro /etc/leafnode/config
2.º Editar o ficheiro /etc/inetd.conf

(1.º)
Entre na directoria /etc/leafnode. Deve existir aí um ficheiro chamado "config.example". Edite-o do seguinte modo:

. Na linha onde está "server =" deve colocar o nome do seu servidor, por exemplo:
server = scrappy.visi.com

. Na linha onde está "expire =" coloque o número de dias que devem ser mantidas as mensagens no disco rígido antes de serem eliminadas.

Guarde esse ficheiro com o nome "config"

(2.º)
Edite o ficheiro /etc/inetd.conf, acrescentando o seguinte (numa só linha):

nntpstreamtcpnowaitnews/usr/sbin/tcpd
/usr/local/sbin/leafnode

Guarde as alterações. Basta agora matar o processo "inetd" e reiniciá-lo:

# killall inetd
# inetd

E pronto, já tem o servidor configurado. Verifique se este responde com:

$ telnet localhost nntp

Se o servidor responder, significa que tudo correu bem. Efectua agora a ligação à internet. Quando esta estiver estabelecida faça:

# /usr/local/sbin/fetchnews

O leafnode vai agora receber a lista de newsgroups disponíveis no servidor que especificou no ficheiro /etc/leafnode/config.
Quando este terminar de receber a lista entre no seu programa cliente favorito (como o tin, trn, slrn, entre muitos outros) e subscreva os grupos que lhe interessam (não se esqueça de entrar neles). Execute de novo o comando acima. Agora o leafnode vai receber os posts que se encontram nos grupos pretendidos.

4 - O Leafnode necessita de alguma manutenção?

O leafnode foi escrito de modo a recuperar após os erros, pelo que em princípio não necessitará de nenhuma manutenção especial, além de correr de tempos em tempos, quando verificar que o programa está a ficar lento, ou o directório /var/spool/news demasiado cheio, acupando espaço em disco, o "texpire":

# /usr/local/sbin/texpire

5 - Que cliente devo usar?

Tudo depende do gosto. Vou apenas salientar um: se vem do windows, certamante conhece o Free Agent. Este programa ainda não dispõe de versão para Linux, mas utilizando o WINE, um emulador do windows, é possível colocá-lo a funcionar. Aconcelho que seja utilizada a versão 16 bit.

--------------------------------

Copyright (C) 2000 Hugo Pereira

Este texto é documentação livre, pode ser distribuido, modificado ou traduzido livremente desde que o autor seja notificado. O autor pode alterar a totalidade ou parte do documento sem qualquer aviso prévio.

O autor não se responsabiliza por qualquer dano que possa ocorrer pela utilização da informação existente neste documento.

Sugestões e críticas para: hugocunhapereira@teleweb.pt

Poderá encontrar a última versão deste documento no seguinte endereço:

http://sevennet.webhop.org

Etiquetas: , , ,

enviado por Hugo, às GMT | comentários: 0
Novo site
Olá, como já repararam, mudei outra vez de site.
Tomei esta opção porque, neste momento tenho acesso a uma shell com php e mySQL, mas como é que sei se amanhã vou ter? Assim tenho sempre a base do site feita, e o máximo que pode acontecer é mudar de webhosting, mas neste caso será apenas isso, sem ter que andar com grandes problemas em encontrar algures um local com php e mySQL.
Como esta mudança perco alguns aspectos do site, como organizar por temas, mas ganho em termos de liberdade para transferir tudo conforme fôr necessário.

Cumps a todos :) Agora vou andar às voltas para colocar tudo no lugar.

Etiquetas:

enviado por Hugo, às GMT | comentários: 0
(c) 1998-2008 Hugo Pereira | Termos de Utilização | linhas.org