Hy Yaroslav, I have a little problem. When I start the program and click on the Connect to open TIA project button, I get the following error message: FileLoadException: Could not load file or assembly Siemens.Engineering.Contract, Version=1501.0.2801.1, Culture=neutral, PublicKeyToken&37a18b206f7724a6 or one of its dependencies. Could not find or load a specific file.(Exception from HRESULT:0X80131621) What could be the problem? I'm using TIA v16. Thanks,
@@yaroslavlyulko2298 Hi, Thanks for the help, this error has been resolved. But another came out now. When I press the PLC Magic button, the following two error messages appear: 1; MessageError when calling method 'Import' of type 'Siemens.Engineering.SW.Blocks.PLCBlockComposition'. Cannot create the 'SW.Blocks.InstanceDB' object with Simatic ML ID '0' at line number 46 at line position 4. Error when calling method 'Create' of type 'Siemens.Engineering.SW.Blocks.PlcBlockComposition'. Block 'LC5_MOT_1200' does not exist at the object with UID ". 2; MessageError when calling method 'Import' of type 'Siemens.Engineering.SW.Blocks.PlcBlockComposition'. Cannot import multilingual text with culture 'uk-UA' at line number 83 at line position 12: the specified culture does not exist within the current project. How can I fix these errors? Don’t get mad that I ask so much I just really want to understand how the program works and for that the program needs to work flawlessly. Thanks!
Hi, how did you generate the XML files that the code references in the directories of xpXMLTemplates and xpXMLTemplates_S7_1x00? I'd like to repurpose this for other blocks.
Hi, this is edited XML file of "Call CMs", which I previously exported using Func ExportPlcBlock(). I cut out from exported XML file single network in which block (MOT or VLV or ANL...) is called.
Hello Do you have any idea how the circuit diagram is generated in EPLAN? The PLC code generation is based, for example, on an XML file they must be accessed, processed, then inserted in TIA Regarding circuit diagram generation, you can help me if you have an idea thanks :)
One question I wanted to make a universal code for code generation. I have a problem how to generate an IDB for every FBI. I create templates for static input and output and insert my target into InsatnzDB xml-file. The problem is : I could not access the Document/SW.Blocks.InsatnzDB/AttributeList/Interface/Sections to use the ImportNode command. Do you have an idea or an example that can help me with this. Thanks a lot
I suppose you have to define namespace. please see my code in lines 910-911-912 //add xmlns XmlNamespaceManager nsmgr = new XmlNamespaceManager(xmlNewFragmentDoc.NameTable); nsmgr.AddNamespace("SI", "www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v3");
@@yaroslavlyulko2298 i have already defined the namespace as you have done this is my code i have commented where is the error private void InstDB_Aufbau(string ObjType) { XmlDocument xml_InstDB = new XmlDocument(); try { switch (ObjType) { case "21Q1_FB_IDB": xml_InstDB.Load(xpXMLTemplates_S7_1x00 + "Inst_DB.xml"); break; } XmlNode source = xml_InstDB.SelectSingleNode("//SW.Blocks.InstanceDB").ParentNode; //add xmlns XmlNamespaceManager nsmgr = new XmlNamespaceManager(xml_InstDB.NameTable); nsmgr.AddNamespace("SI", "www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v3"); //Ich nehme aus der XML-Vorlage eine Struktur für ein IDB heraus. XmlDocument SingelInstDB = new XmlDocument(); SingelInstDB.Load(xpXMLTemplates + "Input_IDB.xml"); XmlNode Inst_DBNode = SingelInstDB.SelectSingleNode("Section"); XmlNode newInst_DBNode = xml_InstDB.ImportNode(Inst_DBNode.FirstChild, true); xml_InstDB.SelectSingleNode("SW.Blocks.InstanceDB/AttributeList/Interface/SI:Sections", nsmgr).PrependChild(newInst_DBNode); // here comes an error message that the object reference was not set to an object instance xml_InstDB.Save(xpXMLTemplates_S7_1x00 + "Inst_DB.xml"); } catch (FileNotFoundException e) { MessageBox.Show(e.Message); } }
I have tried with Document at the beginning and get the same error xml_InstDB.SelectSingleNode("Document/SW.Blocks.InstanceDB/AttributeList/Interface/SI:Sections", nsmgr).PrependChild(newInst_DBNode);
@@yaroslavlyulko2298 Sorry brother but provided link is not working Can you please share a workable link so that I can learn this Tia Openness project ? Thanks in advance 🙏🏻
@@yaroslavlyulko2298 Sorry if inconvenience but the link is no longer working even though it was 10 hours ago. Can you share the new link to your project please? Thank you so much
I had a problem with the DBs import. There is an error that block 'LC5_MOT_1200' does not exist at the object with UID Can you help me with that? one more question : can you create the instance DB for each function module like global DB ?
"There is an error that block 'LC5_MOT_1200' does not exist at the object with UID" - When did you get this error? Can you show some screenshots? "one more question : can you create the instance DB for each function module like global DB ?" - yes, but first you need to export the block of instance DB as XML, then use this XML as template for export. If I correctly understand you - please see how I create blocks for FAN1-FAN3.
Hi, Thank you for demonstrating the project Yaroslav, would you mind sharing the project for me? It would help a lot and the other links are dead I think. Thank you
Hi Yaroslav, Thank you for sharing your code. I have a problem with opening project. I installed Visual Studio 2015 update 3 and when I want to open project I get this info: Unsupported This version of Visual Studio is unable to open the following projects. The project types may not be installed or this version of Visual Studio may not support them. For more information on enabling these project types or otherwise migrating your assets, please see the details in the "Migration Report" displayed after clicking OK. - Setup, "...\Setup\Setup.vdproj"
@@yaroslavlyulko2298 I had the same problem in VS2019. Finally I installed extension Microsoft Visual Studio Installer Project and that help me. Here is a link to this tip (third from the top): stackoverflow.com/questions/26028746/visual-studio-vdproj-is-incompatible/27237527
Hello Yaroslav, I'm studying how Openness works. Is it possible to get a new link for downloading the source code? The last link doesn't work anymore. Thanks in advance.
222/5000 Hello Yaroslav Lyulko with a lot of studying and tasting I managed, without Russian and Ukrainian! Also for HMI it works! At 72, the brain is not so good. Thank you for the nice program.
Hello, You did really great in this project. I am working on the similar project and till the date I could able to provide connect and add hardware to TIA Portal from the application. And now i want to create a folder with some FBs DBs under the plc program block. So please could you guide me how can i start preparing it? And can have a short explanation behind the logic you have created to generate Program blocks ? Thanks in advance, Dhaval Pathak
good news. As I understood, you want to add description of networks, tags on DE and IT language. It is possible, I will modify files and send new version.
Hey man, thanks for the demo, unfortunally the file is already down again, could you upload to a different host like pixeldrain, zippyshare or even mirrorcreator? thank you very much :)
One question I wanted to make a universal code for code generation. I have a problem how to generate an IDB for every FBI. I create templates for static input and output and my objective insert into InsatnzDB xml-file. The problem is : I could not access the Document/SW.Blocks.InsatnzDB/AttributeList/Interface/Sections to use the ImportNode command. Do you have an idea or an example that can help me with this. Thanks
@@yaroslavlyulko2298 Hey, I have one problem with reference. Can you explain how can i fing the VBIDE réference ? What is it for ? If I delete it, will the app still work ? I can't find it in NutGet
Hy Yaroslav,
I have a little problem. When I start the program and click on the Connect to open TIA project button, I get the following error message: FileLoadException: Could not load file or assembly Siemens.Engineering.Contract, Version=1501.0.2801.1, Culture=neutral, PublicKeyToken&37a18b206f7724a6 or one of its dependencies. Could not find or load a specific file.(Exception from HRESULT:0X80131621)
What could be the problem? I'm using TIA v16.
Thanks,
Hi
did you add references for Siemens.Engineering.dll & Siemens.Engineering.Hmi.dll from TIA 16 ? ( step 4)
@@yaroslavlyulko2298 Hi,
Thanks for the help, this error has been resolved. But another came out now. When I press the PLC Magic button, the following two error messages appear:
1; MessageError when calling method 'Import' of type 'Siemens.Engineering.SW.Blocks.PLCBlockComposition'.
Cannot create the 'SW.Blocks.InstanceDB' object with Simatic ML ID '0' at line number 46 at line position 4.
Error when calling method 'Create' of type 'Siemens.Engineering.SW.Blocks.PlcBlockComposition'.
Block 'LC5_MOT_1200' does not exist at the object with UID ".
2; MessageError when calling method 'Import' of type 'Siemens.Engineering.SW.Blocks.PlcBlockComposition'.
Cannot import multilingual text with culture 'uk-UA' at line number 83 at line position 12: the specified culture does not exist within the current project.
How can I fix these errors?
Don’t get mad that I ask so much I just really want to understand how the program works and for that the program needs to work flawlessly.
Thanks!
Hi, how did you generate the XML files that the code references in the directories of xpXMLTemplates and xpXMLTemplates_S7_1x00? I'd like to repurpose this for other blocks.
Hi, this is edited XML file of "Call CMs", which I previously exported using Func ExportPlcBlock(). I cut out from exported XML file single network in which block (MOT or VLV or ANL...) is called.
Hello
Do you have any idea how the circuit diagram is generated in EPLAN?
The PLC code generation is based, for example, on an XML file
they must be accessed, processed, then inserted in TIA
Regarding circuit diagram generation, you can help me if you have an idea
thanks :)
Hey! Could you share the program? The last link doesn't work
fex.net/ru/s/zme4rv1
Hi, this is amazing. Could you share the program? Last link doesn’t working.
fex.net/ru/s/as2xvto
@@yaroslavlyulko2298 Thanks you so much
One question
I wanted to make a universal code for code generation.
I have a problem how to generate an IDB for every FBI.
I create templates for static input and output and insert my target into InsatnzDB xml-file.
The problem is : I could not access the Document/SW.Blocks.InsatnzDB/AttributeList/Interface/Sections to use the ImportNode command.
Do you have an idea or an example that can help me with this.
Thanks a lot
I suppose you have to define namespace.
please see my code in lines 910-911-912
//add xmlns
XmlNamespaceManager nsmgr = new XmlNamespaceManager(xmlNewFragmentDoc.NameTable);
nsmgr.AddNamespace("SI", "www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v3");
@@yaroslavlyulko2298
i have already defined the namespace as you have done this is my code i have commented where is the error
private void InstDB_Aufbau(string ObjType)
{
XmlDocument xml_InstDB = new XmlDocument();
try
{
switch (ObjType)
{
case "21Q1_FB_IDB":
xml_InstDB.Load(xpXMLTemplates_S7_1x00 + "Inst_DB.xml");
break;
}
XmlNode source = xml_InstDB.SelectSingleNode("//SW.Blocks.InstanceDB").ParentNode;
//add xmlns
XmlNamespaceManager nsmgr = new XmlNamespaceManager(xml_InstDB.NameTable);
nsmgr.AddNamespace("SI", "www.siemens.com/automation/Openness/SW/NetworkSource/FlgNet/v3");
//Ich nehme aus der XML-Vorlage eine Struktur für ein IDB heraus.
XmlDocument SingelInstDB = new XmlDocument();
SingelInstDB.Load(xpXMLTemplates + "Input_IDB.xml");
XmlNode Inst_DBNode = SingelInstDB.SelectSingleNode("Section");
XmlNode newInst_DBNode = xml_InstDB.ImportNode(Inst_DBNode.FirstChild, true);
xml_InstDB.SelectSingleNode("SW.Blocks.InstanceDB/AttributeList/Interface/SI:Sections", nsmgr).PrependChild(newInst_DBNode);
// here comes an error message that the object reference was not set to an object instance
xml_InstDB.Save(xpXMLTemplates_S7_1x00 + "Inst_DB.xml");
}
catch (FileNotFoundException e)
{
MessageBox.Show(e.Message);
}
}
I have tried with Document at the beginning and get the same error
xml_InstDB.SelectSingleNode("Document/SW.Blocks.InstanceDB/AttributeList/Interface/SI:Sections", nsmgr).PrependChild(newInst_DBNode);
@@ghassenbenticha8621 try ns - www.siemens.com/automation/Openness/SW/Interface/v3
@@yaroslavlyulko2298 I wasn't paying attention, thank you.
And here I am asking for the code file because all the other links are down, could you please send the new one? Thanks
fex.net/uk/s/x2rox6m
Hi Federico can you plz share me a new link if you still have the code?
! would like to create a folder with some FBs DBs under the plc program. Is it possible to share your source code in a new link, please?
fex.net/ru/s/nbkmp9c
@@yaroslavlyulko2298 Thanks for the project. I was very helpful.
@@yaroslavlyulko2298 Sorry brother but provided link is not working
Can you please share a workable link so that I can learn this Tia Openness project ?
Thanks in advance 🙏🏻
@@Santoshkarad29 fex.net/ru/s/ytfmasa
@@yaroslavlyulko2298 Sorry if inconvenience but the link is no longer working even though it was 10 hours ago. Can you share the new link to your project please? Thank you so much
I had a problem with the DBs import.
There is an error that block 'LC5_MOT_1200' does not exist at the object with UID
Can you help me with that?
one more question : can you create the instance DB for each function module like global DB ?
"There is an error that block 'LC5_MOT_1200' does not exist at the object with UID"
- When did you get this error? Can you show some screenshots?
"one more question : can you create the instance DB for each function module like global DB ?" - yes, but first you need to export the block of instance DB as XML, then use this XML as template for export. If I correctly understand you - please see how I create blocks for FAN1-FAN3.
@@yaroslavlyulko2298
I have discovered the error
Thank you for explaining. Your code helped me a lot. ^_^
Hello could you send a link for the code please :) its not working anymore. Thanks in advance
Awesome project , it's still possible to have the link for the project source code?
fex.net/s/a3b1zrf
Amazing project , it's still possible to have the link for the project?
fex.net/ru/s/tx5yex9
Hi, Yaroslav
The links to source code don't work. Please can I ask for new one?
fex.net/s/
xxcbcya
ua-cam.com/video/i9c-79q1Mvs/v-deo.html&lc=Ugy1rb5HnFkdYTB4W2V4AaABAg&feature=em-comments
@@yaroslavlyulko2298 Thank you very much :)
hello Yaroslav sorry DB blocks are not created ?
Hi, Thank you for demonstrating the project Yaroslav, would you mind sharing the project for me? It would help a lot and the other links are dead I think. Thank you
fex.net/s/
foosxc8
Hello Can you please share source code with me share with you by Yaroslav? Thanks
Приветствую! А нет ли информации, когда уже Openness станет работать с WinCC Professional?
Добрый день! Не могли бы вы, пожалуйста, поделиться ссылкой на проект? Старая ссылка больше не работает.
fex.net/ru/s/kxzlay3
@@yaroslavlyulko2298 Спасибо!
Hi Yaroslav, Thank you for sharing your code. I have a problem with opening project. I installed Visual Studio 2015 update 3 and when I want to open project I get this info:
Unsupported
This version of Visual Studio is unable to open the following projects. The project types may not be installed or this version of Visual Studio may not support them.
For more information on enabling these project types or otherwise migrating your assets, please see the details in the "Migration Report" displayed after clicking OK.
- Setup, "...\Setup\Setup.vdproj"
Hi Krzysztof, strange behaviour, try to use Visual Studio 2019. What does the "Migration Report" show?
@@yaroslavlyulko2298 I had the same problem in VS2019. Finally I installed extension Microsoft Visual Studio Installer Project and that help me. Here is a link to this tip (third from the top): stackoverflow.com/questions/26028746/visual-studio-vdproj-is-incompatible/27237527
Hello Yaroslav,
I'm studying how Openness works.
Is it possible to get a new link for downloading the source code? The last link doesn't work anymore.
Thanks in advance.
fex.net/uk/s/
rx3cez0
Hello Yaroslav, is it possible to get a new link for downloading the source code?
please try - fex.net/s/8tyfcso
Hello Yaroslav, cool application. Would it be possible to share the source code again please?
fex.net/s/dmepb8n
Would like to tinker aroundnwith this tool, do you have a working link for the Openness tool with excel? Thanks in advance
fex.net/uk/s/
xzorf7o
222/5000
Hello Yaroslav Lyulko
with a lot of studying and tasting I managed, without Russian and Ukrainian!
Also for HMI it works!
At 72, the brain is not so good.
Thank you for the nice program.
Hello you did great job. Can I please get the source code of it? I am interested in learning TIA Openness.
we.tl/t-vQDMsZMxrg
Nice work! Could you share the source code again? Link expired
fex.net/s/yn9xry8
Дайте пожалуйста ссылку на Tia openness v15.1. На сайт сименс не давать. Там полная шляпа.
Hello Yaroslav, the link expired again can you send it again? Many thanks.
fex.net/s/
zn9zfyp
It’s possible that you share your code?
Hello,
You did really great in this project. I am working on the similar project and till the date I could able to provide connect and add hardware to TIA Portal from the application. And now i want to create a folder with some FBs DBs under the plc program block. So please could you guide me how can i start preparing it? And can have a short explanation behind the logic you have created to generate Program blocks ?
Thanks in advance,
Dhaval Pathak
Hi Yaroslav, Can you share the source code? Thanks
fex.net/ru/s/kxzlay3
@@yaroslavlyulko2298 Thanks
Hi Yaroslav, Can you maybe share your source code again please?
fex.net/s/abxn60v
Good job men., this is awsome. Could share the program? The last link dont works. Thanaks a lot.
fex.net/ru/s/bm4xpzp
Now everything is running.
now would like to switch language on DE and IT please a suggestion!
good news. As I understood, you want to add description of networks, tags on DE and IT language. It is possible, I will modify files and send new version.
@@yaroslavlyulko2298 Thanks in advance
fex.net/s/s4nnvor - please try
@@yaroslavlyulko2298 works perfect thank you very much !!!
Hello Yaroslav,
Seems very interesting work, can you share your source code with new link?
fex.net/ru/s/0deot9l
The last link doesn't work anymore.
please try this - fex.net/s/bzx8ly2
@@yaroslavlyulko2298 Thank you !
Добрый день, не могли бы Вы поделиться проектом, старая ссылка не работает.
Добрый день, fex.net/s/
e1lf4av
@@yaroslavlyulko2298 спасибо огромное
Hello, I try to find information for excel and openess .
can you share please ?
thank's regards
fex.net/uk/s/
rx3cez0
@@yaroslavlyulko2298 , thank's , I download ...
@@fabgervais1118 Could you share the source code for this application? Thanks in advance
Hello Yaroslav, it's an impressive work! Is it possible to share your source code in a new link, please?
The last link doesn't work anymore.
fex.net/s/f8amxdy
@Yaroslav Lyulko Thank you!
Nice work! Could you share the source code again? Maybe with git so the link doesn't expire? Thanks
fex.net/s/nks1krf
Hello Yaroslav. Could you share source code again?
fex.net/s/mvmtv3n
@@yaroslavlyulko2298 Hello Yaroslav. If you don't mind, could you renew the link you shared?
@@gokayakkoc4763 fex.net/s/yn9xry8
@@yaroslavlyulko2298 thank you !
Hi Yaroslav, you application looks very nice. Can you maybe share your source code again please?
fex.net/s/
vmfe2ms
Hello Yaroslav could you share the source code again please? Thank you
fex.net/s/
6rllznl
@@yaroslavlyulko2298 Thank you very much
Hi, great work , Can you send the link for the source code?
fex.net/ru/s/kofxcet
Hey, Yaroslav
Could you share your source code?
fex.net/s/0pedt4a
@@yaroslavlyulko2298 Thank you!
Hey man, thanks for the demo, unfortunally the file is already down again, could you upload to a different host like pixeldrain, zippyshare or even mirrorcreator? thank you very much :)
pixeldrain.com/u/rXDB7ybH
@@yaroslavlyulko2298 Youre the man :) ty for the fast response.
can you send me a new link of source ?
fex.net/ru/s/r8apnfl
@@yaroslavlyulko2298 Thanks :)
Добрый день, не могли бы Вы поделиться проектом?)
Спасибо большое)
fex.net/ru/s/6nvd4dt
@@yaroslavlyulko2298 спасибо))
The link doesn't exists
fex.net/uk/s/
s9fm4fy
@@yaroslavlyulko2298 БЛАГОДАРЮ ВАС!!!! С наступающими праздниками!
@@CerberusApg спасибо! и Вас с наступающими праздниками!
Yaroslav Lyulko It’s possible that you share your code?
It’s possible that you share your code?
Nice work! could you share the source code once again?
fex.net/s/nyf9lv9
Everything is going fine. Now I have tried to remove the language Russian and Ukrainian. but I can not do that! can you give me a suggestion?
Nice project! Can you share the link again? All the others was expired
fex.net/s/
brmov1n
Hello! Excellent work! Could you share de source code of this application? Thanks
fex.net/uk/s/nomzplb
Hi can you share the code? Please
fex.net/uk/s/xvz9llf
Thank you very much. Can you please share source code for this application? Thanks
fex.net/s/
z7b8oom
@@yaroslavlyulko2298 Thank you very much
hello Yaroslav
very interesting, could you share the source code for this application?
please try - fex.net/s/rfozkk6
@@yaroslavlyulko2298 Thank you very much !
Very nice project.... Can you plzzz share link .... It will really help me...
fex.net/s/bplkxkz
@@yaroslavlyulko2298 thank you bro.... ❤
Hello Can you please share source code with me, shared with you by Yaroslav? Thanks
Hello, could you share the source code? thanks
fex.net/s/
9tsxsm4
Hello, Its looking good. Could you share the source code for this application? thanks
fex.net/s/
cdk42re
Hello,
Can you share your code ?
fex.net/s/
czxadxk
@@yaroslavlyulko2298 New Share please. Expired again
@@johanfourie2444 fex.net/s/
arrzvb2
can i have to code please
fex.net/s/
epaokpy
Hello, excellent work, could you share the source code of this application?
fex.net/s/b9masty
Could u share the source code pls
fex.net/ru/s/efakxkf
Could you share the source code for this application? Thanks in advance
fex.net/uk/s/vyfllzs
Hello Yaroslav, I would be very grateful for the source code
please try - fex.net/s/mye1kzp
Привіт, Ярославе, цей проект дуже корисний, не могли б ви надати мені джерело? ^^
fex.net/uk/s/bo8yyrz
@@yaroslavlyulko2298 thanks
Nice
Can you share the Source code
fex.net/ru/s/2lymxl3
Яросла, доброго дня. Опрацьовую подібне рішення. Чи можете Ви поділитись своїм досвідом, будь-ласка?) Все буде Україна.
fex.net/uk/s/teenxal
@yaroslavlyulko2298 its amazing work. can you share new link? Thank you very much
One question
I wanted to make a universal code for code generation.
I have a problem how to generate an IDB for every FBI.
I create templates for static input and output and my objective insert into InsatnzDB xml-file.
The problem is : I could not access the Document/SW.Blocks.InsatnzDB/AttributeList/Interface/Sections to use the ImportNode command.
Do you have an idea or an example that can help me with this.
Thanks
Hello Yaroslav, it's an impressive work! Is it possible to share your source code in a new link, please?
The last link doesn't work anymore.
fex.net/s/
dyfxae0
@@yaroslavlyulko2298 Thank you very much
Hey @@headchev, can you please share the code. The link is not working right now.
Hello Yaroslav, could you share the source code again please? Thank you
fex.net/s/
po1tfzt
Nice work! Could you share the source code again? Link expired
fex.net/s/yn9xry8
Could you share the source code for this application? thanks
fex.net/s/b9masty
Hello Can you please share source code with me share with you by Yaroslav? Thanks
Could you share the source code for this application? Thanks in advance
fex.net/s/
oskxasv
@@yaroslavlyulko2298 Thank you ^^
Nice work, Could you share the source code for this application? thanks
fex.net/uk/s/nomzplb
Hello Yaroslav, it's an impressive work! Is it possible to share your source code in a new link, please?
The last link doesn't work anymore.
fex.net/uk/s/nomzplb
@@yaroslavlyulko2298 Youre the man :) ty for the fast response.
@@yaroslavlyulko2298 Hey, I have one problem with reference. Can you explain how can i fing the VBIDE réference ? What is it for ? If I delete it, will the app still work ? I can't find it in NutGet
Hello Yaroslav could you share the source code again please? Thank you
fex.net/s/
7devoco
@@yaroslavlyulko2298 Can you pls post a new link?
@@drenibejtullahi2500 fex.net/s/
stbosky
@@yaroslavlyulko2298 Thanks!
Nice work, Could you share the source code for this application? thanks
fex.net/s/9l5ckor
Nice work, Could you share the source code for this application? thanks
fex.net/uk/s/poz8yzn
@@yaroslavlyulko2298 thanks!