Strange dependency chain mpd - wayland/mesa

Recently I've made a fresh install of Arch intended to be used as headless server.
Installing mpd (only the server) pacman requires:
Objectius (53): audiofile-0.3.6-1 avahi-0.6.31-6 damageproto-1.2.1-2
enca-1.14-1 faad2-2.7-3 ffmpeg-1:1.1.3-1 fixesproto-5.0-2
fontconfig-2.10.2-1 freetype2-2.4.11-2 fribidi-0.19.5-1
gsm-1.0.13-7 jack-0.121.3-7 lame-3.99.5-1 libao-1.1.0-3
libass-0.10.1-1 libbluray-0.2.3-1 libdaemon-0.14-2
libdrm-2.4.42-1 libid3tag-0.15.1b-7 libjpeg-turbo-1.2.1-1
libmad-0.15.1b-6 libmms-0.6.2-1 libmodplug-0.8.8.4-1
libpciaccess-0.13.1-1 libshout-1:2.3.1-1 libtheora-1.1.1-2
libva-1.1.0-2 libvdpau-0.6-1 libvpx-1.1.0-1
libxdamage-1.1.4-1 libxfixes-5.0-2 libxml2-2.8.0-1
libxrender-0.9.7-1 libxxf86vm-1.1.2-1 mesa-9.1.1-1
mesa-libgl-9.1.1-1 opencore-amr-0.1.3-1 openjpeg-1.5.0-1
opus-1.0.2-1 recode-3.6-7 renderproto-0.11.1-2
rtmpdump-20121203-1 schroedinger-1.0.11-1 sdl-1.2.15-3
sqlite-3.7.16-1 v4l-utils-0.9.3-2 wavpack-4.60.1-2
wayland-1.0.6-1 x264-20130206-1 xf86vidmodeproto-2.3.1-2
xvidcore-1.3.2-1 yajl-2.0.4-1 mpd-0.17.3-3
It seems to me a non logical chain of dependencies for a daemon. It's only my impression?

mpd depends on ffmpeg -> libva -> libegl / libgl ( = mesa ) -> wayland.
The wayland package contains the wayland client libraries just like libx11, libxxf86vm, and libxdamage contain bindings for x-server code. If you compare that, wayland brings less overhead. libva requires bindings to graphics libraries since it uses the video hardware for acceleration. ffmpeg has many dependencies you don't need since it is a versatile audio and video library and tool collection.

Similar Messages

  • How to Investigate and Fix Dependency Chains

    I have a package that is currently running but is displaying the following warning message:
    Warning: 0x80049305 at Data Flow Task, SSIS.Pipeline: The package contains data flow components with multiple inputs. Run-time dependencies that exist among these components may increase memory usage and reduce performance. Consider removing the dependency
    chain for the following component IDs and output IDs: 1790(1851) 667(671) 1890(1915) 680(752) , to improve performance.
    How do I go about investigating and removing the dependency chain for the listed component and output IDs? I can't seem to locate them.
    Thanks!

    the phrase "data flow components with multiple inputs" is the key
    I imagine you have such a case where you feed multiple inputs.
    If you show us a picture of the package somebody would point you out to it.
    Arthur My Blog

  • Strange Permission Issue -- MPD / Espeak

    I have been loading mpd for a a long time to use mpd base music players ( ie ncmpcpp , ario ) and for some reason yesterday my user is not allow to load mpd. It works find under root.
    I checked the mpd.conf file and the group is commented out. I tried un commenting and making sure I was in that group but no dice there.
    fatal_error: Failed to set supplementary groups of user "XXX": Operation not permitted
    The other strange thing is espeak has a similiar issue where it only works if launched by root.
    Any thoughts ?

    https://bbs.archlinux.org/viewtopic.php?id=172229
    This post helped me with the mpd issue. Just comment out your user name in your mpd.conf file.
    Still no progress on espeak

  • Nautilus - gvfs - bluez dependency chain.

    So I just noticed bluez needed updated today and was thinking that I don't have any use for bluetooth anything so I attempted to remove bluez.   It turns out bluez is a dependency of gvfs which I've never heard of.  So i did a little research into gvfs and saw that it's a dependency of Nautilus.  So basically if I want to use Nautilus as my file manager I have to have bluetooth support.  That just seems wrong for some reason.  So maybe the problem is that I don't quite understand what exactly gvfs does (despite some googling around), but I was hoping maybe someone could shed a little more light into this?

    Any progress on these bluez problems?

  • Strange MPD problems (conky/dzen?)

    I'm having a strange problem with MPD ever since I started messing around with xmonad/dzen2/conky-cli. I seem to lose control of mpd, but my music continue's to play... Sometimes it will randomly come back, but most of the time I'm left unable to control it, the only way of stopping it being a kill. here are the errors I'm getting (from a conky-cli config):
    ^fg(white) | ^fg(white)Wednesday 26 Aug 2009 07:51:39 PM
    Conky: MPD error: problems getting a response from "localhost" on port 6600 : Operation now in progress
    Conky: MPD error: problems getting a response from "localhost" on port 6600 : Operation now in progress
    ^fg(white) | ^fg(white)Wednesday 26 Aug 2009 07:51:40 PM
    Conky: MPD error: problems getting a response from "localhost" on port 6600 : Operation now in progress
    ^fg(white) | ^fg(white)Wednesday 26 Aug 2009 07:51:41 PM
    Conky: MPD error: problems getting a response from "localhost" on port 6600 : Operation now in progress
    ^fg(white) | ^fg(white)Wednesday 26 Aug 2009 07:51:42 PM
    Conky: MPD error: problems getting a response from "localhost" on port 6600 : Operation now in progress
    ^fg(white) | ^fg(white)Wednesday 26 Aug 2009 07:51:43 PM
    Conky: MPD error: problems getting a response from "localhost" on port 6600 : Operation now in progress
    ^fg(white) | ^fg(white)Wednesday 26 Aug 2009 07:51:44 PM
    Conky: MPD error: problems getting a response from "localhost" on port 6600 : Operation now in progress
    ^fg(white) | ^fg(white)Wednesday 26 Aug 2009 07:51:45 PM
    Conky: MPD error: problems getting a response from "localhost" on port 6600 : Operation now in progress
    I never had this problem until I started messing with all this new stuff.... I'll check mpd in a different environment and see what happens... in the mean time, here is my relevant mpd.conf, although nothing has changed since when it was working:
    music_directory "/mnt/storage/Music"
    playlist_directory "/home/heleos/.mpd/playlists/"
    db_file "/home/heleos/.mpd/mpd.db"
    log_file "/home/heleos/.mpd/mpd.log"
    error_file "/home/heleos/.mpd/mpd.error"
    pid_file "/home/heleos/.mpd/mpd.pid"
    state_file "/home/heleos/.mpd/mpdstate"
    user "heleos"
    port "6600"
    audio_output {
    type "oss"
    name "My OSS Device"
    # device "/dev/dsp" # optional
    # format "44100:16:2" # optional

    CoolWhip, better open a thread on your own and refer back to this one. You will be more in control besides being more actual.
    (You can even mark your thread as [SOLVED] if you get this far. )
    Closing this one.

  • How to create event based process chains

    Hi All,
    I would like to know about event based process chains. In connection to this, could you please answer the following queries,
    1. How to create events
    2. How to link created event to the process chain in the same BI or BW system and as well as from  
        externel BI system.
    3. How link one process chain with other process chain (i.e, After completion of one process chain, it
        should trigger other dependent process chain)
    Thanks and Regards,
    Kotesh.

    1). Doubt regarding first question.
    For example, i would like to create time based event (it should be trigger daily at specified time),
    where we have to maintain scheduling options while creating event.
    When i checked SM62 there i found only two options a). Event name and b). Description.
    Could please send any doucument link if you have.
    Ans : You can use function modules like "BP_EVENT_RAISE" in a program and schedule the program to trigger.
    2). For externel BIW system also same procedure we need to follow or any difference.
    Ans : Externally you need to trigger the same event.
    3). i found dependent process chain also had scheduling options as direct scheduling insted of start using meta chain or API. As you said dependent process chain should be mata chain. it seems dependent process chain may be Meta chain or Direct scheduilg.
    Ans : Its your choice how you want to schedule it.You can either make that dependent chain a metachain or schedule it separately.
    I found at the end of first process chain they kept one process like Raise event and second process chain connected with the help of raise event process event name. If you have any idea about this process could explain a bit more.
    Ans : May be they are raising the event in the main chain and triggering the dependent chain using this event.
    But Metachain is preferred for such thing.Though it does similar thing.
    Hope this helps.

  • Eveny Based issue in Process Chain.

    Dear Bw Experts,
    In our Project we need to trigger the process chian based on Event. The parent chian is located at one server and dependent chain is located at another server.
    I created event and added to the parent process chain at end  and trying to give the same event in dependent process chian start variant . But it's giving an error message as this event does not exist.
    Please let me know how we could achieve this task. I want to trigger dependent process chian automatically after the completion of parent proceess chain.
    Thanks for your help.
    Regards,
    Nag

    Hi Nagarjuna,
    The event needs to be created in the target system i.e. server where the dependent chain is located.
    It can then be used in the start variant of that dependent chain.
    The parent chain in the source system should have the ABAP program at the end which would raise this event in target system. The ABAP program should have the FM 'BP_RAISE_EVENT' which will raise the event in target system using the parameters defined in the variant (event, target system etc).
    Hope this helps.
    Regards.
    Nikhil

  • Program to activate the process chain in 3.5 version

    HI Experts,
    Like we are activatie jng the transfer strcturers_TRANSTRUC_ACTIVATE_ALL.
    I am having some problems ...I need the program to activate the process chain by using program in 3.5
    Could any respond on this ASAP.
    Thanks
    KK

    Hi,
    RSPC_CHAIN_EXECUTE_REMOTE  program runs the Process chain automatically.
    If  we want to change the status of the dependant chains and to run automatically we can execute RSPC_PROCESS_FINISH but we need to give the parameters like Variant name,logid,process type,Instance name .
    Thank you....,

  • Application Chaining - Reducing Complex Environments

    I'm converting a very large application snapshot environment to an MSI
    base for future versions of Zen. In the process we are making a lot of
    use of MSI scripts with chaining. A common example are MSI packages
    already packaged with InstallShield and that require a specific version
    of InstallShield. Currently every application is chained to the version
    of InstallShield needed (7,8,9,10,10.5, or 11). This works great expect
    there isn't a test to see if that InstallShield application object even
    needs to run. This is best illustrated with an example.
    If I install GroupWise 7.01 I need InstallShield 10.5 installed so I
    simply chain it to the GroupWise object and InstallShield 10.5 is now
    available on that machine. If I install say Adobe C3 (fake example)
    that requires InstallShield 10.5 next I can't assume the machine will
    have 10.5 therefore I chain it. NAL will run the 10.5 application
    object in the chain again when it does need to since it was installed
    previously.
    Is there a better way to manage this process so that I don't have "base"
    packages being re-installed all of the time or even processed (I'm
    assuming the InstallShield MSIs will check for Not Installed) if they
    are already available? I want to allow the client to dynamically grab
    the InstallShield it needs if it's not installed but not force it on
    every computer wasting time and network bandwidth. I am already
    prepared in this case to force install all versions of InstallShield to
    all machines but we avoid this in our environment of 30K plus machines.
    Thanks in advance for you advice,
    Aaron

    On Tue, 24 Oct 2006 16:05:11 GMT, Aaron White wrote:
    > In all cases we currently use Application Dependency (chaining).
    nal should notice that the installshield 10.5 nalapp was already installed
    and not install it again for a second time.. you might see some progress
    bars but it should not really install it..
    Marcus Breiden
    If you are asked to email me information please change -- to - in my e-mail
    address.
    The content of this mail is my private and personal opinion.
    http://www.edu-magic.net

  • Event Based Process Chain

    HI
    Process chain is not started and itu2019s showing start condition as after eventu2026
    Can you please give some inputs how to check when the event is start and what the procedure to find the dependent chains
    Thanks in Advance.
    Thanks
    Sreenu

    HI Mrityunjay,
    Thaks for the reply
    I want to know which process chain/ Job trigger the event???
    So that I wll check the PC/Job is progress or completed.
    thanks
    sreenu

  • Export wizard creates views in alphabetical versus dependency order

    Oracle SQL Developer 3.1.07 on Windows 7 SP1 64-bit
    Oracle Database Oracle EE 11gR1 64-bit on OEL 5.4 64-bit
    ====================================
    Export tool (Tools-> Database Export) generates DDL for views in alphabetical order instead of dependency order, hence running generated .sql file fails to create views.
    Tool does seem to generate DDL in correct order for objects in general (i.e., tables before constraints).
    Is there something I am missing in the tool that will ensure the DDL for views is generated in the correct order?
    Thank you.

    >
    Export tool (Tools-> Database Export) generates DDL for views in alphabetical order instead of dependency order, hence running generated .sql file fails to create views.
    Tool does seem to generate DDL in correct order for objects in general (i.e., tables before constraints).
    Is there something I am missing in the tool that will ensure the DDL for views is generated in the correct order?
    >
    No - you aren't missing anything.
    Views can be dependent on tables, other views, procedures, functions, packages, synonyms. Each of those can have its own dependencies which will now include object types, database links and others. The dependency chain looks like a tree.
    In general it isn't always possible to generate everything in 'dependency' order since objects can be dependent on many other objects of different types and you can have situations where there are circular references.

  • Stopping local chain from the meta chain

    Hi ,
    Can any one let me know is there any option to stop a local chain from the meta chain....
    I have a meta chain in which 13 local chains are there.
    In those 13 chains i want to stop one particular chain ,but i dont want to delete that local chain from the meta chain.
    and below this local chain another dependent chain is also there.
    which will start execute after that chain(which i want to delete)irrespective of the status whether the above chain is pass or fail.
    can any one help me in this regards
    Thanks in advance.

    No, you cannot .  The best solution I have is to change the local chain to bypass all activity in the local chain.  This way the meta chain will run but nothing will happen within the local chain and the meta chain will continue to the next local chain.
    Hope this helps.
    PS-  Another idea, change the meta chain and replace the local chain with an ABAP program which will execute the local chain (use FM RSPC_CHAIN_START).  Then you can change the ABAP program to decide whether or not to execute the local chain.
    Edited by: Geo on Apr 2, 2009 10:11 AM
    Actually, you might be able to do something creative using "Decision Between Multiple Alternatives".
    Edited by: Geo on Apr 2, 2009 10:16 AM

  • Need to skip the data load for one of the sub chain.

    Hi All,
    In our project, we have one meta chain and have many sub chains inside that. Today we don't want to run one of the sub chain. As we are in BW7.0, Skip options are not available. Can you please help how to stop the data load for the particular sub-chain.Please suggest.
    Thanks.

    Hi Jalina,
    If this is a frequent request then you can create a custom ABAP Program and then use the below simple logic to skip/run the meta chain, but you will also have to change the link between the sub chains as "Always" instead of "Successful" so that no matter if the dependent chain is successful OR not the nex chain will proceed. If you are comfortable with event then you can also use event to achieve this
    Program Logic- Create a new table where you maintain meaningful values (indicator/description) in it and the program should read the data from the table, Based on the values in the table the program will be successful/fail
    Thanks
    Abhishek Shanbhogue

  • Classpath Strangeness

    Greetings, was responsible for running a lab at my uni today on JUnit, and noticed something odd. It was easily fixable, but I'd like to know...why it needed to be fixed.
    Basically: Since we don't have root on the machines, we cannot install the junit.jar into the system classpath... no problem, we just run the files with a local classpath....
    (using the sourceforge testInfected example... http://junit.sourceforge.net/doc/testinfected/testing.htm )
    "javac -cp ./junit.jar MoneyTest.java"
    To run it, I would think that one could now "java -cp ./junit.jar junit.textui.TestRunner MoneyTest"
    however it turns out that one needs to in fact specify: "java -cp ./junit.jar:./ junit.textui.TestRunner MoneyTest" (note extra ./ in the ClassPath)
    It seems that javac looks in the current directory for the classpath implicitly when explicitly stated, but java does not. Can anybody please confirm or deny this, reference supporting documentation, and/or explain why this is? The irregular behavior is slightly perplexing.
    Currently Running:
    java -versionjava version "1.4.1_05"
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1_05-b01)
    Java HotSpot(TM) Client VM (build 1.4.1_05-b01, mixed mode)
    Thanks,
    -Jason-

    This just leaves me more confused :( Perhaps I'm being thickheaded late in the afternoon...
    Second the Sun javac app is just a thin wrapper that
    calls a java application. So anything java does the
    javac compiler is going to do as well.>
    Third by default the class path is defined as the
    current directory. However when you explicitly
    provide a classpath then that default is no longer in
    effect.Then why is javac knows to look in the current directory for the dependency chain at compilation but java does not? You indicate that explicitly providing a classpath overrides the default...which makes sense, but then...javac still obviously knows to look in my current directory for its dependencies without me telling it to.
    Jverd's hypothesis about the output directory seems to make the most sense...if javac implicitly hunts through the output directory for .classes to read, because javac reports errors when the files are compiled one at a time, but works fine in batch...seeming to imply that it needs to be aware of classes in the output.
    E.g.: "javac -classpath ./junit.jar *.java" compiles...
    "javac -classpath ./junit.jar MoneyBag.java" does not (lots of Cannot Resolve Symbol errors)
    "javac -classpath ./junit.jar:./ MoneyBag.java" compiles just fine.
    Again, seems to indicate that javac got all those filehandles and realized they were all in the scope of each other.
    Finally presumally this is being run on a unix system.
    On unix systems relative file names are based on the
    path (or something like that.) If you don't have the
    current directory specified then you must explicitly
    specify it or the file will not be found. Specifying
    the current file directory makes it an absolute path
    and so unix can find it. And this, and only this, is
    why the one case works and the other does not.More confusion... I'm not sure if you're referring to the implicit shell PATH variable (yes, this is being ran on a linux kernel'd system), but all any type of path is...is a search order to look for things the system can't find. But again, why is it this absolute path works one way, but not the other? Is the java loader not actually taking a filehandle to a class file, but instead invoking some sort of runtime reflection to search for it based on the name?

  • Trying to build mesa-7.7 RC2 fails

    I can't build mesa-7.7 RC2 (for intel card only)
    It fails at libgl part with this error"
    mklib: Making Linux shared library: swrast_dri.so
    /bin/install -c -d /home/dheart/mesa-7.7/pkg/libgl/usr/lib/xorg/modules/dri
    /bin/sh ../../../../../bin/minstall -m 755 swrast_dri.so /home/dheart/mesa-7.7/pkg/libgl/usr/lib/xorg/modules/dri
    make: Leaving directory `/home/dheart/mesa-7.7/src/Mesa-7.7-rc2/src/mesa/drivers/dri/swrast'
    install: не могат да се получат атрибутите на „libdricore.so": Няма такъв файл или директория
    ==> ERROR: Packaging Failed.
    Aborting...
    I'm using the SVN pkgbuild with several modification (stripped some build options):
    # $Id: PKGBUILD 56439 2009-10-21 21:05:32Z andyrtr $
    # Maintainer: Jan de Groot <[email protected]>
    pkgbase="mesa"
    pkgname=('mesa' 'libgl' 'intel-dri')
    pkgver=7.7
    pkgrel=1
    arch=(i686 x86_64)
    makedepends=('glproto>=1.4.10' 'pkgconfig' 'libdrm>=2.4.15' 'libxxf86vm>=1.1.0' 'libxdamage>=1.1.2' 'expat>=2.0.1' 'libx11>=1.3.1' 'libxt>=1.0.7' 'gcc-libs>=4.4.2' 'dri2proto=2.1')
    url="http://mesa3d.sourceforge.net"
    license=('custom')
    #options=(!makeflags)
    source=(MesaLib-7.7-rc2.tar.gz
    MesaDemos-7.7-rc2.tar.bz2
    ftp://ftp.archlinux.org/other/mesa/gl-manpages-1.0.1.tar.bz2
    LICENSE)
    md5sums=('d2aa216524346304c5277d00347e94a3'
    '7d24f141f0396177103b9b7cadc98c19'
    '6ae05158e678f4594343f32c2ca50515'
    '5c65a0fe315dd347e09b1f2826a1df5a')
    build() {
    cd "${srcdir}/Mesa-7.7-rc2"
    ./configure --prefix=/usr \
    --with-dri-driverdir=/usr/lib/xorg/modules/dri \
    --with-dri-drivers=i810,i915,i965 \
    --disable-gallium-nouveau \
    --disable-gallium-intel \
    --with-state-trackers=dri,egl \
    --enable-glx-tls \
    --with-driver=dri \
    --enable-xcb \
    --disable-glut || return 1
    # --with-state-trackers=yes \ # gentoo: glx,dri,egl
    # --disable-gallium build gallium [default=enabled]
    # --disable-gallium-intel build gallium intel [default=enabled]
    # --enable-gallium-radeon build gallium radeon [default=disabled]
    # --enable-gallium-nouveau build gallium nouveau [default=disabled]
    #ls src/Mesa-7.6/src/mesa/drivers/dri/
    #common dri.pc.in fb ffb gamma glcore i810 i915 i965 intel mach64 mga r128 r200 r300 r600 radeon s3v savage sis swrast tdfx trident unichrome
    #ls src/Mesa-7.6/src/gallium/drivers/
    #cell failover i915simple i965simple identity llvmpipe nouveau nv04 nv10 nv20 nv30 nv40 nv50 r300 softpipe trace
    make || return 1
    cd "${srcdir}/gl-manpages-1.0.1"
    ./configure --prefix=/usr || return 1
    make || return 1
    package_libgl() {
    depends=('libdrm>=2.4.15' 'libxxf86vm>=1.1.0' 'libxdamage>=1.1.2' 'expat>=2.0.1')
    pkgdesc="Mesa 3-D graphics library and DRI software rasterizer"
    cd "${srcdir}/Mesa-7.7-rc2" || return 1
    install -m755 -d "${pkgdir}/usr/lib" || return 1
    install -m755 -d "${pkgdir}/usr/lib/xorg/modules/extensions"
    bin/minstall lib/libGL.so* "${pkgdir}/usr/lib/" || return 1
    cd src/mesa/drivers/dri
    make -C swrast DESTDIR="${pkgdir}" install || return 1
    install -m755 libdricore.so "${pkgdir}/usr/lib/xorg/modules/dri/" || return 1
    ln -s libglx.xorg "${pkgdir}/usr/lib/xorg/modules/extensions/libglx.so" || return 1
    install -m755 -d "${pkgdir}/usr/share/licenses/libgl"
    install -m755 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/libgl/" || return 1
    package_mesa() {
    depends=('libgl' 'libx11>=1.3' 'libxt>=1.0.7' 'gcc-libs>=4.4.1' 'dri2proto=2.1' 'libdrm>=2.4.15')
    pkgdesc="Mesa 3-D graphics libraries and include files"
    cd "${srcdir}/Mesa-7.7-rc2" || return 1
    make DESTDIR="${pkgdir}" install || return 1
    install -m755 -d "${pkgdir}/usr/bin"
    install -m755 progs/xdemos/glx{gears,info} "${pkgdir}/usr/bin/" || return 1
    rm -f "${pkgdir}/usr/lib/libGL.so"*
    rm -rf "${pkgdir}/usr/lib/xorg"
    rm -f "${pkgdir}/usr/include/GL/glew.h"
    rm -f "${pkgdir}/usr/include/GL/glxew.h"
    rm -f "${pkgdir}/usr/include/GL/wglew.h"
    cd "${srcdir}/gl-manpages-1.0.1" || return 1
    make DESTDIR="${pkgdir}" install || return 1
    install -m755 -d "${pkgdir}/usr/share/licenses/mesa"
    install -m755 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/mesa/" || return 1
    package_intel-dri() {
    depends=("libgl=${pkgver}")
    pkgdesc="Mesa DRI drivers for Intel"
    cd "${srcdir}/Mesa-7.7-rc2/src/mesa/drivers/dri" || return 1
    make -C i810 DESTDIR="${pkgdir}" install || return 1
    make -C i915 DESTDIR="${pkgdir}" install || return 1
    make -C i965 DESTDIR="${pkgdir}" install || return 1
    # cd "${srcdir}/Mesa-${pkgver}/src/gallium/winsys/drm/intel/egl"
    # cd "${srcdir}/Mesa-${pkgver}/src/gallium/winsys/drm/intel"
    # make DESTDIR="${pkgdir}" install || return 1
    (sorry for the ugly PKGBUILD)
    The libdricore.so file doesn't seem to be where it is expected by the old PKGBUILD so build fails. Any ideas?

    I suggest you translate the cyrillic; it looks like it could further clarify where the problem lies and I think an overwhelming majority on this forum is unable to decypher it .

Maybe you are looking for