Custom CAFD Tool - Bimmerfest - BMW Forums



Go Back   Bimmerfest - BMW Forums > The Best of Bimmerfest! > BMW Coding and Programming

BMW Coding and Programming
Discuss coding options and features on your BMW here.

Reply
 
Thread Tools Display Modes
  #1  
Old 09-26-2013, 04:18 AM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
Custom CAFD Tool

Update: 12/07/2013 V0.2.3 Alpha
  • Added FA Compare
  • Minor Bug fixes

- language.en.xml is a separate download now so as not to overwrite your local copy. If you don't have a local db yet, you can download language.en.xml and place a copy where the tool is

You can just replace/update "NcdCafdTool.exe", no need to update/replace .config and .dll files

NcdCafdToo_V0.2.3.zip.pdf


Update: 11/20/2013 V0.2.2 Alpha
  • Added Full Support for PSdZ 51.1
  • Fixed an issue that could happen in OS with different locale. You have this issue if you get the message: "Data at the root is invalid"

- language.en.xml is a separate download now so as not to overwrite your local copy. If you don't have a local db yet, you can download language.en.xml and place a copy where the tool is

If you have customized the settings, don't overwrite "NcdCafdTool.exe.Config" or your settings will be replaced. Open "NcdCafdTool.exe.Config" with Notepad, copy the value of signatureKey node, then open the application, go to Settings and replace the Signature Key. You can also edit your config file with Notepad.

NcdCafdTool_V0.2.2.pdf

Update: 10/27/2013 NCD / CAFD Tool V0.2.1 Alpha
  • Added FA/Available Options (Salapa) Search function
  • Added FP Search function
  • Minor bug fixes

Last release should have been labeled V0.2.0. , so this is now V0.2.1
No change in config file, so you can just extract the executable and overwrite the old one
Attachment 404320

Update: 10/23/2013 V0.1.3.0 Alpha
  • Added FA/FP Viewer
Attachment 400816

Update: 10/13/2013 V0.1.2.1 Alpha
  • Fixed Disabled Client ID/Secret Text Boxes
  • Fixed Search Error when reaching the last matched item
  • Added Side-Window Translation
  • Added Translation in "Compare" panel. Uses local language DB only. Load NCD/CAFD in NCD Viewer to populate local DB
- language.en.xml is a separate download now so as not to overwrite your local copy. If you don't have a local db yet, you can download language.en.xml and place a copy where the tool is
Update: 10/13/2013 V0.1.2 Alpha
- Added Translation https://www.bimmerfest.com/forums/sho...8&postcount=47
- Fixed issue with "Search"
- Now uses .NET Framework 4.0
Update: 10/6/2013 V0.1.1.3 Alpha.
- Fixed issue with 'UNBELEGT'
Update: 10/4/2013 V0.1.1 Alpha
Update: 10/4/2013 Added Attachment

Rename .pdf to .zip




=============================
Trying to get a feel if the coding community is interested in a tool like this:
http://i.imgur.com/JHfGNjO.png

I started writing this tool a couple of hours ago, very rough in its current stage but could be developed further and make it smoother around the edges a bit.

Currently, the only thing this tool does is decrypt CAFD and present it in tree view, nothing else. What's interesting is that names are mostly in English, so, the non-German tongue among us, could readily understand it.

I've been talking to Shawn several weeks back on a related tool and this could be the start of it. This tool can lead to comparing between two NCD files, or even NCD to CAFD, or CAFD to CAFD files. Anyway, before I get ahead of myself, just wanted to see if anyone is interested in this type of tool. I can develop it further, elicit some ideas, and release it to the community - free of charge.

Note: I'm contemplating if I should make this open source, but since it entails decrypting CAFD using the maker's private key, I'm not sure if this is a good idea.
Attached Files
File Type: pdf language.en.xml.pdf (317.7 KB, 3633 views)
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites

Last edited by TokenMaster; 12-07-2013 at 01:18 PM. Reason: Updated Content for V0.2.2
Reply With Quote
Sponsored Links
Advertisement
 
  #2  
Old 09-26-2013, 07:39 AM
FrogmanF30's Avatar
FrogmanF30 FrogmanF30 is offline
Officially Welcomed to the 'Fest
Location: SoCal
 
Join Date: Mar 2012
Posts: 440
Mein Auto: 2012 328i
I think a tool like this would be infinitely valuable to be able to search for codes and for comparing what settings are changed when different VO options code are changed.

For the German names and comments, could you also add an interface to Google translate (or something similar) so that this text could be shown in both the original form, and in whatever language the user prefers?

Thanks!
Reply With Quote
  #3  
Old 09-26-2013, 09:17 AM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
In-place translation is kind of out of the table right now as the translation API is for-fee service, but a link to G is definitely doable.

I'm working on NCD file parsing now and have a working code set. Next on the to-do list is to feed/merge it with CafD to come up with something similar to the above. Comparing between NCD files should be relatively quick after that. When that's done, I'll release an alpha build

I find it amusing that the CAFD files are about 80% English in its raw form -at least the DME CAF. E-Sys does on-the-fly translation to German, even if English is selected as a language. I guess this is a bug, but I don't know.
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
Sponsored Links
Advertisement
 
  #4  
Old 09-26-2013, 01:21 PM
gspannu gspannu is offline
Officially Welcomed to the 'Fest
Location: UK
 
Join Date: May 2012
Posts: 458
Mein Auto: F10 535, F82 M4
Seems to be quite an awesome idea. Especially a comparison mechanism for files. I think the Google Translate option would be quite useful too. I am sure there must be some translation API available 'free to use' somewhere.

Keep up the good work...
__________________
-
Reply With Quote
  #5  
Old 09-27-2013, 01:00 AM
shawnsheridan's Avatar
shawnsheridan shawnsheridan is online now
bimmerfest Supporting Member
Location: Houston, TX
 
Join Date: Jan 2009
Posts: 35,332
Mein Auto: 2016 650i GC M-Sport
Bring it!
__________________

2016 650i GC M-Sport w/ 20" 373M Wheels; Alpine White; Individual Opal White Full Merino Leather; Gray Poplar Wood Trim
Anthracite Alcantara Headliner; Ceramic Controls; Executive Package w/ B&O Sound System; Integral Active Steering, etc.
Reply With Quote
  #6  
Old 09-27-2013, 06:56 AM
mcrussell mcrussell is offline
Officially Welcomed to the 'Fest
Location: UK
 
Join Date: Mar 2005
Posts: 459
Mein Auto: F10 520d M Sport 11/2012
Sounds like an awesome idea, currently I use Beyond Compare with NCS FSW.TRC files which is a fast way of seeing what options change in the coding of a module when you you code it based on different VO's.

Being able to compare the coding of a CIC with or without COMBOX for example would be very useful.
Reply With Quote
  #7  
Old 09-28-2013, 04:28 PM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
Well, comparing NCD/CAFD was Shawn's idea

Update: NCD parsing and injecting into CAFD is done.


Next is adding the compare and search feature. UI will probably look side-by-side/left-right panel, with visual difference indicator.
I noticed that the entries are not sorted. I did made a sorted version but I thought I'd do what E-Sys does. Anyway, this can be easily added as user configurable setting.

On the translation, Bing has a free-to-use model but is limited to 2M characters per month. Maybe it's good enough for now.
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
  #8  
Old 09-28-2013, 04:34 PM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
BTW, just like E-Sys, when opening an NCD file, it will determine and open the corresponding CAFD file withough having to browse for the file.
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
  #9  
Old 09-30-2013, 06:47 AM
bmwgcyr bmwgcyr is offline
Registered User
Location: Montreal, Canada
 
Join Date: May 2012
Posts: 93
Mein Auto: BMW m550i xDrive 2018
Quote:
Originally Posted by TokenMaster View Post
Trying to get a feel if the coding community is interested in a tool like this:


I started writing this tool a couple of hours ago, very rough in its current stage but could be developed further and make it smoother around the edges a bit.

Currently, the only thing this tool does is decrypt CAFD and present it in tree view, nothing else. What's interesting is that names are mostly in English, so, the non-German tongue among us, could readily understand it.

I've been talking to Shawn several weeks back on a related tool and this could be the start of it. This tool can lead to comparing between two NCD files, or even NCD to CAFD, or CAFD to CAFD files. Anyway, before I get ahead of myself, just wanted to see if anyone is interested in this type of tool. I can develop it further, elicit some ideas, and release it to the community - free of charge.

Note: I'm contemplating if I should make this open source, but since it entails decrypting CAFD using the maker's private key, I'm not sure if this is a good idea.

I am interested as well, that would be an awesome tool!
__________________
BMW G30 m550i xDrive 2018
Born: 2018-09-11
Carbon Black, Black Nappa with Grey Poplar. Pkgs: Premium, Adv Driver Assist, Remote Parking, 668M 20 In, Adaptive suspension & Smartphone
Z1Q, ZC5, ZK9, ZTV, 29X, 2VW, 4LQ, 4161, LZFK

Mods: none for now

Other:
BMW R1150RT 2005 LE, night black

Retired:
BMW F10 550i 2011 m-sport & Meistershaft GTC Exhaust
BMW e60 545i 2005 m-sport 6mt
BMW e39 540i 2000 6mt
BMW R1100RT 2000
[/SIGPIC]
Reply With Quote
  #10  
Old 10-04-2013, 06:11 AM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
NCD/CAFD Tool Alpha 1.0
Ok, time for Alpha1.0 Release. Expect bugs and please do report as you encounter them. This requires a properly configured PsdZData folder and .NET Framework 3.5+. First thing to do is to tell the tool where to find PsdZ folder, usually C:\ESysData\psdzdata

NCD/CAFD Viewer


Browseload NCD or CAFD file and it will be presented in the tree view. Button next to browse button is for refreshing/reloading.

Search box is above the treeview control. Button with stacked disks icon is used to show/hide storage node

As you click on the nodes, the grid view will reflect the location of the selected setting within the NCD file. Clicking on the grid will automatically expand the selection and will update the tree view as well.

Textbox on the right shows the current data group, selected function, current value and available options
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
  #11  
Old 10-04-2013, 06:16 AM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
NCD/CAFD Comparison Tool - Tree View Mode


Select left-side file. Button next to left browse button is use to compare NCD against default values in CAFD

Select right-side file and press "Diff" button next to it to compare it against the left-side file.
Difference will be highlighted and you'll aso get a summary of difference in another window.
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
  #12  
Old 10-04-2013, 06:20 AM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
NCD Compare Tool - Grid Mode


Select files and compare from the Tree View tab. Difference are again, highlighted. This is only available when comparing NCD files

With this this, you can compare CAFD files from different versions of PsdZ and inspect the difference among available versions
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
  #13  
Old 10-04-2013, 06:21 AM
shawnsheridan's Avatar
shawnsheridan shawnsheridan is online now
bimmerfest Supporting Member
Location: Houston, TX
 
Join Date: Jan 2009
Posts: 35,332
Mein Auto: 2016 650i GC M-Sport
Quote:
Originally Posted by TokenMaster View Post
NCD/CAFD Comparison Tool - Tree View Mode
...

Select left-side file. Button next to left browse button is use to compare NCD against default values in CAFD

Select right-side file and press "Diff" button next to it to compare it against the left-side file.
Difference will be highlighted and you'll aso get a summary of difference in another window.
Awesome!

Please send me a link to download and test it.
__________________

2016 650i GC M-Sport w/ 20" 373M Wheels; Alpine White; Individual Opal White Full Merino Leather; Gray Poplar Wood Trim
Anthracite Alcantara Headliner; Ceramic Controls; Executive Package w/ B&O Sound System; Integral Active Steering, etc.
Reply With Quote
  #14  
Old 10-04-2013, 06:22 AM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
CAFD Decryptor


Simple decryptor and export to XML function.
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
  #15  
Old 10-04-2013, 06:27 AM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
Quote:
Originally Posted by shawnsheridan View Post
Awesome!

Please send me a link to download and test it.
Added attachment to OP. Rename to .zip
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
  #16  
Old 10-04-2013, 07:08 AM
bmwgcyr bmwgcyr is offline
Registered User
Location: Montreal, Canada
 
Join Date: May 2012
Posts: 93
Mein Auto: BMW m550i xDrive 2018
Quote:
Originally Posted by TokenMaster View Post
Update: 10/4/2013 Added Attachment. Rename .pdf to .zip

Trying to get a feel if the coding community is interested in a tool like this:


I started writing this tool a couple of hours ago, very rough in its current stage but could be developed further and make it smoother around the edges a bit.

Currently, the only thing this tool does is decrypt CAFD and present it in tree view, nothing else. What's interesting is that names are mostly in English, so, the non-German tongue among us, could readily understand it.

I've been talking to Shawn several weeks back on a related tool and this could be the start of it. This tool can lead to comparing between two NCD files, or even NCD to CAFD, or CAFD to CAFD files. Anyway, before I get ahead of myself, just wanted to see if anyone is interested in this type of tool. I can develop it further, elicit some ideas, and release it to the community - free of charge.

Note: I'm contemplating if I should make this open source, but since it entails decrypting CAFD using the maker's private key, I'm not sure if this is a good idea.
I tried it and I get an error when trying to open a .NCD file from my computer, see attached screenshot: Object reference not set to an instance of an object
Attached Thumbnails
Click image for larger version

Name:	Object Reference not set to an instance of an object.JPG
Views:	650
Size:	58.7 KB
ID:	400455  
__________________
BMW G30 m550i xDrive 2018
Born: 2018-09-11
Carbon Black, Black Nappa with Grey Poplar. Pkgs: Premium, Adv Driver Assist, Remote Parking, 668M 20 In, Adaptive suspension & Smartphone
Z1Q, ZC5, ZK9, ZTV, 29X, 2VW, 4LQ, 4161, LZFK

Mods: none for now

Other:
BMW R1150RT 2005 LE, night black

Retired:
BMW F10 550i 2011 m-sport & Meistershaft GTC Exhaust
BMW e60 545i 2005 m-sport 6mt
BMW e39 540i 2000 6mt
BMW R1100RT 2000
[/SIGPIC]
Reply With Quote
  #17  
Old 10-04-2013, 08:54 AM
shawnsheridan's Avatar
shawnsheridan shawnsheridan is online now
bimmerfest Supporting Member
Location: Houston, TX
 
Join Date: Jan 2009
Posts: 35,332
Mein Auto: 2016 650i GC M-Sport
NICE!

I like the NCD Compare functionality a lot. The fact that you can either a) Compare against the Default values, or b) Compare against another .NCD is sweet!

Thanks for making this!
__________________

2016 650i GC M-Sport w/ 20" 373M Wheels; Alpine White; Individual Opal White Full Merino Leather; Gray Poplar Wood Trim
Anthracite Alcantara Headliner; Ceramic Controls; Executive Package w/ B&O Sound System; Integral Active Steering, etc.
Reply With Quote
  #18  
Old 10-04-2013, 12:19 PM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
Quote:
Originally Posted by bmwgcyr View Post
I tried it and I get an error when trying to open a .NCD file from my computer, see attached screenshot: Object reference not set to an instance of an object
I'll check this file and see what's going on but did you have the PsdZ in the default location?
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
  #19  
Old 10-04-2013, 12:22 PM
bmwgcyr bmwgcyr is offline
Registered User
Location: Montreal, Canada
 
Join Date: May 2012
Posts: 93
Mein Auto: BMW m550i xDrive 2018
Quote:
Originally Posted by TokenMaster View Post
I'll check this file and see what's going on but did you have the PsdZ in the default location?
I tried it on my home laptop instead of the work computer and it is working fine. Thank you for the tool.

Guy
__________________
BMW G30 m550i xDrive 2018
Born: 2018-09-11
Carbon Black, Black Nappa with Grey Poplar. Pkgs: Premium, Adv Driver Assist, Remote Parking, 668M 20 In, Adaptive suspension & Smartphone
Z1Q, ZC5, ZK9, ZTV, 29X, 2VW, 4LQ, 4161, LZFK

Mods: none for now

Other:
BMW R1150RT 2005 LE, night black

Retired:
BMW F10 550i 2011 m-sport & Meistershaft GTC Exhaust
BMW e60 545i 2005 m-sport 6mt
BMW e39 540i 2000 6mt
BMW R1100RT 2000
[/SIGPIC]
Reply With Quote
  #20  
Old 10-04-2013, 12:25 PM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
Quote:
Originally Posted by shawnsheridan View Post
NICE!

I like the NCD Compare functionality a lot. The fact that you can either a) Compare against the Default values, or b) Compare against another .NCD is sweet!

Thanks for making this!


I like how I can compare CAFD versions and see the change between them lol
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
  #21  
Old 10-04-2013, 12:28 PM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
Guy -you're welcome and glad to hear it's working now.
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
  #22  
Old 10-04-2013, 12:29 PM
shawnsheridan's Avatar
shawnsheridan shawnsheridan is online now
bimmerfest Supporting Member
Location: Houston, TX
 
Join Date: Jan 2009
Posts: 35,332
Mein Auto: 2016 650i GC M-Sport
Quote:
Originally Posted by TokenMaster View Post
I'll check this file and see what's going on but did you have the PsdZ in the default location?
Just an FYI. The default location on E-Sys 3.18.4 is C:\ESysData, which I still use, but beginning with E-Sys 3.22.5, it changed to C:\Data.
__________________

2016 650i GC M-Sport w/ 20" 373M Wheels; Alpine White; Individual Opal White Full Merino Leather; Gray Poplar Wood Trim
Anthracite Alcantara Headliner; Ceramic Controls; Executive Package w/ B&O Sound System; Integral Active Steering, etc.
Reply With Quote
  #23  
Old 10-04-2013, 09:31 PM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
I did notice that on fresh install of V3.24, but not on earlier versions. Anyway, changed the default config to just C:\Data now, V0.1.1 Alpha out.

Apparently, XP doesn't like storing configuration in the roaming profile folder. Works on XP now. Added drag and drop feature and CAFD decrypter outputs an indented, well-formatted XML
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
  #24  
Old 10-04-2013, 09:49 PM
shawnsheridan's Avatar
shawnsheridan shawnsheridan is online now
bimmerfest Supporting Member
Location: Houston, TX
 
Join Date: Jan 2009
Posts: 35,332
Mein Auto: 2016 650i GC M-Sport
You broke it:

Click image for larger version

Name:	Image 001.png
Views:	662
Size:	38.0 KB
ID:	400575

Click image for larger version

Name:	Image 002.png
Views:	535
Size:	41.4 KB
ID:	400576

I set my PSdZ Location to C:\ESysData and saved it, but nothing is working in this version.
__________________

2016 650i GC M-Sport w/ 20" 373M Wheels; Alpine White; Individual Opal White Full Merino Leather; Gray Poplar Wood Trim
Anthracite Alcantara Headliner; Ceramic Controls; Executive Package w/ B&O Sound System; Integral Active Steering, etc.
Reply With Quote
  #25  
Old 10-04-2013, 10:04 PM
TokenMaster's Avatar
TokenMaster TokenMaster is offline
Token Master
Location: Java Land
 
Join Date: Jul 2013
Posts: 1,032
Mein Auto: Coded F30
I should learn to refresh the settings after saving :gah:

Workaround: Restart the app after saving
__________________
Code My Bimmer| FDL Coding Video Guide -Blogger/Youtube | EST Software Token demo | E-Sys Launcher Premium and PRO
Never download already patched E-Sys from Torrent sites
Reply With Quote
Reply

See More Related BMW Stories

Tags
bmw, cafd, e-sys, token, tokenmaster


Forum Navigation
Go Back   Bimmerfest - BMW Forums > The Best of Bimmerfest! > BMW Coding and Programming
Today's Posts Search
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On



Forum Jump


All times are GMT -7. The time now is 01:22 PM.


Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
vBulletin Security provided by vBSecurity v2.2.2 (Pro) - vBulletin Mods & Addons Copyright © 2019 DragonByte Technologies Ltd.
© 2001- VerticalScope Inc. All rights reserved.