-
4ZZ4
I did try regular pure data and it did work, but i would like to use plugdata, so the question still stands.
-
4ZZ4
Hey, I need help figuring out how to make all the inputs from plugdata (puredata fork) show up in my patchbay, it shows two, but i have 4 active input and output channels activated, but it just shows 2 in qpwgraph. I'm open to recommendation for another patchbay too.
-
4ZZ4
I have ffplay~ installed but is there a way to write any normal soundfile to an array? (I thought ffplay~ would just make it work, but no...).
-
4ZZ4
@Jona I tried installing it, but i got this error:
$ sudo make ++++ info: using Makefile.pdlibbuilder version 0.6.0 ls: cannot access '/m_pd.h': No such file or directory pd-lib-builder/Makefile.pdlibbuilder:802: Where is Pd API m_pd.h? Do 'make help' for info. ++++ info: making target all in lib ffmpeg ++++ info: making ffplay~.o in lib ffmpeg cc -DPD -I "" -DUNIX -fPIC -Wall -Winline -Wstrict-aliasing -Wshadow -Wno-unused-function -Wno-unused-parameter -Wno-unused-value -Wno-unused-variable -O3 -ffast-math -funroll-loops -fomit-frame-pointer -march=core2 -mfpmath=sse -msse -msse2 -msse3 -o ffplay~.o -c ffplay~.c In file included from ffplay~.c:1: ufloat.h:1:10: fatal error: m_pd.h: No such file or directory 1 | #include "m_pd.h" | ^~~~~~~~ compilation terminated. make: *** [pd-lib-builder/Makefile.pdlibbuilder:957: ffplay~.o] Error 1
EDIT: I did some research and it turns out I have to compile it in
/opt/purr-data/include/pd-l2ork/
, oops... -
4ZZ4
I tested readsf~ with a wav file and it worked, but mp3, m4a, flac, and all video files i tried didn't work. how do you make these work?
error:
dsp: /path/to/file.flac: unknown or bad header format
-
-
4ZZ4
Hey, I'm trying to get purr-data to work on my fresh Manjaro XFCE install, but it does not work. Any help is greatly appreciated!
$ yay purr-data 7 aur/purrdata-faust 0.18-1 (+0 0.00) Run Faust signal processors in Pd, Purr-Data version 6 aur/purrdata-pure 0.26-1 (+0 0.00) Loader plugin for the Pure programming language, Purr-Data version 5 aur/purrdata-lv2plugin-git 25.e00f302-1 (+0 0.00) LV2 plugin host for Pd, Purr-Data version 4 aur/purrdata-mdnsbrowser-git 8.88d2b0c-1 (+0 0.00) Zeroconf service advertising and discovery for Pd, Purr-Data version 3 aur/purrdata-touchosc-git 44.443c793-1 (+0 0.00) A TouchOSC MIDI bridge for Pd, Purr-Data version 2 aur/purr-data-git 2.12.0.r4366.6d94e10b-1 (+2 0.00) Jonathan Wilkes' nw.js variant of Pd-L2Ork (git version) 1 aur/purr-data 2.12.0.r4346.aeb24d89-1 (+6 0.03) (Out-of-date: 2021-06-17) Jonathan Wilkes' nw.js variant of Pd-L2Ork (git version) ==> Packages to install (eg: 1 2 3, 1-3 or ^4) ==> 2 :: There are 2 providers available for gconf: :: Repository AUR 1) gconf 2) gconf-gtk2 Enter a number (default=1): ==> :: Checking for conflicts... :: Checking for inner conflicts... [Aur:2] gconf-3.2.6+11+g07808097-10 purr-data-git-2.12.0.r4366.6d94e10b-1 2 gconf (Build Files Exist) 1 purr-data-git ==> Packages to cleanBuild? ==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4) ==> a :: Deleting (1/1): /home/olav/.cache/yay/gconf :: (1/2) Downloaded PKGBUILD: gconf :: (2/2) Downloaded PKGBUILD: purr-data-git 2 gconf (Build Files Exist) 1 purr-data-git (Build Files Exist) ==> Diffs to show? ==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4) ==> :: (1/2) Parsing SRCINFO: gconf :: (2/2) Parsing SRCINFO: purr-data-git ==> Making package: gconf 3.2.6+11+g07808097-10 (Wed 09 Feb 2022 10:23:23 PM CET) ==> Retrieving sources... -> Cloning gconf git repo... Cloning into bare repository '/home/olav/.cache/yay/gconf/gconf'... ==> Making package: purr-data-git 2.12.0.r4366.6d94e10b-1 (Wed 09 Feb 2022 10:23:23 PM CET) ==> Retrieving sources... -> Cloning purr-data-git git repo... Cloning into bare repository '/home/olav/.cache/yay/purr-data-git/purr-data-git'... remote: Enumerating objects: 21531, done. remote: Enumerating objects: 63399, done. remote: Counting objects: 100% (1852/1852), done. remote: Compressing objects: 100% (641/641), done. remote: Total 21531 (delta 0), reused 0 (delta 0), pack-reused 21531 Receiving objects: 100% (21531/21531), 10.88 MiB | 9.46 MiB/s, done. Resolving deltas: 100% (17681/17681), done.1 KiB | 704.00 KiB/s -> Found 01_xml-gettext-domain.patch388.01 KiB | 704.00 KiB/s -> Found gconf-reload.patch -> Found gconf-merge-schema -> Found gconfpkg -> Found gconf-install.hook -> Found gconf-remove.hook ==> Validating source files with sha256sums... gconf ... Skipped 01_xml-gettext-domain.patch ... Passed gconf-reload.patch ... Passed gconf-merge-schema ... Passed gconfpkg ... Passed gconf-install.hook ... Passed gconf-remove.hook ... Passed remote: Total 63399 (delta 1106), reused 1786 (delta 1052), pack-reused 61547 Receiving objects: 100% (63399/63399), 177.19 MiB | 5.71 MiB/s, done. Resolving deltas: 100% (33721/33721), done. -> Downloading nwjs-sdk-v0.24.4-linux-x64.tar.gz... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 86.7M 100 86.7M 0 0 3966k 0 0:00:22 0:00:22 --:--:-- 8404k ==> Validating source files with md5sums... purr-data-git ... Skipped ==> Validating source_x86_64 files with md5sums... nwjs-sdk-v0.24.4-linux-x64.tar.gz ... Passed ==> Making package: gconf 3.2.6+11+g07808097-10 (Wed 09 Feb 2022 10:24:19 PM CET) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Retrieving sources... -> Updating gconf git repo... Fetching origin -> Found 01_xml-gettext-domain.patch -> Found gconf-reload.patch -> Found gconf-merge-schema -> Found gconfpkg -> Found gconf-install.hook -> Found gconf-remove.hook ==> Validating source files with sha256sums... gconf ... Skipped 01_xml-gettext-domain.patch ... Passed gconf-reload.patch ... Passed gconf-merge-schema ... Passed gconfpkg ... Passed gconf-install.hook ... Passed gconf-remove.hook ... Passed ==> Removing existing $srcdir/ directory... ==> Extracting sources... -> Creating working copy of gconf git repo... Cloning into 'gconf'... done. Switched to a new branch 'makepkg' ==> Starting prepare()... /home/olav/.cache/yay/gconf/PKGBUILD: line 30: patch: command not found ==> ERROR: A failure occurred in prepare(). Aborting... -> error making: gconf
And
yay purr-data 7 aur/purrdata-faust 0.18-1 (+0 0.00) Run Faust signal processors in Pd, Purr-Data version 6 aur/purrdata-pure 0.26-1 (+0 0.00) Loader plugin for the Pure programming language, Purr-Data version 5 aur/purrdata-lv2plugin-git 25.e00f302-1 (+0 0.00) LV2 plugin host for Pd, Purr-Data version 4 aur/purrdata-mdnsbrowser-git 8.88d2b0c-1 (+0 0.00) Zeroconf service advertising and discovery for Pd, Purr-Data version 3 aur/purrdata-touchosc-git 44.443c793-1 (+0 0.00) A TouchOSC MIDI bridge for Pd, Purr-Data version 2 aur/purr-data-git 2.12.0.r4366.6d94e10b-1 (+2 0.00) Jonathan Wilkes' nw.js variant of Pd-L2Ork (git version) 1 aur/purr-data 2.12.0.r4346.aeb24d89-1 (+6 0.03) (Out-of-date: 2021-06-17) Jonathan Wilkes' nw.js variant of Pd-L2Ork (git version) ==> Packages to install (eg: 1 2 3, 1-3 or ^4) ==> 2 :: There are 2 providers available for gconf: :: Repository AUR 1) gconf 2) gconf-gtk2 Enter a number (default=1): ==> :: Checking for conflicts... :: Checking for inner conflicts... [Aur:2] gconf-3.2.6+11+g07808097-10 purr-data-git-2.12.0.r4366.6d94e10b-1 2 gconf (Build Files Exist) 1 purr-data-git ==> Packages to cleanBuild? ==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4) ==> a :: Deleting (1/1): /home/olav/.cache/yay/gconf :: (1/2) Downloaded PKGBUILD: gconf :: (2/2) Downloaded PKGBUILD: purr-data-git 2 gconf (Build Files Exist) 1 purr-data-git (Build Files Exist) ==> Diffs to show? ==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4) ==> :: (1/2) Parsing SRCINFO: gconf :: (2/2) Parsing SRCINFO: purr-data-git ==> Making package: gconf 3.2.6+11+g07808097-10 (Wed 09 Feb 2022 10:23:23 PM CET) ==> Retrieving sources... -> Cloning gconf git repo... Cloning into bare repository '/home/olav/.cache/yay/gconf/gconf'... ==> Making package: purr-data-git 2.12.0.r4366.6d94e10b-1 (Wed 09 Feb 2022 10:23:23 PM CET) ==> Retrieving sources... -> Cloning purr-data-git git repo... Cloning into bare repository '/home/olav/.cache/yay/purr-data-git/purr-data-git'... remote: Enumerating objects: 21531, done. remote: Enumerating objects: 63399, done. remote: Counting objects: 100% (1852/1852), done. remote: Compressing objects: 100% (641/641), done. remote: Total 21531 (delta 0), reused 0 (delta 0), pack-reused 21531 Receiving objects: 100% (21531/21531), 10.88 MiB | 9.46 MiB/s, done. Resolving deltas: 100% (17681/17681), done.1 KiB | 704.00 KiB/s -> Found 01_xml-gettext-domain.patch388.01 KiB | 704.00 KiB/s -> Found gconf-reload.patch -> Found gconf-merge-schema -> Found gconfpkg -> Found gconf-install.hook -> Found gconf-remove.hook ==> Validating source files with sha256sums... gconf ... Skipped 01_xml-gettext-domain.patch ... Passed gconf-reload.patch ... Passed gconf-merge-schema ... Passed gconfpkg ... Passed gconf-install.hook ... Passed gconf-remove.hook ... Passed remote: Total 63399 (delta 1106), reused 1786 (delta 1052), pack-reused 61547 Receiving objects: 100% (63399/63399), 177.19 MiB | 5.71 MiB/s, done. Resolving deltas: 100% (33721/33721), done. -> Downloading nwjs-sdk-v0.24.4-linux-x64.tar.gz... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 86.7M 100 86.7M 0 0 3966k 0 0:00:22 0:00:22 --:--:-- 8404k ==> Validating source files with md5sums... purr-data-git ... Skipped ==> Validating source_x86_64 files with md5sums... nwjs-sdk-v0.24.4-linux-x64.tar.gz ... Passed ==> Making package: gconf 3.2.6+11+g07808097-10 (Wed 09 Feb 2022 10:24:19 PM CET) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Retrieving sources... -> Updating gconf git repo... Fetching origin -> Found 01_xml-gettext-domain.patch -> Found gconf-reload.patch -> Found gconf-merge-schema -> Found gconfpkg -> Found gconf-install.hook -> Found gconf-remove.hook ==> Validating source files with sha256sums... gconf ... Skipped 01_xml-gettext-domain.patch ... Passed gconf-reload.patch ... Passed gconf-merge-schema ... Passed gconfpkg ... Passed gconf-install.hook ... Passed gconf-remove.hook ... Passed ==> Removing existing $srcdir/ directory... ==> Extracting sources... -> Creating working copy of gconf git repo... Cloning into 'gconf'... done. Switched to a new branch 'makepkg' ==> Starting prepare()... /home/olav/.cache/yay/gconf/PKGBUILD: line 30: patch: command not found ==> ERROR: A failure occurred in prepare(). Aborting... -> error making: gconf [olav@AMD-Computer ~]$ yay purr-data 7 aur/purrdata-faust 0.18-1 (+0 0.00) Run Faust signal processors in Pd, Purr-Data version 6 aur/purrdata-pure 0.26-1 (+0 0.00) Loader plugin for the Pure programming language, Purr-Data version 5 aur/purrdata-lv2plugin-git 25.e00f302-1 (+0 0.00) LV2 plugin host for Pd, Purr-Data version 4 aur/purrdata-mdnsbrowser-git 8.88d2b0c-1 (+0 0.00) Zeroconf service advertising and discovery for Pd, Purr-Data version 3 aur/purrdata-touchosc-git 44.443c793-1 (+0 0.00) A TouchOSC MIDI bridge for Pd, Purr-Data version 2 aur/purr-data-git 2.12.0.r4366.6d94e10b-1 (+2 0.00) Jonathan Wilkes' nw.js variant of Pd-L2Ork (git version) 1 aur/purr-data 2.12.0.r4346.aeb24d89-1 (+6 0.03) (Out-of-date: 2021-06-17) Jonathan Wilkes' nw.js variant of Pd-L2Ork (git version) ==> Packages to install (eg: 1 2 3, 1-3 or ^4) ==> 2 :: There are 2 providers available for gconf: :: Repository AUR 1) gconf 2) gconf-gtk2 Enter a number (default=1): ==> 2 :: Checking for conflicts... :: Checking for inner conflicts... [Aur:2] gconf-gtk2-3.2.6-5 purr-data-git-2.12.0.r4366.6d94e10b-1 2 gconf-gtk2 (Build Files Exist) 1 purr-data-git (Build Files Exist) ==> Packages to cleanBuild? ==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4) ==> a :: Deleting (1/2): /home/olav/.cache/yay/gconf-gtk2 :: Deleting (2/2): /home/olav/.cache/yay/purr-data-git :: (1/2) Downloaded PKGBUILD: purr-data-git :: (2/2) Downloaded PKGBUILD: gconf-gtk2 2 gconf-gtk2 (Build Files Exist) 1 purr-data-git (Build Files Exist) ==> Diffs to show? ==> [N]one [A]ll [Ab]ort [I]nstalled [No]tInstalled or (1 2 3, 1-3, ^4) ==> :: (1/2) Parsing SRCINFO: gconf-gtk2 :: (2/2) Parsing SRCINFO: purr-data-git ==> Making package: purr-data-git 2.12.0.r4366.6d94e10b-1 (Wed 09 Feb 2022 10:40:58 PM CET) ==> Retrieving sources... ==> Making package: gconf-gtk2 3.2.6-5 (Wed 09 Feb 2022 10:40:58 PM CET) ==> Retrieving sources... -> Cloning purr-data-git git repo... Cloning into bare repository '/home/olav/.cache/yay/purr-data-git/purr-data-git'... -> Downloading GConf-3.2.6.tar.xz... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 1523k 100 1523k 0 0 1610k 0 --:--:-- --:--:-- --:--:-- 1610k -> Found gconf-merge-schema -> Found gconfpkg -> Found gconf-reload.patch -> Found gconf-install.hook -> Found gconf-remove.hook -> Found 01_xml-gettext-domain.patch -> Found dbus-dontspew.patch -> Found gsettings-data-convert-fix-invalid-schema-path.patch ==> Validating source files with sha256sums... GConf-3.2.6.tar.xz ... Passed gconf-merge-schema ... Passed gconfpkg ... Passed gconf-reload.patch ... Passed gconf-install.hook ... Passed gconf-remove.hook ... Passed 01_xml-gettext-domain.patch ... Passed dbus-dontspew.patch ... Passed gsettings-data-convert-fix-invalid-schema-path.patch ... Passed remote: Enumerating objects: 63399, done. remote: Counting objects: 100% (1852/1852), done. remote: Compressing objects: 100% (641/641), done. remote: Total 63399 (delta 1106), reused 1786 (delta 1052), pack-reused 61547 Receiving objects: 100% (63399/63399), 177.19 MiB | 9.76 MiB/s, done. Resolving deltas: 100% (33721/33721), done. -> Downloading nwjs-sdk-v0.24.4-linux-x64.tar.gz... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 86.7M 100 86.7M 0 0 11.7M 0 0:00:07 0:00:07 --:--:-- 14.4M ==> Validating source files with md5sums... purr-data-git ... Skipped ==> Validating source_x86_64 files with md5sums... nwjs-sdk-v0.24.4-linux-x64.tar.gz ... Passed ==> Making package: gconf-gtk2 3.2.6-5 (Wed 09 Feb 2022 10:41:26 PM CET) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Retrieving sources... -> Found GConf-3.2.6.tar.xz -> Found gconf-merge-schema -> Found gconfpkg -> Found gconf-reload.patch -> Found gconf-install.hook -> Found gconf-remove.hook -> Found 01_xml-gettext-domain.patch -> Found dbus-dontspew.patch -> Found gsettings-data-convert-fix-invalid-schema-path.patch ==> Validating source files with sha256sums... GConf-3.2.6.tar.xz ... Passed gconf-merge-schema ... Passed gconfpkg ... Passed gconf-reload.patch ... Passed gconf-install.hook ... Passed gconf-remove.hook ... Passed 01_xml-gettext-domain.patch ... Passed dbus-dontspew.patch ... Passed gsettings-data-convert-fix-invalid-schema-path.patch ... Passed ==> Removing existing $srcdir/ directory... ==> Extracting sources... -> Extracting GConf-3.2.6.tar.xz with bsdtar ==> Starting prepare()... /home/olav/.cache/yay/gconf-gtk2/PKGBUILD: line 39: patch: command not found ==> ERROR: A failure occurred in prepare(). Aborting... -> error making: gconf-gtk2
-
4ZZ4
@bocanegra Thank you, i do hve librewolf (firefox) open, so i want that to work. i installed qjackctl and pulseaudio-jack on my artix (arch based) openrc system. it worked, purr data works, but librewolf audio clips and sounds like crap, i disconnected my usb headphones and reconnected them, but now librewolf outpts no audio, the same with purr data, except it shows up in the graph in qjackctl unlike librewolf which disappeared from there.
i restarted my system just now and jack won't start for some reason, but librewolf audio works fine.
error message in qjackctl:
13:31:47.206 JACK is starting... 13:31:47.208 /usr/bin/jackd -dalsa -dhw:0 -r48000 -p64 Cannot connect to server socket err = No such file or directory Cannot connect to server request channel jack server is not running or cannot be started JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock 13:31:47.226 JACK was started with PID=3085. Could not open component .so '/usr/lib/jack/jack_firewire.so': libffado.so.2: cannot open shared object file: No such file or directory Could not open component .so '/usr/lib/jack/jack_firewire.so': libffado.so.2: cannot open shared object file: No such file or directory jack_get_descriptor : dll jack_get_descriptor returns null for 'jack_firewire.so' Could not open component .so '/usr/lib/jack/jack_firewire.so': libffado.so.2: cannot open shared object file: No such file or directory jackdmp 1.9.19 Copyright 2001-2005 Paul Davis and others. Copyright 2004-2016 Grame. Copyright 2016-2021 Filipe Coelho. jackdmp comes with ABSOLUTELY NO WARRANTY This is free software, and you are welcome to redistribute it under certain conditions; see the file COPYING for details JACK server starting in realtime mode with priority 10 self-connect-mode is "Don't restrict self connect requests" Cannot lock down 107341340 byte memory area (Cannot allocate memory) audio_reservation_init Acquire audio card Audio0 creating alsa driver ... hw:0|hw:0|64|2|48000|0|0|nomon|swmeter|-|32bit ATTENTION: The playback device "hw:0" is already in use. Please stop the application using it and run JACK again Released audio card Audio0 audio_reservation_finish Cannot initialize driver JackServer::Open failed with -1 Failed to open server 13:31:47.348 JACK was stopped 13:31:49.270 Could not connect to JACK server as client. - Overall operation failed. - Unable to connect to server. Please check the messages window for more info. Cannot connect to server socket err = No such file or directory Cannot connect to server request channel jack server is not running or cannot be started JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
Any help?
-
4ZZ4
Hey, I'm back with pure data, now trying to get purr data to work on linux after using vanilla on windows, but i needed jack as a dependecy so i installed jack2, but i screwed it up somehow, i get no sound and i'm not familiar with jack or jack2.
i geterror snd_pcm_open (output): Device or resource busy
with ALSA, and
Cannot connect to server request channel jack server is not running or cannot be started JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, skipping unlock
with JACK
Any suggestions?
-
4ZZ4
@jyg i'd suggest installing another os for this like BSD or Linux, i had similar problems on windows 10, and i tried jack and ASIO4ALL, and had some success, but i was a pain to deal with, now i uninstalled windows and installed linux, and everything just works, unfa ||https://www.youtube.com/user/unfa00|| has some great videos on jack and sound production on linux.
-
4ZZ4
i have checked this page, but it didn't seem to tell me where i should put the plugin file, and what the file extension should be.
my os is arch linux. -
4ZZ4
@lomz obviously possible, but idk how, don't use mac or windows though.
-
4ZZ4
@whale-av you have great knowledge, but why would it calculate both? it seems like a stupid feature... it does not do anything. is it to keep the code "stupidly simple" (KISS)?
-
4ZZ4
@flight453 i have made an abstraction for this, feel free to use as you like. velocity-senitivity.pd just download it and call it in your patch.
when you call a patch (or any normal file) in pd through directory traversing in objects, there are some rules (idk if i know all, because i have just stumbled upon them randomly):
a: to call a patch in the same directory (folder) as your main patch, just type out the name, excluding the ".pd" at the end, so velocity-senitivity.pd becomes velocity-senitivity.
b: to call a patch inside a directory which is inside the same directory as your main patch, just type the directory name for the directory inside the shared directory, then a "/" and then the filename, again, excluding ".pd", so velocity-senitivity.pd inside the directory "abstractions" which shares the directory with your main patch, becomes abstractions/velocity-senitivity. you can go as many directories in as you like, so abstractions/midi&more/velocity-senitivity
c: if it is outside your directory type one "." for as many directories you have to go outside and then "./" (yes, that is a "." followed by a "/") and then your patch name, again, excluding ".pd".
d: you can type what rule "c" says and not entering the patch name, and then type what rule "b" says. here's an example of this in action .../abstractions/midi&more/velocity-senitivity, so the ".../" means that you shold go back 2 directories, and "abstractions/midi&more/" means that you should go inside the folder "abstractions", and then "midi&more", and "velocity-senitivity" is the the patch that you want to use.
e: just typing out the full directory, again excluding the ".pd"you'r welcome
-
4ZZ4
@ddw_music genius, i tested this on paper and it works 100%
-
-
4ZZ4
@flight453 do you know what? i was actually guessing that (after i replied).