Microsoft Wants Your Feedback On Its New Python IDE
First time accepted submitter phoolishcyrus writes "Dear Slashdot: would you kindly take a look at our little project, PTVS — Python Tools for Visual Studio? It helps you develop Python (using any interpreter, not just IronPython) and comes with a few other goodies. Spare no punches."
It's great that Microsoft is starting to support Python!
Votator.com implements a fair voting scheme (free
It is an opensource plugin but only works with the Professional version so the free express edition does not work with this.
You can use netbeans or eclipse instead
Why does MS want feedback on their Python IDE? I doubt most Python developers are not open to a MS IDE and they probably don't want to use any heavy IDE. But thanks for the slashvertisement.
Democracy Now! - your daily, uncensored, corporate-free
for Visual Studio 2010.
WTF good is a free & open source plugin for a proprietary & closed source IDE?
Didn't you ever watch the '80's teenage movies? Where the big bully gets his ass kicked by the new kid (bigger bully) that moved into town. And after getting his ass kicked, learns his lesson, befriends the geeks he picked on and they team up and beat the bigger bully?
MS is the big bully that has had it's ass kicked by the new bigger bully - Apple - and is trying to be nice....
See, at least when you develop under MS, you don't have to be enslaved by developer rules and annual services just to test software on your own goddamn device. AND you can sell your software anywhere you want.
Now how about adding Intellisense for managed C++ back into VS after you disabled it!
Wow! It took you three minutes to assess it.
"Note: PTVS does not install into VS Express Editions". It needs some sort of Visual Studio Shell, which is separate from VS Express for some odd reason.
And has Microsoft added the necessary pieces to the version of the .NET Compact Framework for Xbox 360 Indie Games and Windows Phone 7 to allow DLR languages such as IronPython to work in applications for those platforms?
MS is fully supporting Python. I love it!
Where are the Java bashers when you really need them? Oh, they either use patent unencumered scripting languages or go the MS way, but not both at the same time.
Btw. does anyone use IronPyhton and F#, or they just look good in PR blurbs?
This was the same question I was asking when I read the headline. Can I run it for free?
Turns out that you can. While it doesn't support Visual Studio Express, it does run on Visual Studio Shell. http://pytools.codeplex.com/wikipage?title=Installation%20-%20details&referringTitle=Home
I'll have to wait till I get some spare time to compare it against PyCharm which I use and love.
Do you think they are being cute and trying to imply with the name that "Python Tools for Visual Studio" will be available on a Linux system?
If you truly believe that, then your cute reply is probably appropriate.
Nerd rage is the funniest rage.
I didn't find any mention of Microsoft anywhere in the website or the product name.
Technically, your distributor needs to provide packages for your distribution. Therefor reporting a lack of packages in your package-management-system will be redirected to your distributor, not Microsoft.
But you can complain about the fact that you "can't find the downloads for Windows and Visual Studio directly on the Microsoft website because it is too cluttered up, and therefor you had to download it from a third-party-website (and still no binaries for Linux/BSD/MacOS to be found)".
Can software be homosexual?
--
What's wrong with Python?!
I find it okay to work in. Coming from VI and the command line some of the features are nice, others not so much. One thing I noticed about the python plugin for VS is that when using PySide, you must run in interactive mode, rather than debug. A nice feature that I found lacking was for VS to automatically generate a list of classes and functions for a library that is imported. Obviously this tool is integrated fairly heavily into python at points as evident in the profiling section ( good work by the way ), so it would be handy to refresh classes/module listings when "import foo" or "from foo import bar" was detected in a save. All in all, not a bad development system.
If it were gay, it would be well designed, clean and would live in a great neighbourhood with good services. So it's definitely *not* gay...
Short answer: no
Long answer: IronPython relies on System.Reflection.Emit, which is not supported in the (greatly reduced) version of the .NET Compact Framework API that shipped with the 360. I would expect the next console to support it, though, as the DLR is a standard part of .NET 4.0 and later
IronPython and IronRuby should work on Windows Phone 7, which has the full .NET CF, but you might have to deploy a redistributable version of the DLR with your app (people evidently do this; it doesn't seem all that hard).
I don't suppose any of the juvenile asshats here care that it's "Free & Open Source (Apache 2.0)"?
/. reader.
Some days I'm so embarrassed to be a longtime
Only when you code it . badum tish :)
Whilst you continue extorting $5 per Android handset from HTC your new touchy-feely lets-be-buddies act is worth less than piss froth. So no, I won't even be dignifying your request with a visit to your site out of curiosity.
Oh, and that's a feature, not a bug.
MS ... is trying to be nice.
Maybe so, but only in a half-hearted, sullen, and mean-spirited way - which is admittedly an improvement for them. A cynic might surmise that they're just putting more effort into concealing their embedded evil.
If they were to start releasing some of their significant applications on Linux and/or BSD (as paid commercial packages, like some other vendors), then I'd agree that they're probably trying to be actually nice instead of just faking it.
Those who can make you believe absurdities can make you commit atrocities. - Voltaire
Visual Studio is free and open source now! Awesome! Wait this is just a plugin.... nevermind. Sometimes I'm so embarrassed that someone can be a longtime /. reader and still be such an idiot.
Great now windows 7 and 8 users can rig up a nice mixer interface to replace the default, that should go well with the classic menu mod and ribbon removers and the cost for ztree to replace filemanagers (Or the shell itself!) with teh ribbon going through it.
And that includes a coffee break.
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
Bioshock changed me too.
Of course.... (4:43 mins in)
I wonder if the product devs benefit from today's page views, download stats, etc.?
Quantifying success via completely irrelevant metrics sounds like it would be right in MS's wheelhouse.
From the Codeplex home page:
CodePlex is hosted by Microsoft. Microsoft does not control, review, revise, endorse or distribute the third party projects on this site. Microsoft is hosting the CodePlex site solely as a web storage site as a service to the developer community. For more information, read the CodePlex Terms of Use.
"Consensus" in science is _always_ a political construct.
And it rocks !! Both !! At the same time !! Because it's free !! As in beer !! And beer ROCKS !! Until the lease expires !! Then it's just pisswater !! Unless it's BUD !! Then it alway was pisswater !!
It's already expired? TFA:
It's a free & open source plug-in for Visual Studio 2010
Quick Start Guide ...
1. Uninstall any previous versions of "IronPython Tools" or PTVS (if any)
2. Install a Python distribution
3. Install Visual Studio 2010
4.
At point 4, they should have written "Profit" - last time I checked the Visual Studio 2010 (not the Express version) is NOT free.
Questions raise, answers kill. Raise questions to stay alive.
>Would you kindly?
Microsoft, would you kindly ask for our review without using mindtricks and making me question my true origin, as I did check out the plugin after reading that line?
Doesn't seem to work on my Mac or Linux box. Do you have a .deb or .rpm I could use?
Goodbye Slashdot. You've changed.
Nope. They're offering a free plugin for their own commercial software. Basically, they're just trying to shift more units of Visual Studio. Not nice, not evil, just normal commercial behaviour.
Unless of course the Python code produced will only run on Windows. Can anyone confirm...?
Got them moderator blues I blieve I walk out the do', With these mod-points I been gettin', I 'most never post no mo'
This used to be a part of IronPython and is now a separate project. They now support different interpreters like CPython instead of IronPython only. Together with AnkhSVN and Mono Tools this makes Visual Studio 2010 a pretty nice place to work in to be honest.
I think Microsoft is moving in the right direction with these kind of extensions. Please make more! (Preliminary Wish List: Bash/Ksh/Posix Shell script extension, Ruby extension, Dalvik/Android extension)
Yes, Microsoft. I will try your open source software, as soon as you port it to an open source OS.
Give me Classic Slashdot or give me death!
Microsoft has been supporting Python for a while. In fact, IronPython is about to celebrate its fifth birthday.
Don't get too used to the UI. I hear the next version has a Ribbon Bar for Python, which puts 70% of the most-commonly used commands right where you need them. The other 30% of the commands are there too... somewhere.
"pull no punches" not "spare no punches"
I am **extremely** impressed. It's, by far, my favourite Python IDE (I'm using it in the free Visual Studio shell...)
One drawback is that it encourages editing python under Windows rather than on a Unix-like platform, but that's something I can live with when it delivers productivity.
I'm yet to use it for a real project - but I'm looking forwards to that experience.
I'd definitely encourage anyone to, at least, give it a try.
So I guess the important question is will it run on express?
If I can just reach out with my words and touch a butthole, just one, it will all be worth it.
Guys, this is part of Microsoft Open Source (Openness) Strategy. (http://www.microsoft.com/opensource/)
Microsoft is trying to show himself as open source friendly, but had pin-pointed specific OSS projects that do not look like a big threat to the company.
The are not supporting any OSS software that endorse any of their big competitors like IBM or Oracle.
They are endorsing small players (and small companies) like PHP, Drupal, SugarCRM, on which an strategy of "Embrace, extend and extinguish", or a possible takeover will be possible to execute at the long term.
Also, MS had been hiring people from the FLOSS community to start showing the local communities that they are "good guys" with the open source. Now at the local OSS events we have Microsoft speakers and merchandising.
http://pastebin.com/HWSw4FVa
Your sig is ironic juxtaposed with your post.
The soylentnews experiment has been a dismal failure.
"Is windows only. Python is a cross-platform language. A non-cross-platform IDE for Python makes as much sense as having a solar-cell operated night-vision camera. FAIL."
They should tell their paid shills, masquerading as slashdot moderators, to stop modding down all non Microsoft-Correct posts.
I tried to test it, but it doesn't work run on OS X Lion, Linux, OpenBSD, FreeBSD, NetBSD, or DragonFly BSD.
How about this: port your IDE (and compilers) to work elsewhere. Free Software isn't your enemy. Free Software is a "good enough" approach. Visual Studio and MSVC are significantly better than gcc, Xcode, emacs, etc.
Consider: Steinway didn't stop selling $100,000 pianos because yamaha (virtually) gave away $10,000 pianos. Many people (and businesses) would drop serious cash for a good compiler and ide for Linux. Why are you turning down that money?
Hi Microsoft! Thanks for releasing stuff under an Apache license. Now if, for some reason I end up in Hell, at least I know I will be comfortable with a big coat, because it should be freezing there.
I will report to you about the program once I figure it out how to install an MSI on Debian.
Yours truly: the average Linux geek that reads Slashdot.
Warning! Potentially dumb question:
What value does a Python IDE provide? Given that Python is strongly typed only at run-time, the IDE cannot perform syntax-completion, rename variables, provide warnings/errors as you type, provide context sensitive help, etc., that you would normally get with an IDE for a statically typed language such as Java. Might as well just stick to using your favorite text editor.
Sure thing, if you don't think you've already done enough with this post to prove what a dick you are.
It will not work with VS Express, but it will apparently work with VS Shell, which is free. VS Shell is just the IDE without any of the language compilers included.
Sorry Microsoft, but you're too late to the party. I use PyCharm and love it. Even better, their Devs have responded to my bugs or usage queries within hours of posting --- 100% of the time.
Besides asking me to come over and start kicking the tires, give me a reason or three why.
I use M-x hippie-expand. Bind it to M-/:
(global-set-key (kbd "M-/") 'hippie-expand)
It's not a precise auto-completer so it won't help you discover what's in the objects (I personally use the shell for experimenting), but on the other hand it'll let you auto-complete in comments or strings. I use that feature frequently.
I noticed you typed something which looks like the not operator. I'm sorry, I can't allow you to do that as it would violate an m$ patent. Please find an alternative solution.
So you didn't understand what the project in question was, and yet you still have the audacity to call someone else an idiot!
I read the docs for this yesterday, came away impressed about things like iPython integration and the idea that other IDE features of VS could be used for Python. That said, I'm stuck with the position that is it simply too much work and pain to use Windows as an underlying platform, when what I deploy to is largely web apps running on Linux/OSX. I use Windows 7 in virtual machines to test sites with MSIE, and Windows Explorer WebDAV, but that is about it -- it is a pain to do much more in a VM. I just do not have incentive to "live" in Windows, live in a VM on my Mac or Linux desktops, or buy another box just to run a platform I have little use for. I would hope MS has intention of eventually trying to make their tools really compete with Eclipse on the cross-platform game. Alright, back to vim for me. Sigh.
If you're not doing it in Vi(m) or (X)Emacs you're doing it wrong.
I've got to say, it's a little sad that three people total seem to have gotten the joke.
VS Express can't use plugins. That's one of the "upsell" features of Visual Studio Professional and higher.
So to build plugins that's free for anyone to use without needing to pay the ~$400 for Visual Studio you need to use the Visual Studio Isolated Shell
FTFY
"I've got more toys than Teruhisa Kitahara."
ANY unix, come on microsoft show how much less you suck than before.
I didn't think so
If it were gay, it would be well designed, clean and would live in a great neighbourhood with good services.
But it would cost twice as much, be only in one color, and you would have to be careful about how you hold it.
PlusFive Slashdot reader for Android. Can post comments.
I use Code::Blocks. It runs on all platforms so my code looks and acts the same when I'm building on whatever platform I need my applications to run on. If I need my application to run on Linux/Mac/Windows I open the cbp file, add the needed ifndef's, adjust for the libraries, and compile. If you build GUI applications WxWidgets work very nicely with Code::Blocks. Code::Blocks has been doing Python for quite a while now. Python Plugin
Having to work for a living is the root of all evil.
Wow! It took you three minutes to assess it.
To be fair he probably only read "Vendor: Microsoft".
GPL. Then come back with that cake.
Great tool, just what I have been looking for :) Keep up the good work.
For Microsoft: The only way you guys can return to being the platform of choice is to have the biggest app store. It isn't going to happen. You moved to proprietary languages in an attempt to further your grip and lost it all. There will never again be a "only works on Windows". There is only room for two and Android has already rounded the second corner while you sit at the gate.
For the two people that might not know: Most applications these days are based on Python, Java, and HTML/CSS/javascript, with back ends on Obj-C/C/C++. Microsoft moved to proprietary languages, C# & .NET. Now they are loosing because developers that know C++ (that they kicked to the curb) and all of the languages above, have moved on to applications for the iPhone/iPad or ones that are cross platform. Now Apple is kicking everyone's ass because they have the most applications in their app store. Look at what happened to webOS. Fortunately, Android applications are growing steadily. This is just a cheap attempt to steal potential Android developers.
Having to work for a living is the root of all evil.
Explain why an IDE is necessary for Python. I can understand using one for MS tools like C# or Visual Basic, but I thought the whole point of using Python was that you didn't need bloatware like that and could just code in Emacs (which runs on Windows) or something. I guess I don't understand because I am not a Windows developer. There's no Visual Studio on Linux, which is one reason I use Linux. My impression of Visual Studio (from the limited exposure I've had to it) is that it's a cumbersome layer between you and your code, something that slows you down and gets in your way. Developing Python in Visual Studio sounds like getting MLB base stealers to wear parachutes.
Does it run on Linux?
99% of all statistics are made up on the spot. -- Bruce Karsh
Huh? I dind't know that. (shame on me).
WAIT!!! wikipedia (or microsoft) doesn't mention VS being OSS nor is the mentioned license a FOSS license, it's a proprietary one.
Why are you spreading misinformation AC?
-- no sig today
as best I can (while running between meetings)! Thanks for all your comments & questions so far.
Background info:
PTVS is basically a 2 person (1 dev, 1 test) effort. Recently we had a summer intern & a new dev has joined since to work on Big Data (think dryad/hadoop/etc) which is great. We've been running "under the radar" so to speak until now. The parts that we're actually most proud of are that we convinced mgmt to let us do this as Open Source, and more importantly under Apache 2.0. The fact we can actually accept code contributions back (may be a 1st?) is huge too. Not a big deal for most, but trust me, as staunch pro OSS guys, it was a big deal & took a lot of work to accomplish...
Thanks in advance & on to answering questions...
PS Just updated the project page w a couple of videos to give you an overview. Excuse the cheesy production, we don't exactly have a marketing dept.
PTVS - Core editing experience : http://www.youtube.com/watch?v=7CoGsSlrxKk
PTVS - Profiling : http://www.youtube.com/watch?v=VCx7rlPyEzE
As I said a couple of replies earlyer: I can't find any refference on wikipedia/google/microsoft that VS 2010 and later are FOSS, who said that and where is it? And why is wikipedia wrong again?
And why if they opensourced it are they still refusing to publish a native linux binary?
-- no sig today
jesfetzik is correct. You can install it into normal VS, or the "Integrated Shell" which essentially turns this into a "Python VS Express"... but also note that if you're a student, startup, etc you can pretty get the full versions for free.
You tell us what the catch is? IronPython is open source, so if you don't like it you can change it yourself. This IDE works with multiple implementations of Python, so you are not locked into using Microsoft's preferred solution. So where is the lock in? How will Microsoft extinguish the language? Is there any specific reason for not using this, other than the standard Microsoft hatred?
Says the Anon Coward. Guess what? Don't like it? GTFO!
Where does the signature go?
Well, I thought it was funny :).
Shut the fuck up you paranoid delusional neckbeard dweeb. Nobody gives a fuck what you think.
I'm not a Windows guy, mostly. Can't avoid it completely, but I try to whenever I can. Most of my work is done in various UNIXes. That said:
Thank you.
Seriously. Please ignore the haters. Me, I'm tickled pink y'all are doing this work: anything that helps the Python community is A-OK in my book. :)
(goes off to his Windows 7/64 desktop to install PTVS...)
I'm sure many will laud you, and many will criticize, but thanks for putting so much work into making this happen. It's an impressive feat (and I don't mean the product itself).
Try snaked!
Its a materialistic, foss editor with python focus from python programmers for python programmers. You have to spend a little time getting used to it but wont regret it.
And yes, it does run on linux.
I'm fine with that, as long as the OSS shills also stop writing "VS isn't in my Linux repo LOLOL" posts. Seriously, it wasn't funny the first time, can we get back on topic, everyone?
It looks like his OS has broken down. Reformatting and reinstalling Windows should easily fix that.
Note that there are some Microsoft projects hosted on CodePlex, however.
That's the whole point of it. Microsoft wants to keep developers away from Linux. The python people who are contributing to this just see a larger empire beckoning.
Slashdot continues to be a perfect sales space for Microsoft.
2 Questions: Did you run these comments by the PR and Legal departments to make sure you're representing the company correctly? How can you claim you don't have a marketing department? I thought 90% of Microsoft was in the Marketing department. Look around, I'm sure someone in the room is! Ok, enough Microsoft bashing, I just had to get that out of my system. Hopefully MS supports more projects like this in the future.
Maybe I am missing something here, but how do I import an existing Python application from SVN into PTVS?
I've installed the VS Shell and PTVS and also installed ankhsvn, but sadly have not been able to see how I do this. Would think this is a default use case for folks just know demo-ing PTVS for the first time.
Have had no issues doing the equivalent with either PyCharm or PyDev.
What are your long term plans for this project? Any chance it'll ever ship with VS proper?
If I mod you up, it doesn't necessarily mean I agree with what you've said, sorry.
1. :)
2. List of things we don't have:
Marketing rep; Doc person (you can probably tell by looking at our site!); Release manager; PR person; I18N support; Product Manager;
PS Thanks - if this is successful, hopefully mgmt will support more of these types of projects.
Microsoft has been supporting Python for a while. In fact, IronPython is about to celebrate its fifth birthday.
For its 5th birthday it received additional functionality and new branding, it's called P#.Net now. Miguel de Icaza will bring it to Linux ASAP.
"I'm not much interested in interoperability. I want substitutability. I want to be able to throw your software out."
Why? I'm not bursting with rage, I just find the OPs comportment tiresome.
Nerd rage is the funniest rage.
Whatever the OSS fanatics say, this work is needful and valuable. Personally, as I use Visual Studio at work, I'd like very much to use the same IDE for all languages. So keep up the great work!
However, I can't try it, because I use VS 2008 at work and I cannot upgrade it. First, it's not easy to convince your boss to buy new software, especially if the old one still perfectly does its job. Second, all current projects have been being developed in VS 2008, and no one wants to bother with project update problems.
Is there any chance that this plugin could be backported to 2008?
In a way, yes, so what? I mean, this is a Visual Studio plugin, if you are not in the market for VS then you are not in the market for this plugin much in the same way that Windows users don't give a flying fuck about Gnome-Shell.
The fact is that I don't see the market for this thing. One uses python because it's a free, cross-platform language with excellent unix support and decent Windows, whereas one would use VS because one sells enterprise software for microsoft-centric business or just MS-centricness in general.
One usually tries to travel the most transited path to get the most out of other people's experience.
Using a python plugin for VS means neither Windows programmers nor Unix programmers can help you out. I mean, yes sure they exist, but I wouldn't be surprised if the main users of this product were it's developers.
No seriously, read this page, right now, the devs are roaming it in trying to turf it as much as possible, being all helpful and shit. It's cool, actually. But that's pretty much the level of interest that surrounds it.
But... the future refused to change.
See subject-line above, & thanks for the toolset: Been "getting into" PyThon for a while now (around 4-5 months) & I have been finding it EXTREMELY USEFUL for text processing (& the fact it's multi-platform only makes it all the more desirable to use as well).
APK
P.S.=> I've specifically been using it to gather HOSTS file data from 17 reputable & reliable sources online to consolidate into 1 large normalized/deduplicated, alphabetized, & blocking IP Address converted (from larger slower 127.0.0.1 to 0.0.0.0 or even 0 (Win2k/XP/Server 2003)) HOSTS file here... already @ 1,580,313++ unique entries of KNOWN bad sites/servers/hosts-domains, botnet C&C Servers, as well as sites + adbanner servers that have been known to serve up malicious content on them in either fullblown malware-in-general, or maliciously scripted content... it works to help the concept of "layered security"/"defense-in-depth" is why, as well as aiding speed (via hardcoding 250 of my fav. sites into the HOSTS file, and, blocking adbanners (saving bandwidth & speed I pay for out of pocket))...
... apk
While ill get yelled at for this, it would be nice if it had a forms developer too. ( and no, not tied just to winforms )
---- Booth was a patriot ----
I'm assuming you've used ActiveState's Komodo IDE. I've got a commercial license of that product. It's acceptable, but far from brilliant. But from my survey of what was around before purchasing that, every other python IDE was light years behind. In what way is this plug-in to Visual Studio better than Komodo?
May we assume that this could signal that python is being used or at least considered internally in MS. I wonder if this is preparing some groundwork for python being used in Windows 8?
I just can't be bothered.
Perhaps Microsoft could assist in getting VS to run and install smoothly under WINE?
I want to learn python, so maybe I'll use this as a reason to start. I think the auto-complete functionality in VS would be helpful.
Quick! To the Virtual Machine!
Please ignore the ignorant!
THANK YOU! for contributing to open source software!
I just wanted to say thanks. I spend a lot of time developing in Python and after ten minutes of using PTVS, I'm seriously considering switching over from Eclipse+PyDev. Two problems though:
1) I have an unmodified package installed in site-packages, but sometimes I want to use a modified version contained in the project directory. We usually work around this by inserting the path to the modified package in the system path. Suddenly this doesn't work in PTVS.
2) For some reason I can't step into functions in said packages. Is there a problem with debugging 3rd party packages or something?
Anyway, please keep up the good work, it's looks fantastic. If I can work around these two issues, I'm pretty confident I'll make the switch.
Don't you see, please, before it's too late.... what does a PYTHON do???? first there is the gentle embrace, gentle but firm, the iron squeeze in the velvet coils, then the extension as it slowly wraps itself around the hapless victim... then the final extinction of the light as you are crushed into oblivion and swallowed into the dark recesses that harbor the crumbs of its previous meals! NOOOOO! escape!
Subversion of spatial scale luxury decoration ideas.
Maybe I am missing something here, but how do I import an existing Python application from SVN into PTVS?
I've installed the VS Shell and PTVS and also installed ankhsvn, but sadly have not been able to see how I do this.
Have had no issues doing the equivalent with either PyCharm or PyDev and I am assuming this is the one of the default use cases for folks just know demo-ing PTVS for the first time.
where is the linux version?
The Slashdot summary makes it sound like you're affiliated with Microsoft. Are you?
thanks for the hardwork! looks promising for python users out there. I'm just recently getting into it, after a history with c++ in visual studio this seems like a natural step for quick coding in similar environments
Maybe if KB2542054 ever finishes its update I might be able to look! World's biggest software company, world's most screwed up updates.
Nice that you made that available under the Apache License and that you're allowed to integrate contributions! It would be nice to have a great Python IDE available as open source. I'll definitely check this out when I get a chance!
I just googled this up, worth chewing on:
"http://www.oreillynet.com/onlamp/blog/2005/11/can_microsoft_kill_python.html" [oreillynet.com]
I have VS 2010 Ultimate installed. I loaded the Tools for Python. It won't recognize IronPython 2.7 at all. Also intellisense doesn't work at all. Basically I am no better off than using a text editor and running it from the command line.