f



Re: using MAILTO protocol

> The big problem isn't that *browsers* don't understand it (the
majority of them do), but <snip>

I'm sorry, but this reasoning reminds me the immortal "I smoked, but I
did not inhale" :-)
If a browser cannot handle an HTML tag/link, it means that IT DOES NOT
SUPPORT IT. Why it doesn't support it - this is the secondary question
(programming mistake, missing interface, etc.)

If this tag/link is a part of HTML standard which the browser is
claiming to be in full compliance with, this is a serious problem
addressed to the browser's authors.

Good news is that the majority of browsers provide at least partial
support for mailto (and news, let's don't forget it neither) protocols.
You can set the program of your choice in the browser settings. Or you
may don't do it, which moves the question from the compatibility level
to your personal preferences level, which web developer has no control
over (and which he shouldn't be bothered anyway).

Specially important to choose a proper browser (and set it properly) in
places like Internet-cafe. Here IE goes as the most standard compliant
and convenient: it allows you to set a web-interface (Hotmail) as its
default mailto handler. A good sample to follow for all other wanna-bes.

> >The big problem isn't that *browsers* don't
> >understand it (the majority of them do), but that even if the browser
> >understands it, it works only if the user's system has a *mail* user
agent
> >configured, which will *not* be the case if
>>
> >1) The user's email provider works by a purely Web interface rather
than
> >SMTP or
> >
> >2) The user is running on a shared-access machine such as a library
> >terminal or a computer in an Internet cafe (there are entire
countries
> >where the latter is how the vast majority of Internet users access
the
> >net).
> >
>
> And a 3rd case:
>
> 3) The user has a browser that does not have an email program
associated to
> handle mailto:  Of the 17 or so browsers that I have, only one (the
AOL
> browser), has an email program associated with it. Any other browser,
it
> prompts me to install its self-associated email program (which I never
do - I
> have an email program of choice) so that the authors unreliable
mailto: works
> for the page.


0
schools_ring (242)
11/9/2003 5:29:13 PM
comp.lang.javascript 38370 articles. 2 followers. javascript4 (1315) is leader. Post Follow

4 Replies
282 Views

Similar Articles

[PageSpeed] 9

VK wrote:

>> The big problem isn't that *browsers* don't understand it (the
> majority of them do), but <snip>
> 
> I'm sorry, but this reasoning reminds me the immortal "I smoked, but I
> did not inhale" :-)
> If a browser cannot handle an HTML tag/link, it means that IT DOES NOT
> SUPPORT IT. Why it doesn't support it - this is the secondary question
> (programming mistake, missing interface, etc.)

You did not understand that the HTTP user agent and mail user agent need
not to be from the same vendor or even know each other, a common mistake
made by OE users like you who have IE know OE and vice-versa.  If there
is no interface between the HTTP-UA and the SMTP-UA, a user may get only a
blank compose window, if that.  The same goes for a user who has no account
configured for its e-mail client, if installed:  They will be requested to
create such an account first and hopefully(!) they are shown the compose
window with the mail data you specified in the hyperlink afterwards.

BTW: There is no References header in your posting but you are referring
to another one.  That scatters discussions and makes them hard to follow.
Please learn how to post (hit the Reply/Followup button and use `was' in
the Subject to show the old subject.)


PointedEars

0
Thomas
11/9/2003 11:14:15 PM
In article <3fae796c$0$12484$9b622d9e@news.freenet.de>, "VK"
<schools_ring@yahoo.com> writes:

>> The big problem isn't that *browsers* don't understand it (the
>majority of them do), but <snip>
>
>I'm sorry, but this reasoning reminds me the immortal "I smoked, but I
>did not inhale" :-)
>If a browser cannot handle an HTML tag/link, it means that IT DOES NOT
>SUPPORT IT. Why it doesn't support it - this is the secondary question
>(programming mistake, missing interface, etc.)

Can you please explain how me not having a "default mail client" installed for
any of my browsers (including IE), means that the browser "does not support"
the mailto: protocol? It handles it PERFECTLY by trying to open the default
email app, since there isn't one, it stops. But not inside the browser. The
browser does EXACTLY what it should, its the OS that stops the process by
interupting it and asking me to install a program so that *your* broken
unreliably mailto: link will work the way you think it will. If that is a case
of "the browser not supporting it", then please explain what would happen if it
*did* support it. And in a default install, IE has no email program associated
with it.

<snip>

>Good news is that the majority of browsers provide at least partial
>support for mailto (and news, let's don't forget it neither) protocols.
>You can set the program of your choice in the browser settings. Or you
>may don't do it, which moves the question from the compatibility level
>to your personal preferences level, which web developer has no control
>over (and which he shouldn't be bothered anyway).

And that is precisely the point. You have NO way of knowing how its set, so it
makes it *very* unreliable. Why use it if you know it to be unreliable?

>Specially important to choose a proper browser (and set it properly) in
>places like Internet-cafe. Here IE goes as the most standard compliant
>and convenient: it allows you to set a web-interface (Hotmail) as its
>default mailto handler. A good sample to follow for all other wanna-bes.

How is my IE a "wannabe" because I set it up the way *I* want it set up, not
the way you need it setup for a mailto: to work? If you want to reliable send
mail, send it with a form from the server (which is how Hotmail and the likes
work), NOT from my browser.

P.S. Read the FAQ with regards to quoting/snipping.
-- 
Randy
0
hikksnotathome
11/10/2003 12:02:32 AM
Thomas 'PointedEars' Lahn wrote:

> [Problems with mailto:]

BTW: `mailto:' is not a protocol but a URI scheme.


PointedEars

0
Thomas
11/10/2003 11:40:29 AM
VK wrote:

> Good news is that the majority of browsers provide at least partial
> support for mailto (and news, let's don't forget it neither) protocols.
> You can set the program of your choice in the browser settings. Or you
> may don't do it, which moves the question from the compatibility level
> to your personal preferences level, which web developer has no control
> over (and which he shouldn't be bothered anyway).

So your position is that if I, as a web author, am relying on mailto: to
allow customers to contact a business such that those customers can purchase
goods or services from that business, or resolve disputes about previous
goods and services purchased, or carry out any number of tasks related to
communicating their desires to the business, I shouldn't be "bothered" with
the fact that some of the mail sent to the business may never arrive, and
the business will never know that mail never arrived?

In this case, the "business" could be a "lint from under the bed" collecting
club, and no money might be changing hands, but the fact remains that
mailto: is extremely unreliable for all of the reasons already given, and
with alternative solutions available (including free server-side emailers),
I see no reason to continue using it.

--
| Grant Wagner <gwagner@agricoreunited.com>

* Client-side Javascript and Netscape 4 DOM Reference available at:
*
http://devedge.netscape.com/library/manuals/2000/javascript/1.3/reference/frames.html

* Internet Explorer DOM Reference available at:
*
http://msdn.microsoft.com/workshop/author/dhtml/reference/dhtml_reference_entry.asp

* Netscape 6/7 DOM Reference available at:
* http://www.mozilla.org/docs/dom/domref/
* Tips for upgrading JavaScript for Netscape 7 / Mozilla
* http://www.mozilla.org/docs/web-developer/upgrade_2.html


0
Grant
11/10/2003 8:09:43 PM
Reply:

Similar Artilces:

Re: (Ab)use of Javascript; was Re: Web Services Increasingly Under
Our moderator wrote: > [TELECOM Digest Editor's Note: Would you rather see sites which use > Javascript switch to using cookies? Both Amazon and Google, to use > your two examples, make liberal use of cookies to keep track of > users. PAT] Absolutely! Cookies can't open and close windows in my browser or run malicious software on my machine. I can restrict the lifetime of cookies; in fact, I can refuse to store cookies on my system for any longer than the current session. And as far as I can tell, I can run amazon.com (the non-SSL part) and google.com under Lynx, refusing all cookies altogether. Google and Amazon are going to have to store any tracking information about me on their own servers. (Which is certainly what the Bush administration is hoping they will do.) George Mitchell [TELECOM Digest Editor's Note: You have a good point there. PAT] ...

Re: (Ab)use of Javascript; was Re: Web Services Increasingly Under #3
> If the government really wants to track people's online usage > they'll have to give everyone the option to keep the same IP > throughout their lifetime, much like they allow people to keep their > phone numbers now. That way each IP address will have a name > attached to it. Hardly. Consider local network environments and shared usage computers, where many users share the same IP. Julian Thomas: http://jt-mj.net In the beautiful Finger Lakes Wine Country of New York State! Warpstock X - October 12-15 2006; Windsor, Ont. I'll be there - will you? -- -- Finagle's First Law: If an experiment works, something has gone wrong. ...

Re: (Ab)use of Javascript; was Re: Web Services Increasingly Under #4
This is true, but it's no different than the cookies that are currently stored/tracked on these computers. To stretch my idea even further, if there is a will there is a way. All they have to do is create a simple little program that will change the system's IP address every time a new user logs on. Say a window will prompt for the login/password, and the login will be the IP. This will of course wreak havoc on the network structure, but with the advance of wireless networks and entire cities getting ready to go wifi, this is looking more and more like when cell phones first appeared on the market. I'm sure they can come up with routers that will send traffic from each IP to its appropriate router over wifi. Again, not saying that it's going to happen. Just letting my imagination work here. Julian Thomas wrote: >> If the government really wants to track people's online usage >> they'll have to give everyone the option to keep the same IP >> throughout their lifetime, much like they allow people to keep their >> phone numbers now. That way each IP address will have a name >> attached to it. > Hardly. Consider local network environments and shared usage computers, > where many users share the same IP. > Julian Thomas: http://jt-mj.net > In the beautiful Finger Lakes Wine Country of New York State! > Warpstock X - October 12-15 2006; Windsor, Ont. I'll be there - w...

Using re.VERBOSE, and re-using components of regex?
Hi, I'm trying to compile a regex Python with the re.VERBOSE flag (so that I can add some friendly comments). However, the issue is, I normally use constants to define re-usable bits of the regex - however, these doesn't get interpreted inside the triple quotes. For example: import re TIMESTAMP = r'(?P<timestamp>\d{2}:\d{2}:\d{2}.\d{9})' SPACE = r' ' FOO = r'some_regex' BAR = r'some_regex' regexes = { 'data_sent': re.compile(""" TIMESTAMP # Timestamp of our log message SPACE FOO # Some comment SPACE """, re.VERBOSE), 'data_received': re.compile(""" TIMESTAMP # Timestamp of our log message SPACE BAR # Some comment SPACE """, re.VERBOSE), } Is there a way to use CONSTANTS (or at least re-use fragments of my regex), and also use re.VERBOSE so I can comment my regex? Cheers, Victor On 17/04/2013 00:45, Victor Hooi wrote: > Hi, > > I'm trying to compile ...

JavaScript Which Invokes the URL:MailTo Protocol
Anybody know how to modify this script to return to the HTML page from which it was launched? <script language="javascript"> document.location.href="MailTo:"; </script> Tom wrote on 19 okt 2003 in comp.lang.javascript: > Anybody know how to modify this script to return to the HTML page from > which it was launched? > > <script language="javascript"> > document.location.href="MailTo:"; > </script> > > You just open a email client, you do not leave the browser, and do not collect 200 euros. -- E...

Re: Re: Re: Not Using a Text Editor Interface for Mathematica
For some interesting reading take a look at Chapter 2 in Edward R. Tufte's 'Visual Explanations'. Dr. John Snow found the cause of the 1854 Cholera Epidemic in London by FIRST plotting the case data on a map of London, and THEN doing the analysis. In the case of the Challenger Space Shuttle disaster, although they were aware of the potential problem, the technicians never made the proper graphic that related risk to temperature in past launches and thus failed to present a convincing case for not launching. Maybe graphics doesn't always come before analysis, but ...

Check for callto: protocol support using javascript
Hi, I am developing a web-application which will start telephone-calls using a special protocol (callto: or phone:) There will be two groups of users, one with a phone-client installed and support for the protocol, and one without this client. So I need to write a javascript-function to check if the callto: or phoneto: protocol is available on the client. ANY IDEAS??? If I just add the link for every user, the ones with no client will run into an error message on every click: "Protocol not supported" in firefox "Page cannot be displayed" in IE Regards Alexander Ale...

Re: Re: Use of % notation
I'm not sure what you mean, Jens, by "in the FrontEnd". In any case, I would say avoid the use of % when it refers to output from a different cell. But in doing derivations by a series of calculational steps WITHIN ONE CELL I find that % and %% are extremely useful and completely safe. David Park djmp@earthlink.net http://home.earthlink.net/~djmp/ From: Jens-Peer Kuska [mailto:kuska@informatik.uni-leipzig.de] Avoid the usage of % in the FrontEnd. Regards Jens Hi, I mean, that if you run the Mathematica kernel alone in a command line session or ...

Re: cookies vs. (Ab)use of Javascript
In article <telecom25.240.15@telecom-digest.org>, TELECOM Digest Editor wrote: > Would you rather see sites which use > Javascript switch to using cookies? Both Amazon and Google, to use > your two examples, make liberal use of cookies to keep track of > users. Actually, I would. I know what cookies can and can't do, and I know that they are far less dangerous than Javascript. There's no way a cookie can hose my machine the way Javascript can. And fears of "keeping track of users" (which are tremendously overstated) can be relieved by having the browser delete cookies at the end of the session. ...

RE: using re.finditer()
Erik Johnson wrote: > I am still fairly new to Python and trying to learn to=20 > put RE's to good use. I am a little confused about the > finditer() method... > ...it doesn't document any restriction about multiline matching, > but it certainly seems to have one... > finditer() doesn't accept a flag like re.DOTALL,=20 > as re.match() and re.search() do. It seems a shame not > to be able to put an otherwise smart design to use. Embed the flag(s) you desire in the regex itself. For example, to include DOTALL, change r'<td.*?>(.*?)</td>' t...

RE: [Info-ingres] Re: Is it possible to use OpenIngres gateway to access Sybase without using cursors?
"DBG" <tore.aasgaard@gmail.com> wrote in message > Hi > > Im administering a Sybase database. The application accessing this > database was originally developed for Ingres, so now the application > which is developed using Ingres OpenRoad is communicating with my > Sybase database via an OpenIngres gateway (Enterprise access I think > is the name). > I've have performance issues with my database, (table locking, high > number of small I/O etc) and from what I can gather this is in my case > related to the use of cursors gateways part. We experienced a lot of locking problems in EA/MSSQL until I put this in the start up code: SELECT :lv_server_class = dbmsinfo('server_class'); IF lv_server_class = 'MSSQL' THEN DIRECT EXECUTE IMMEDIATE 'SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED'; COMMIT; DIRECT EXECUTE IMMEDIATE 'SET LOCK_TIMEOUT 10000'; COMMIT; ELSEIF lv_server_class = 'Ingres DBMS Server' THEN SET lockmode session WHERE readlock = nolock, timeout = 10; COMMIT; ELSE MESSAGE 'Warning server class ' + lv_server_class + ' not implemented'; ENDIF; "Paul White" <pwhite@peerlessit.com.au> wrote in message news:mailman.1111701677.22482.info-ingres@cariboulake.com... > We experienced a lot of locking problems in EA/MSSQL until I put this in ...

(Re)discover the power of faceless applets when used from Javascript
Hi all,Faceless applets when called from Javascript can create stunningeffects and when used properly you can really make very reachclients. We developed an absolutely (modulo current technologies)secure storage service. Read about this service here:http://87zero.com/articles/2006/11/12/tengu---absolutely-secure-encrypted-storage/Or go and create a free account herehttp://87zero.com/SCT/Login.jspYou can at least use it to browse your file system and open any fileusing the browser -- we had to run (locally) a HTTP server in afaceless applet to achieve this.Or at least look at this game that ...

Re: Using Javascript to find if Java applet has loaded
Hi Jason, "Richard Maher" <maher_rj@hotspamnotmail.com> wrote in message news:... > Hi Jason, > > "Jason Carlton" <jwcarlton@gmail.com> wrote in message > news:a8e19be8-5116-4889-b26b-b1998b2d7c26@j19g2000yqk.googlegroups.com... > > Specifically, Parachat. I'm showing an absolutely positioned element > > when the user logs in, and I want to use Javascript to remove that > > element when the applet fully loads. Or, if it hasn't loaded within a > > certain amount of time, just redirect to an error page. > ...

Re: access-list protocol or port will not be used
Hi everybody, I've got the following situation: For testing I want to allow icmp traffic from the 10.11.96.0 /2 network to the 10.11.64.0 /20 network PIX 515E Inside: 10.11.96.3 255.255.240.0 Outside: 172.31.255.9 255.255.255.248 Router Ethernet0/0: 172.31.255.10 255.255.255.248 Tokenring0/0: 10.11.64.0 255.255.240.0 Part of the PIX config: route outside 10.11.64.0 255.255.240.0 172.31.255.10 1 nat (inside) 0 access-list 100 access-list 100 permit icmp 10.11.96.0 255.255.240.0 10.11.64. 255.255.240.0 Problem: When I want to use the command: "nat (inside) 0 access-list 100" ...

Re: Using BIND
----- Original Message Follows ----- > mayer wrote: > [] > > I'm not trying to convince you, it's up to you to make you own > > decisions on what makes sense on your own network. I just strongly > > recommend against > > using a hosts file as it's error prone, requires repropogation, is > > vunerable to viruses and can generally not be relied on. One virus I > > saw going around last year made use of it to add bad addresses of > > all of the various virus makers making it impossible to contact them > > to download new virus defi...

Re: [ace-users] how to use ACE write the Protocols such as HTTP
Hi, To ensure that we have proper version/platform/compiler information, please make sure you fill out the appropriate problem report form (PRF), which is in $ACE_ROOT/PROBLEM-REPORT-FORM $TAO_ROOT/PROBLEM-REPORT-FORM or in $ACE_ROOT/BUG-REPORT-FORM $TAO_ROOT/BUG-REPORT-FORM in older versions of ACE+TAO. Make sure to include this information when asking any questions about ACE+TAO since otherwise we have to "guess" what version/platform/compiler/options you've using, which is error-prone and slows down our responsiveness. >> I don't know why I use ACE to simulate the HTTP protols in >> http file download application, but when i test it, it receive >> nothing from the HTTP server. code as bellow: Most probably because there's a big bug in your code.. >> string server = "WWW.ZBEDU.NET"; >> >> ACE_INET_Addr srvr (80, ACE_TEXT ("www.zbedu.net")); >> ACE_SOCK_Connector connector; >> ACE_SOCK_Stream peer; >> string filename = "/xinxi/user1/52/archives/2006/722.html"; >> string protocol = " HTTP/1.0"; >> string httpheader = "GET " + filename; >> httpheader += protocol; >> httpheader += "\n"; >> httpheader += "Accept: *.* \n"; >> httpheader += "Accept-Language: en-us\n"; >> httpheader += "Accept-Encoding: gzip, dflate\n"...

Re: Using BIND
----- Original Message Follows ----- > mayer wrote: > [] > > The ARM is available online, but you also have your own local copy. > >> From Google I found this online: > > http://www.fiveanddime.net/bind-9/bind-9.3.1/doc/arm/ > > > > Danny > > Thanks for that, Danny. Arrgh! I don't know if it's just my Web > browser, but all I get there is a directory list. Perhaps you mean: > > > http://www.fiveanddime.net/bind-9/bind-9.3.1/doc/arm/Bv9ARM.html.html > These HTML pages come with both the Windows binaries and the source....

Re: help Using HTML form (or javascript) to trigger SAS!
If you can assume your user will use IE for the browser, look into 'HTML Applications' (HTAs). I believe they can do this sort of thing. How would you get the values of your params into the sas session running your program? Some sort of automation/integration technologies thing, or on a specially crafted command line? (Is it possible to pass a sas program params on a command-line batch call?) -----Original Message----- From: SAS(r) Discussion [mailto:SAS-L@LISTSERV.UGA.EDU] On Behalf Of Eversmann Sent: Friday, June 15, 2007 11:52 AM To: SAS-L@LISTSERV.UGA.EDU Subject: help Using H...

Re: can i implement RS422 protocol using 7831 RIO card
I am trying to implement RS422 using the FPGA on a NI cRIO 9401.&nbsp; I modified the FPGA Serial Example mentioned in this post.&nbsp; Using a custom PCB board designed in house we take the TTL serial output and input from the cRIO module and translated into differential 5V RS422. If I loop back the transmit and receive on the PCB board I can send and receive a text message ok. But when I try to connect the PCB board to PCI-422 card by connecting the transmit positive to the receive positive and transmit minus to the receive minus, the text I read back&nbsp;is incorrect and some...

Re: Creating a Exported javascript .js export file using parts of
Sigurd - thanks for responding, you have always helped me out. You are correct re the PUT statement, except I am still new to SAS and know what I want to do but just cant do it right. Below was my attempt except the below is riddled with errors but it shows what my mindset is except I dont know how to do it correct. Thanks for your thoughts!!! Happy Holidays to you and all. DATA have; input value $ 1-10; datalines; set(6,31) set(9,13) set(1,34) set(8,43) set(2,83) set(3,33) ; run; proc sql; create table count_of_have as select count (*) as num_records from have ; quit; data set fin...

Re: help Using HTML form (or javascript) to trigger SAS! #2
Here is a video demonstrating it in ASP.NET: http://www.sascommunity.org/wiki/Building_AJAX_Applications_in_Visual_Studio _2005 Here is a paper with the C# code but on Winforms (easily adaptable): http://www.sascommunity.org/wiki/Step-by-step_Guide_To_Creating_Your_First_. NET_Application_Reading_SAS Basically, ASP.NET is a server technology but it is easy enough to run it on a PC and submit jobs that way. If you wish to do it in JavaScript, you will hit a number of security concerns. Look at CGI, ASP.NET, executing a local program from javascript (in Google). It can be done but be forewar...

Re: [tao-users] PPF
Hi Gilles, > I'm developping a corba server that can be access using many > protocols (iiop, ...). Are you using TAO? If so, to ensure that we have proper version/platform/compiler information, please make sure you fill out the appropriate problem report form (PRF), which is in $ACE_ROOT/PROBLEM-REPORT-FORM $TAO_ROOT/PROBLEM-REPORT-FORM or in $ACE_ROOT/BUG-REPORT-FORM $TAO_ROOT/BUG-REPORT-FORM in older versions of ACE+TAO. Make sure to include this information when asking any questions about ACE+TAO since otherwise we have to "guess" what version/platform/compiler...

Re: Using BIND
----- Original Message Follows ----- > Well, thanks to Danny, Brad and David I have this working. Danny may > wish to note: > > - it doesn't say anywhere in the Windows ReadMeFirst to create the > file named.conf - perhaps an empty one should be supplied in the > correct directory? > I don't want to do that as there's too much risk of overwriting an existing one. > - the required directory \dns\etc\namedb is not automatically created > (although there seem to be no files created there?). > That's optional in how you set up your zones. I don...

Re: Using BIND
----- Original Message Follows ----- > Brad Knowles wrote: > > > [excellent discussion] > > What can I say but thanks - I knew many of these things but had > forgotten some and not encountered others. The idea of stratum 1 NTP > servers simply referring you further down the line is a fascinating > one! NTP V5? > Most unlikely, the architecture is totally different and it would require some way of each server knowing what's closer to you, network-wise, in order to have have a hope of being possible. Danny > Cheers, > David > > > _____...

Web resources about - Re: using MAILTO protocol - comp.lang.javascript

Kyoto Protocol - Wikipedia, the free encyclopedia
... in their carbon dioxide emissions from fuel combustion between 1990 and 2009. For more detailed country/region information, see Kyoto Protocol ...

Jarryd Hayne's return to San Francisco 49ers line-up may hinge on NFL's strict concussion protocol
After suffering a concussion in the disastrous loss to Cleveland, the man standing in Jarryd Hayne's way could find he has no choice but to sit ...

Open Door Society changes hotel pool protocols after refugee, 13, nearly drowns in Saskatoon
The Lifesaving Society, which has been offering swimming lessons and pool safety classes for refugees for years, says many newcomers to Canada ...

Common payment processing protocols found to be full of flaws
Stealing PINs and pillaging bank accounts are both trivial.

NFL Considering Changes to Officiating Protocol for Playoffs - Bleacher Report
With the NFL officials under the microscope more than ever, the league is contemplating making changes to officiating protocol for the postseason... ...


Theme parks add extra safety protocols - Videos - CBS News
Major U.S. theme parks across the country, including Disney, SeaWorld and Universal Studios, are tightening security measures at entry gates. ...


Ongoing MD5 support endangers cryptographic protocols
... hasn't been used to sign SSL/TLS server certificates in many years, but continues to be used in other parts of encrypted communications protocols, ...

Imran promises to end VIP protocol in KP
... Imran Khan has said that his party’s government in Khyber Pakhtunkhwa will take measures to end the practice of halting traffic for VIP protocol. ...

Resources last updated: 3/12/2016 8:09:59 AM