How do I install the Python module for Gnash?What do I need to know before I *try* to install a Debian...

Should I tell my boss the work he did was worthless

Single word request: Harming the benefactor

Should QA ask requirements to developers?

"One can do his homework in the library"

Peter's Strange Word

What Happens when Passenger Refuses to Fly Boeing 737 Max?

How strictly should I take "Candidates must be local"?

Reverse string, can I make it faster?

Does splitting a potentially monolithic application into several smaller ones help prevent bugs?

In the late 1940’s to early 1950’s what technology was available that could melt a LOT of ice?

Extra alignment tab has been changed to cr. } using table, tabular and resizebox

Upside Down Word Puzzle

Can you reject a postdoc offer after the PI has paid a large sum for flights/accommodation for your visit?

If the Captain's screens are out, does he switch seats with the co-pilot?

Offered promotion but I'm leaving. Should I tell?

A three room house but a three headED dog

Good allowance savings plan?

How do I deal with a powergamer in a game full of beginners in a school club?

Aliens englobed the Solar System: will we notice?

Examples of a statistic that is not independent of sample's distribution?

Force user to remove USB token

Virginia employer terminated employee and wants signing bonus returned

How to create a hard link to an inode (ext4)?

Is Gradient Descent central to every optimizer?



How do I install the Python module for Gnash?


What do I need to know before I *try* to install a Debian package on Fedora?Can't update OpenSusue 12 without Memory Stickhaving dependency issues while installing a package in Debian GNU/Linux 6.0How to install alternative version of Python beside distro supplied?PyQt5 - python-3.2 : no module available + pyuic5 cannot find PyQt5.uic moduleInstalling specific Not-In-Repository version of python-dev within virtualenv without using VCSHow to make apt to ignore the dependencies?Python wx-widgets in Alpine LinuxInstall TesserOCR package on python virtualenvPython packages installed but only can import on Jupyter notebook not on terminal













3















My actual problem is: How do I install the Python module for Gnash?



But apart from that, what basic concept am I not understanding about installing packages on Linux?



I am used to installing packages using package managers – mostly apt-get and zypper. I have occasionally installed from source, often with no trouble. However I recently installed Gnash and discovered that it has a Python binding that must be compiled from source and this has led down a rabbithole making me feel stupider at each turn.



First, I attempt do a ./configure --enable-python in the gnash source dir. This ends up failing with an error that




package pygtk-codegen-2.0 isn't found




The lead developer, Rob Savoye, was kind enough to point me at packages.debian.org, telling me I just need to locate this package. After many failed searches, I found that the python-gtk2-dev package contains this ... file? script? Great, but I couldn't figure out how to obtain the python-gtk2-dev package. It doesn't exist in any of my openSUSE configured repositories.



So I headed to the GNOME site and searched, found that the PyGTK package contains pygtk-codegen. Download the tarball, cd, ./configure, and this fails because I don't have GLIB. After some more searching I use zypper to install glib2-devel (libglib-2.0 was already installed), and now PyGTK fails to configure because I don't have GObject.



Find that, download tarball, cd, ./configure, fail. I don't have gobject-introspection-1.0, apparently. I DO have gobject-introspection installed, and it's version is ≥ 1.0, but that's what the script says.



So I will readily admit I am new to Linux, but I have to be missing some basic step here. Can anyone give me a clue about any of the above? Is it normal to have to install one dependency after another like this? Is OpenSUSE the wrong distro? What would make this process not so horrible?










share|improve this question















migrated from stackoverflow.com Aug 5 '11 at 9:17


This question came from our site for professional and enthusiast programmers.



















  • Now I'm not very familiar with SUSE but I did some searching and it looks like there is a package out there for gobject-introspection. Have you tried using the package manager to install it?

    – Mike Keller
    Aug 5 '11 at 15:55











  • @Mike I actually have that package installed, which is one of the many maddening things. That particular configure script complains that I do not have "gobject-introspection-1.0", though my version is > 1.0. Part of what I'm asking is whether source installations are usually this finicky and I should get used to it, or perhaps whether I'm going about it wrong.

    – Jason Boyd
    Aug 5 '11 at 21:00











  • It sounds like you are going about it the wrong way. Honestly when possible if you are already using packages it's best not to start compiling additional items. Because a) it's not registered with the package manager b) it subverts part of the point of the package manager. If you can find a package that solves the dependency that's the best bet, it shouldn't make its way into the package repository unless all of it's dependencies are available there as well. Did you try out TehNthDegree's suggestion?

    – Mike Keller
    Aug 8 '11 at 20:49
















3















My actual problem is: How do I install the Python module for Gnash?



But apart from that, what basic concept am I not understanding about installing packages on Linux?



I am used to installing packages using package managers – mostly apt-get and zypper. I have occasionally installed from source, often with no trouble. However I recently installed Gnash and discovered that it has a Python binding that must be compiled from source and this has led down a rabbithole making me feel stupider at each turn.



First, I attempt do a ./configure --enable-python in the gnash source dir. This ends up failing with an error that




package pygtk-codegen-2.0 isn't found




The lead developer, Rob Savoye, was kind enough to point me at packages.debian.org, telling me I just need to locate this package. After many failed searches, I found that the python-gtk2-dev package contains this ... file? script? Great, but I couldn't figure out how to obtain the python-gtk2-dev package. It doesn't exist in any of my openSUSE configured repositories.



So I headed to the GNOME site and searched, found that the PyGTK package contains pygtk-codegen. Download the tarball, cd, ./configure, and this fails because I don't have GLIB. After some more searching I use zypper to install glib2-devel (libglib-2.0 was already installed), and now PyGTK fails to configure because I don't have GObject.



Find that, download tarball, cd, ./configure, fail. I don't have gobject-introspection-1.0, apparently. I DO have gobject-introspection installed, and it's version is ≥ 1.0, but that's what the script says.



So I will readily admit I am new to Linux, but I have to be missing some basic step here. Can anyone give me a clue about any of the above? Is it normal to have to install one dependency after another like this? Is OpenSUSE the wrong distro? What would make this process not so horrible?










share|improve this question















migrated from stackoverflow.com Aug 5 '11 at 9:17


This question came from our site for professional and enthusiast programmers.



















  • Now I'm not very familiar with SUSE but I did some searching and it looks like there is a package out there for gobject-introspection. Have you tried using the package manager to install it?

    – Mike Keller
    Aug 5 '11 at 15:55











  • @Mike I actually have that package installed, which is one of the many maddening things. That particular configure script complains that I do not have "gobject-introspection-1.0", though my version is > 1.0. Part of what I'm asking is whether source installations are usually this finicky and I should get used to it, or perhaps whether I'm going about it wrong.

    – Jason Boyd
    Aug 5 '11 at 21:00











  • It sounds like you are going about it the wrong way. Honestly when possible if you are already using packages it's best not to start compiling additional items. Because a) it's not registered with the package manager b) it subverts part of the point of the package manager. If you can find a package that solves the dependency that's the best bet, it shouldn't make its way into the package repository unless all of it's dependencies are available there as well. Did you try out TehNthDegree's suggestion?

    – Mike Keller
    Aug 8 '11 at 20:49














3












3








3


0






My actual problem is: How do I install the Python module for Gnash?



But apart from that, what basic concept am I not understanding about installing packages on Linux?



I am used to installing packages using package managers – mostly apt-get and zypper. I have occasionally installed from source, often with no trouble. However I recently installed Gnash and discovered that it has a Python binding that must be compiled from source and this has led down a rabbithole making me feel stupider at each turn.



First, I attempt do a ./configure --enable-python in the gnash source dir. This ends up failing with an error that




package pygtk-codegen-2.0 isn't found




The lead developer, Rob Savoye, was kind enough to point me at packages.debian.org, telling me I just need to locate this package. After many failed searches, I found that the python-gtk2-dev package contains this ... file? script? Great, but I couldn't figure out how to obtain the python-gtk2-dev package. It doesn't exist in any of my openSUSE configured repositories.



So I headed to the GNOME site and searched, found that the PyGTK package contains pygtk-codegen. Download the tarball, cd, ./configure, and this fails because I don't have GLIB. After some more searching I use zypper to install glib2-devel (libglib-2.0 was already installed), and now PyGTK fails to configure because I don't have GObject.



Find that, download tarball, cd, ./configure, fail. I don't have gobject-introspection-1.0, apparently. I DO have gobject-introspection installed, and it's version is ≥ 1.0, but that's what the script says.



So I will readily admit I am new to Linux, but I have to be missing some basic step here. Can anyone give me a clue about any of the above? Is it normal to have to install one dependency after another like this? Is OpenSUSE the wrong distro? What would make this process not so horrible?










share|improve this question
















My actual problem is: How do I install the Python module for Gnash?



But apart from that, what basic concept am I not understanding about installing packages on Linux?



I am used to installing packages using package managers – mostly apt-get and zypper. I have occasionally installed from source, often with no trouble. However I recently installed Gnash and discovered that it has a Python binding that must be compiled from source and this has led down a rabbithole making me feel stupider at each turn.



First, I attempt do a ./configure --enable-python in the gnash source dir. This ends up failing with an error that




package pygtk-codegen-2.0 isn't found




The lead developer, Rob Savoye, was kind enough to point me at packages.debian.org, telling me I just need to locate this package. After many failed searches, I found that the python-gtk2-dev package contains this ... file? script? Great, but I couldn't figure out how to obtain the python-gtk2-dev package. It doesn't exist in any of my openSUSE configured repositories.



So I headed to the GNOME site and searched, found that the PyGTK package contains pygtk-codegen. Download the tarball, cd, ./configure, and this fails because I don't have GLIB. After some more searching I use zypper to install glib2-devel (libglib-2.0 was already installed), and now PyGTK fails to configure because I don't have GObject.



Find that, download tarball, cd, ./configure, fail. I don't have gobject-introspection-1.0, apparently. I DO have gobject-introspection installed, and it's version is ≥ 1.0, but that's what the script says.



So I will readily admit I am new to Linux, but I have to be missing some basic step here. Can anyone give me a clue about any of the above? Is it normal to have to install one dependency after another like this? Is OpenSUSE the wrong distro? What would make this process not so horrible?







linux dependencies packages opensuse installation






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Aug 5 '11 at 9:29









slhck

162k47448470




162k47448470










asked Aug 5 '11 at 2:02









Jason BoydJason Boyd

1161




1161




migrated from stackoverflow.com Aug 5 '11 at 9:17


This question came from our site for professional and enthusiast programmers.









migrated from stackoverflow.com Aug 5 '11 at 9:17


This question came from our site for professional and enthusiast programmers.















  • Now I'm not very familiar with SUSE but I did some searching and it looks like there is a package out there for gobject-introspection. Have you tried using the package manager to install it?

    – Mike Keller
    Aug 5 '11 at 15:55











  • @Mike I actually have that package installed, which is one of the many maddening things. That particular configure script complains that I do not have "gobject-introspection-1.0", though my version is > 1.0. Part of what I'm asking is whether source installations are usually this finicky and I should get used to it, or perhaps whether I'm going about it wrong.

    – Jason Boyd
    Aug 5 '11 at 21:00











  • It sounds like you are going about it the wrong way. Honestly when possible if you are already using packages it's best not to start compiling additional items. Because a) it's not registered with the package manager b) it subverts part of the point of the package manager. If you can find a package that solves the dependency that's the best bet, it shouldn't make its way into the package repository unless all of it's dependencies are available there as well. Did you try out TehNthDegree's suggestion?

    – Mike Keller
    Aug 8 '11 at 20:49



















  • Now I'm not very familiar with SUSE but I did some searching and it looks like there is a package out there for gobject-introspection. Have you tried using the package manager to install it?

    – Mike Keller
    Aug 5 '11 at 15:55











  • @Mike I actually have that package installed, which is one of the many maddening things. That particular configure script complains that I do not have "gobject-introspection-1.0", though my version is > 1.0. Part of what I'm asking is whether source installations are usually this finicky and I should get used to it, or perhaps whether I'm going about it wrong.

    – Jason Boyd
    Aug 5 '11 at 21:00











  • It sounds like you are going about it the wrong way. Honestly when possible if you are already using packages it's best not to start compiling additional items. Because a) it's not registered with the package manager b) it subverts part of the point of the package manager. If you can find a package that solves the dependency that's the best bet, it shouldn't make its way into the package repository unless all of it's dependencies are available there as well. Did you try out TehNthDegree's suggestion?

    – Mike Keller
    Aug 8 '11 at 20:49

















Now I'm not very familiar with SUSE but I did some searching and it looks like there is a package out there for gobject-introspection. Have you tried using the package manager to install it?

– Mike Keller
Aug 5 '11 at 15:55





Now I'm not very familiar with SUSE but I did some searching and it looks like there is a package out there for gobject-introspection. Have you tried using the package manager to install it?

– Mike Keller
Aug 5 '11 at 15:55













@Mike I actually have that package installed, which is one of the many maddening things. That particular configure script complains that I do not have "gobject-introspection-1.0", though my version is > 1.0. Part of what I'm asking is whether source installations are usually this finicky and I should get used to it, or perhaps whether I'm going about it wrong.

– Jason Boyd
Aug 5 '11 at 21:00





@Mike I actually have that package installed, which is one of the many maddening things. That particular configure script complains that I do not have "gobject-introspection-1.0", though my version is > 1.0. Part of what I'm asking is whether source installations are usually this finicky and I should get used to it, or perhaps whether I'm going about it wrong.

– Jason Boyd
Aug 5 '11 at 21:00













It sounds like you are going about it the wrong way. Honestly when possible if you are already using packages it's best not to start compiling additional items. Because a) it's not registered with the package manager b) it subverts part of the point of the package manager. If you can find a package that solves the dependency that's the best bet, it shouldn't make its way into the package repository unless all of it's dependencies are available there as well. Did you try out TehNthDegree's suggestion?

– Mike Keller
Aug 8 '11 at 20:49





It sounds like you are going about it the wrong way. Honestly when possible if you are already using packages it's best not to start compiling additional items. Because a) it's not registered with the package manager b) it subverts part of the point of the package manager. If you can find a package that solves the dependency that's the best bet, it shouldn't make its way into the package repository unless all of it's dependencies are available there as well. Did you try out TehNthDegree's suggestion?

– Mike Keller
Aug 8 '11 at 20:49










2 Answers
2






active

oldest

votes


















1














First of all, you should add the "Packman" repository for Opensuse. Packman is the largest 3rd party build service for opensuse packages. See this list for additional Opensuse repositories. I recommend using "zypper" for package management, but yast will also work just fine.



Add packman to zypper (as the root user) like:



zypper ar http://packman.inode.at/suse/openSUSE_11.4 packman11.4


Then, you need to find and install the python-gtk and python-gtk-devel packages. Use zypper search to find the exact packages names before installing (I don't know them off the top of my head)



zypper search python-gtk
zypper install python-gtk-xx, python-gtk-dev-xx


Installing these packages should resolve your dependency problems.






share|improve this answer


























  • thanks. I actually already have the packman repository, and IIRC (I'm at work right now so can't check) python-gtk was not being found. I wonder if something is configured incorrectly? I had refreshed the repositories, plus the packages in question are quite old. I'll try this again when home.

    – Jason Boyd
    Aug 9 '11 at 17:21



















0














You can use software.opensuse.org to search a package you need. You can add repository to your system using zypper or just using 1-Click-Install provided in the search result.






share|improve this answer
























  • I'll take a look at whether I have that repository. I assumed that opensuse would install with the major repositories, at least pure open source ones. But from people's suggestions, sounds like having the right repositories may be the solution.

    – Jason Boyd
    Aug 9 '11 at 17:22











Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "3"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f319400%2fhow-do-i-install-the-python-module-for-gnash%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























2 Answers
2






active

oldest

votes








2 Answers
2






active

oldest

votes









active

oldest

votes






active

oldest

votes









1














First of all, you should add the "Packman" repository for Opensuse. Packman is the largest 3rd party build service for opensuse packages. See this list for additional Opensuse repositories. I recommend using "zypper" for package management, but yast will also work just fine.



Add packman to zypper (as the root user) like:



zypper ar http://packman.inode.at/suse/openSUSE_11.4 packman11.4


Then, you need to find and install the python-gtk and python-gtk-devel packages. Use zypper search to find the exact packages names before installing (I don't know them off the top of my head)



zypper search python-gtk
zypper install python-gtk-xx, python-gtk-dev-xx


Installing these packages should resolve your dependency problems.






share|improve this answer


























  • thanks. I actually already have the packman repository, and IIRC (I'm at work right now so can't check) python-gtk was not being found. I wonder if something is configured incorrectly? I had refreshed the repositories, plus the packages in question are quite old. I'll try this again when home.

    – Jason Boyd
    Aug 9 '11 at 17:21
















1














First of all, you should add the "Packman" repository for Opensuse. Packman is the largest 3rd party build service for opensuse packages. See this list for additional Opensuse repositories. I recommend using "zypper" for package management, but yast will also work just fine.



Add packman to zypper (as the root user) like:



zypper ar http://packman.inode.at/suse/openSUSE_11.4 packman11.4


Then, you need to find and install the python-gtk and python-gtk-devel packages. Use zypper search to find the exact packages names before installing (I don't know them off the top of my head)



zypper search python-gtk
zypper install python-gtk-xx, python-gtk-dev-xx


Installing these packages should resolve your dependency problems.






share|improve this answer


























  • thanks. I actually already have the packman repository, and IIRC (I'm at work right now so can't check) python-gtk was not being found. I wonder if something is configured incorrectly? I had refreshed the repositories, plus the packages in question are quite old. I'll try this again when home.

    – Jason Boyd
    Aug 9 '11 at 17:21














1












1








1







First of all, you should add the "Packman" repository for Opensuse. Packman is the largest 3rd party build service for opensuse packages. See this list for additional Opensuse repositories. I recommend using "zypper" for package management, but yast will also work just fine.



Add packman to zypper (as the root user) like:



zypper ar http://packman.inode.at/suse/openSUSE_11.4 packman11.4


Then, you need to find and install the python-gtk and python-gtk-devel packages. Use zypper search to find the exact packages names before installing (I don't know them off the top of my head)



zypper search python-gtk
zypper install python-gtk-xx, python-gtk-dev-xx


Installing these packages should resolve your dependency problems.






share|improve this answer















First of all, you should add the "Packman" repository for Opensuse. Packman is the largest 3rd party build service for opensuse packages. See this list for additional Opensuse repositories. I recommend using "zypper" for package management, but yast will also work just fine.



Add packman to zypper (as the root user) like:



zypper ar http://packman.inode.at/suse/openSUSE_11.4 packman11.4


Then, you need to find and install the python-gtk and python-gtk-devel packages. Use zypper search to find the exact packages names before installing (I don't know them off the top of my head)



zypper search python-gtk
zypper install python-gtk-xx, python-gtk-dev-xx


Installing these packages should resolve your dependency problems.







share|improve this answer














share|improve this answer



share|improve this answer








edited 10 mins ago









Pang

599611




599611










answered Aug 8 '11 at 20:23









electromechanickelectromechanick

212




212













  • thanks. I actually already have the packman repository, and IIRC (I'm at work right now so can't check) python-gtk was not being found. I wonder if something is configured incorrectly? I had refreshed the repositories, plus the packages in question are quite old. I'll try this again when home.

    – Jason Boyd
    Aug 9 '11 at 17:21



















  • thanks. I actually already have the packman repository, and IIRC (I'm at work right now so can't check) python-gtk was not being found. I wonder if something is configured incorrectly? I had refreshed the repositories, plus the packages in question are quite old. I'll try this again when home.

    – Jason Boyd
    Aug 9 '11 at 17:21

















thanks. I actually already have the packman repository, and IIRC (I'm at work right now so can't check) python-gtk was not being found. I wonder if something is configured incorrectly? I had refreshed the repositories, plus the packages in question are quite old. I'll try this again when home.

– Jason Boyd
Aug 9 '11 at 17:21





thanks. I actually already have the packman repository, and IIRC (I'm at work right now so can't check) python-gtk was not being found. I wonder if something is configured incorrectly? I had refreshed the repositories, plus the packages in question are quite old. I'll try this again when home.

– Jason Boyd
Aug 9 '11 at 17:21













0














You can use software.opensuse.org to search a package you need. You can add repository to your system using zypper or just using 1-Click-Install provided in the search result.






share|improve this answer
























  • I'll take a look at whether I have that repository. I assumed that opensuse would install with the major repositories, at least pure open source ones. But from people's suggestions, sounds like having the right repositories may be the solution.

    – Jason Boyd
    Aug 9 '11 at 17:22
















0














You can use software.opensuse.org to search a package you need. You can add repository to your system using zypper or just using 1-Click-Install provided in the search result.






share|improve this answer
























  • I'll take a look at whether I have that repository. I assumed that opensuse would install with the major repositories, at least pure open source ones. But from people's suggestions, sounds like having the right repositories may be the solution.

    – Jason Boyd
    Aug 9 '11 at 17:22














0












0








0







You can use software.opensuse.org to search a package you need. You can add repository to your system using zypper or just using 1-Click-Install provided in the search result.






share|improve this answer













You can use software.opensuse.org to search a package you need. You can add repository to your system using zypper or just using 1-Click-Install provided in the search result.







share|improve this answer












share|improve this answer



share|improve this answer










answered Aug 9 '11 at 7:08









rakhmadrakhmad

11




11













  • I'll take a look at whether I have that repository. I assumed that opensuse would install with the major repositories, at least pure open source ones. But from people's suggestions, sounds like having the right repositories may be the solution.

    – Jason Boyd
    Aug 9 '11 at 17:22



















  • I'll take a look at whether I have that repository. I assumed that opensuse would install with the major repositories, at least pure open source ones. But from people's suggestions, sounds like having the right repositories may be the solution.

    – Jason Boyd
    Aug 9 '11 at 17:22

















I'll take a look at whether I have that repository. I assumed that opensuse would install with the major repositories, at least pure open source ones. But from people's suggestions, sounds like having the right repositories may be the solution.

– Jason Boyd
Aug 9 '11 at 17:22





I'll take a look at whether I have that repository. I assumed that opensuse would install with the major repositories, at least pure open source ones. But from people's suggestions, sounds like having the right repositories may be the solution.

– Jason Boyd
Aug 9 '11 at 17:22


















draft saved

draft discarded




















































Thanks for contributing an answer to Super User!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f319400%2fhow-do-i-install-the-python-module-for-gnash%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

VNC viewer RFB protocol error: bad desktop size 0x0I Cannot Type the Key 'd' (lowercase) in VNC Viewer...

Tribunal Administrativo e Fiscal de Mirandela Referências Menu de...

looking for continuous Screen Capture for retroactivly reproducing errors, timeback machineRolling desktop...