; NOTE!
; This program will ONLY work with a Windows version of PROCOMM PLUS!.
; This Procomm Script file is for you to do a "CHG" list of Digital Extn sets
; The " ; " denotes that the data on this program script is ignored when the
; file is run.
; You must make sure that you have the "vkeys.inc" file located within
; Procomm Plus "Aspect" folder!. The script file will not compile without it!.
; If you don't have this file, then go to the last part of this script file &
; copy that section without the ";" as the file "vkeys.inc".
; The script will also record for you a LOG file such as "pw01.cap" etc.
; The program will use LD 11 for all the changes.
; Follow the instructions by Ticking the box's on the screen & locating your
; source file.
; It's best to leave the "Set Type" Box with "File" alone if you have the
; Extn's "TYPE" in your source file.
; Useful point to remember is that this script file will also use the Analogue
; "TYPE" 500 Extn's when your Meridian has V19.xx or later software!.
; However you cannot MIX the "FEATURE" & "KEY" functions!.
; Against "Item" on the Left hand side, put in whatever you require such as..
; You might need to change the "Transmit Pacing" depending on the software version!
; A higher number is needed to slow the program down for older processors.
; Make sure that you click on "ACCEPT" to run in your entries.
; The SOURCE file should be in a *.CSV Format (EXCEL!)
; An example of the source file as viewed in text, is shown below.
; It should be The "TN" Number followed by the "TYPE"
; This program file should remain unaltered & only copies made from it for whatever
; use is required. P.S. I suggest that you make it a "READ ONLY" file. & store it on
; your P.C's HARD DRIVE.
; Script example on how to setup a dialog box e.g. dialogbox 4 16 620 350 2
; 4 = ID Number 16 = Left position 620 = Top position 350 = Length of box 2 = Depth of box
; There will be a % counter running in a separate box on the right hand side
; showing the progress of the script with number of changes left to do.
; If your source file (example below) has lines of data of this length or more, then the script will FAIL with a
; message of Error 1: Value out of range
; Please reduce the data for that line. e.g. a line of data that is too long is..
;1140,066 0 00 25,1140,0,74210,1,6,1421,10,1111,FBA CRPA HFA CNIA DNDA PUA VOLA VOUA CFXA ICRA,2,7000,74210,74210,0,0,SCR 4213 0,SCN 4212 0,SCN 4216 0,SCN 4218 0,SCN 4219 0,SCN 4222,ADL 8 4230,ADL 8 4019,ADL 8 5302,SCN 4211 0,SCN 4791 0,ADL 8, ,CFW 6,RNP,SSU 10 (262 CHARACTERS!)
; Trim the data down to e.g.
;1140,066 0 00 25,1140,0,74210,1,6,1421,10,1111,FBA CRPA HFA CNIA DNDA PUA VOLA VOUA CFXA ICRA,2,7000,74210,74210,0,0,SCR 4213 0,SCN 4212 0,SCN 4216 0,SCN 4218 0,SCN 4219 0,SCN 4222,ADL 8 4230,ADL 8 4019,ADL 8 5302,SCN 4211,SCN 4791,ADL 8, ,CFW 6,RNP,SSU 10
#include "vkeys.inc" ; You must have this file vkeys.inc
; located within the Aspect folder!
long LTime1
long LTime2
integer diff_sec
integer disp_sec
integer diff_min
integer disp_min
integer diff_hrs
integer left_sec
integer left_min
integer left_hrs
integer disl_sec
integer disl_min
INTEGER LEN=0
INTEGER CUT_OFF=0
LONG COUNT=0
LONG TOTAL=0
LONG PERCENT=0
INTEGER PERCENT_CHG_CHK=0
LONG BIT
PROC MAIN
integer i_tmp
integer i_ch
integer i_evt
integer i_sw_lev
integer i_mdm_clrdwn
integer i_fch_tx_val
integer i_tx_val
integer i_p
long l_tot_no_lin
long l_lin_cnt
long l_prog_bar_op
long l_fi_sz0
long l_cur_fi_sz0
dialogbox 0 4 16 610 420 2 " Procomm Plus Easy Change script file program For Nortel Extn DIGITAL Sets [V2.04 TSP 14th April 2009]"
groupbox 53 12 310 320 100 " Enter if required, the delayed start date / time in the box's below to run this script file"
text 54 20 320 296 11 "If the script auto starts before the date required, then select a different time period!" center
text 55 20 330 296 11 "I've found that the script will auto time start OK just before midnight i.e. 23:59:59!" center
text 60 45 340 280 11 "If you want the program to Date start enter the Date as e.g. 23/12/05 in the box below" center
text 61 30 360 248 11 "Pressing the (Space Bar) = Auto Start, or enter the required Date for it to run" left
text 62 280 350 34 9 "Dy/Mh/Yr" center
editbox 33 280 360 38 11 s_date_start 8
text 56 50 375 268 11 "If you want the program to Time start enter the time in 24Hr format in the box below" left
text 57 30 395 248 11 "Pressing the (Space Bar) = Auto Start, or enter the start Time = e.g. 16:20:00 " left
text 58 280 385 34 9 "Hr:Mn:Sc" center
editbox 34 280 395 38 11 s_time_start 8
text 27 470 80 62 11 "Transmit Cadence" left
combobox 26 480 90 34 170 DROPDOWNLIST s_tx_list s_tx_item
text 51 430 105 200 11 "A higher Transmit Cadence number is needed " left
text 52 430 116 200 11 "to slow the program down for older processors. " left
groupbox 63 410 130 190 55 " Example shown is a Source file based on a *.csv format"
text 59 420 140 140 11 " TN Number followed by the Extn TYPE" center
text 65 420 150 140 11 " 004 0 00 00 , 2616" center
text 36 420 160 140 11 " 004 0 00 01 , 3904" center
text 37 420 170 140 11 " 096 0 00 14 , I2004" center
groupbox 64 410 190 190 60 " Enter the systems Login Name and Password below"
editbox 35 460 210 74 11 s_userid 11
text 66 413 199 185 11 " Name / UserID (No Name = Space Bar)" center
editbox 31 460 236 74 11 s_pwd 16 MASKED
text 68 420 225 140 11 " Switch Password is Case Sensitive for V4.5 onwards" center
groupbox 69 410 255 190 56 " What this script will do after changes have been made!"
text 70 430 265 146 11 "LD 32 is accessed to cancel any alarms" center
text 71 430 276 146 11 "LD 83 sets are printed After completion" center
text 72 430 287 146 11 "LD 43 is accessed and a EDD is done" center
text 73 430 298 146 11 "This script will then logoff and exit the system " center
groupbox 41 12 8 190 100 " Against Item below on the Left hand side put in e.g."
text 43 30 25 149 11 "NCOS 6 (First Line)" left
text 44 30 35 149 11 "CLS CFXA DPUA LNA (Second Line)" left
text 45 30 45 149 11 "RNPG 2 (Third Line) etc and so on!" left
text 46 30 65 149 11 " Do all this as required until you have finished" center
text 38 30 75 149 11 "This column can also be used for Items" center
text 39 30 85 149 11 "On 500 sets. (post V19 software) only!" center
groupbox 42 210 8 190 100 " Against Key below on the Right hand side put in e.g."
text 47 227 25 149 11 " 1 CFW 16 (First Line) (1) = KEY 1" left
text 48 227 35 149 11 " 3 SSU 10 (Second Line) (3) = KEY 3" left
text 49 227 45 149 11 " 4 ADL 16 9003898989 (Third Line) etc!" left
text 50 227 65 149 11 " Do all this as required until you have finished" center
text 74 227 75 149 11 " Then press the Tab key to select the start time" center
groupbox 75 340 315 260 79 " Read this section FIRST! if you intend to use the delayed start function "
text 76 350 329 242 33 " Please remember to amend your capture file settings under the following headings's (Options, Data Options, Setup Files, Capture File Options, Control Options) to UNCHECK the box marked (Query for file name when capture is started)!. " left
text 77 350 367 243 20 " Click (OK) & (OK) again before starting this script program. This will make the script run and produce a log file without any other further manual assistance. " left
WHEN TARGET 1 "OVL111 " CALL OVL111
WHEN TARGET 2 "OVL428 " CALL OVL428
; WHEN TARGET 3 "SCH0099 " CALL SCH0099 ; TYPE = 2500
; WHEN TARGET 4 "SCH0111 " CALL SCH0111 ; TYPE = 2000
WHEN TARGET 5 "SCH0101 " CALL SCH0101
WHEN TARGET 6 "NACT " CALL NACT
WHEN TARGET 7 "MARP ON " CALL MARP
WHEN TARGET 8 "ERR3056 " CALL CUTOFF
disable dlgctrl 0 2 10
disable dlgctrl 0 12 20
while 1
dlgevent 0 i_evt
switch i_evt
case 0
if nullstr s_fi_nm
disable dlgctrl 0 28
disable dlgctrl 0 28
elseif nullstr s_date_start
disable dlgctrl 0 28
elseif nullstr s_time_start
disable dlgctrl 0 28
elseif nullstr s_userid
disable dlgctrl 0 28
elseif nullstr s_pwd
disable dlgctrl 0 28
else
if not nullstr s_item_arr[0]
enable dlgctrl 0 28
endif
if not nullstr s_ftr_arr[0]
enable dlgctrl 0 28
endif
endif
endcase
case 1
if not nullstr s_item_arr[0]
upd_str_dlg_1(0,0,0,1,0,2,KV_SHIFT,VK_TAB)
endif
endcase
case 2
if not nullstr s_item_arr[1]
upd_str_dlg_1(0,1,0,2,0,3,KV_SHIFT,VK_TAB)
endif
endcase
case 3
if not nullstr s_item_arr[2]
upd_str_dlg_1(0,2,0,3,0,4,KV_SHIFT,VK_TAB)
endif
endcase
case 4
if not nullstr s_item_arr[3]
upd_str_dlg_1(0,3,0,4,0,5,KV_SHIFT,VK_TAB)
endif
endcase
case 5
if not nullstr s_item_arr[4]
upd_str_dlg_1(0,4,0,5,0,6,KV_SHIFT,VK_TAB)
endif
endcase
case 6
if not nullstr s_item_arr[5]
upd_str_dlg_1(0,5,0,6,0,7,KV_SHIFT,VK_TAB)
endif
endcase
case 7
if not nullstr s_item_arr[6]
upd_str_dlg_1(0,6,0,7,0,8,KV_SHIFT,VK_TAB)
endif
endcase
case 8
if not nullstr s_item_arr[7]
upd_str_dlg_1(0,7,0,8,0,9,KV_SHIFT,VK_TAB)
endif
endcase
case 9
if not nullstr s_item_arr[8]
upd_str_dlg_1(0,8,0,9,0,10,KV_SHIFT,VK_TAB)
endif
endcase
case 10
if not nullstr s_item_arr[9]
strupr s_item_arr[9]
dlgupdate 0 10
endif
endcase
case 11
if not nullstr s_ftr_arr[0]
upd_str_dlg_1(1,0,0,11,0,12,KV_SHIFT,VK_TAB)
endif
endcase
case 12
if not nullstr s_ftr_arr[1]
upd_str_dlg_1(1,1,0,12,0,13,KV_SHIFT,VK_TAB)
endif
endcase
case 13
if not nullstr s_ftr_arr[2]
upd_str_dlg_1(1,2,0,13,0,14,KV_SHIFT,VK_TAB)
endif
endcase
case 14
if not nullstr s_ftr_arr[3]
upd_str_dlg_1(1,3,0,14,0,15,KV_SHIFT,VK_TAB)
endif
endcase
case 15
if not nullstr s_ftr_arr[4]
upd_str_dlg_1(1,4,0,15,0,16,KV_SHIFT,VK_TAB)
endif
endcase
case 16
if not nullstr s_ftr_arr[5]
upd_str_dlg_1(1,5,0,16,0,17,KV_SHIFT,VK_TAB)
endif
endcase
case 17
if not nullstr s_ftr_arr[6]
upd_str_dlg_1(1,6,0,17,0,18,KV_SHIFT,VK_TAB)
endif
endcase
case 18
if not nullstr s_ftr_arr[7]
upd_str_dlg_1(1,7,0,18,0,19,KV_SHIFT,VK_TAB)
endif
endcase
case 19
if not nullstr s_ftr_arr[8]
upd_str_dlg_1(1,8,0,19,0,20,KV_SHIFT,VK_TAB)
endif
endcase
case 20
if not nullstr s_ftr_arr[9]
strupr s_ftr_arr[9]
dlgupdate 0 20
endif
endcase
case 28
exitwhile
endcase
case 29
exitwhile
endcase
case 30
dlgupdate 0 24
endcase
case 31
strlen s_pwd i_tmp
if i_tmp < 4
usermsg "Password `"%s`"`n`nThis must be between 4-16 characters in length & it is case sEnsTivE on V04.50 onwards!" s_pwd
sendvkey MAKE_KV(KV_SHIFT,VK_TAB)
endif
endcase
case 33
strlen s_date_start i_tmp
if i_tmp < 1
usermsg "Start Date `"%s`"`n`nmust be 6 Numbers in length and with a (/) in between every 2 digits. or you can just press the Space Bar to leave the box blank to auto start the program" s_date_start
sendvkey MAKE_KV(KV_SHIFT,VK_TAB)
elseif i_tmp > 8
usermsg "Start Date `"%s`"`n`nmust be 6 Numbers in length and with a (/) in between every 2 digits. or you can just press the Space Bar to leave the box blank to auto start the program" s_date_start
sendvkey MAKE_KV(KV_SHIFT,VK_TAB)
endif
endcase
case 34
strlen s_time_start i_tmp
if i_tmp < 1
usermsg "Start Time `"%s`"`n`nmust be 6 Numbers in length and with a ) in between every 2 digits. or you can just press the Space Bar to leave the box blank to auto start the program" s_time_start
sendvkey MAKE_KV(KV_SHIFT,VK_TAB)
elseif i_tmp > 8
usermsg "Start Time `"%s`"`n`nmust be 6 Numbers in length and with a ) in between every 2 digits. or you can just press the Space Bar to leave the box blank to auto start the program" s_time_start
sendvkey MAKE_KV(KV_SHIFT,VK_TAB)
endif
endcase
case 35
strlen s_userid i_tmp
if i_tmp < 1
usermsg "Name or UserID `"%s`"`n`nName can be up to 11 Characters. Otherwise enter a dummy name or press the Space Bar to accept the entry" s_userid
sendvkey MAKE_KV(KV_SHIFT,VK_TAB)
endif
endcase
; case 36
; endcase
; case 37
; endcase
case 38
endcase
endswitch
endwhile
dlgdestroy 0 cancel
if i_evt != 28
exit
endif
if not fopen 0 s_fi_nm read
errormsg "Couldn't open file `"%s`"." s_fi_nm
else
cnt_no_fi_lines(i_ch,&l_tot_no_lin,&l_fi_sz0)
dialogbox 1 350 52 280 65 14 " Progress status bar for the easy change DIGITAL sets script program"
text 1 8 16 65 11 s_progress left
editbox 2 8 32 210 11 s_prog_bar
text 3 8 45 270 11 s_fi_nm left
text 4 175 5 55 11 "Transmit Pace" left
text 6 90 16 80 11 s_sce_lin left
text 5 185 16 35 11 s_tx_item left
text 7 90 5 70 11 "TN Number Type" left
text 8 8 5 60 11 "Source file line No" left
enddialog
l_prog_bar_op = l_fi_sz0/40
while not feof 0
fgetc 0 i_ch
if not feof 0
ftell 0 l_cur_fi_sz0
if l_cur_fi_sz0 % l_prog_bar_op == 0
strcat s_prog_bar "#"
dlgupdate 1 2
endif
if i_ch == '`r'
loopwhile
endif
if i_ch == '`n'
l_lin_cnt++
strputc s_sce_lin i_p 0
if not nullstr s_sce_lin
PROC LOGO
txdc ("****")
pause 4
txdc ("LOGO") ; Check this box if you DON'T want to log out!
F_Time=$TIME
statmsg "Easy change for the Procomm Plus DIGITAL extn sets program is complete`n`n at %s" F_TIME
endproc
PROC LD_LOGO
param integer i_mdm_clrdwn
if i_mdm_clrdwn
txdc ("")
waitfor "TTY"
pause 2
transmit "+++"
pause 2
waitfor "OK"
pause 2
txdc ("ATH0")
Capture Off
usermsg "Modem cleardown & easy change for the DIGITAL extn sets program is complete`n`n at %s" F_TIME
exit
else
txdc ("")
waitfor ">"
pause 2
endif
Capture Off
usermsg "Easy change for the Procomm Plus DIGITAL extn sets program is complete`n`n at %s" F_TIME
exit
endproc
PROC OVL014
STATMSG "Please wait 30 seconds as the TTY is already logged in!"
endproc
PROC ALARMS_LIST
; ######## TO CANCEL ANY ALARMS IN LD 32 AFTER CHANGES ARE MADE
; The information listed below has been taken from the "vkeys.inc" file.
; I have added in one ";" against each line for use with this file!.
; Should your copy of "vkeys.inc" be missing or damaged, then you can copy this
; section listed below with one of the ";" removed for each line!.
;;Definitions of standard virtual key code values
;;**********************************************************************
;;* VKEYS.INC
;;* Copyright (c) 1999 Symantec Corporation
;;*
;;* Definitions of standard virtual key code values. Use these macro
;;* definitions in your ASPECT script files rather than hard-coded
;;* constants to improve maintainability and readability. For more
;;* information, see the keyval and vkey conventions described in the
;;* Windows ASPECT Script Language reference manual.
;;**********************************************************************
;#ifndef _INC_VKEYS ; if file not already included
;#define _INC_VKEYS ; prevent further inclusion
;;**********************************************************************
;;* Macro definitions of standard virtual key code values
;;**********************************************************************
;#define VK_LBUTTON 0x01 ; Left mouse button
;#define VK_RBUTTON 0x02 ; Right mouse button
;#define VK_CANCEL 0x03 ; Ctrl-Break
;#define VK_MBUTTON 0x04 ; Middle mouse button
;; 0x05-0x07 ; Undefined
;#define VK_BACK 0x08 ; Backspace key
;#define VK_TAB 0x09 ; Tab key
;; 0x0A-0x0B ; Undefined
;#define VK_CLEAR 0x0C ; Clear key or Keypad 5 with Num lock off
;#define VK_RETURN 0x0D ; Enter or Return key
;; 0x0E-0x0F ; Undefined
;#define VK_SHIFT 0x10 ; Shift key
;#define VK_CONTROL 0x11 ; Control or Ctrl key
;#define VK_MENU 0x12 ; Menu or Alt key
;#define VK_pause 0x13 ; pause key
;#define VK_CAPITAL 0x14 ; Capital or Caps Lock key
;; 0x15-0x19 ; Reserved for Kanji Systems
;; 0x1A ; Undefined
;#define VK_ESCAPE 0x1B ; Esc or Escape key
;; 0x1C-0x1F ; Reserved for Kanji Systems
;#define VK_SPACE 0x20 ; Spacebar
;#define VK_PRIOR 0x21 ; Page Up key
;#define VK_NEXT 0x22 ; Page Down key
;#define VK_END 0x23 ; End key
;#define VK_HOME 0x24 ; Home key
;#define VK_LEFT 0x25 ; Left arrow key
;#define VK_UP 0x26 ; Up Arrow key
;#define VK_RIGHT 0x27 ; Right Arrow key
;#define VK_DOWN 0x28 ; Down Arrow key
;#define VK_SELECT 0x29 ; Select key
;#define VK_PRINT 0x2A ; Keyboard (OEM) specific
;#define VK_EXECUTE 0x2B ; Execute key
;#define VK_SNAPSHOT 0x2C ; Print Screen key
;#define VK_INSERT 0x2D ; Insert key
;#define VK_DELETE 0x2E ; Delete key
;#define VK_HELP 0x2F ; Help key
;#define VK_0 0x30 ; 0 key
;#define VK_1 0x31 ; 1 key
;#define VK_2 0x32 ; 2 key
;#define VK_3 0x33 ; 3 key
;#define VK_4 0x34 ; 4 key
;#define VK_5 0x35 ; 5 key
;#define VK_6 0x36 ; 6 key
;#define VK_7 0x37 ; 7 key
;#define VK_8 0x38 ; 8 key
;#define VK_9 0x39 ; 9 key
;; 0x3A-0x40 ; Undefined
;#define VK_A 0x41 ; A key
;#define VK_B 0x42 ; B key
;#define VK_C 0x43 ; C key
;#define VK_D 0x44 ; D key
;#define VK_E 0x45 ; E key
;#define VK_F 0x46 ; F key
;#define VK_G 0x47 ; G key
;#define VK_H 0x48 ; H key
;#define VK_I 0x49 ; I key
;#define VK_J 0x4A ; J key
;#define VK_K 0x4B ; K key
;#define VK_L 0x4C ; L key
;#define VK_M 0x4D ; M key
;#define VK_N 0x4E ; N key
;#define VK_O 0x4F ; O key
;#define VK_P 0x50 ; P key
;#define VK_Q 0x51 ; Q key
;#define VK_R 0x52 ; R key
;#define VK_S 0x53 ; S key
;#define VK_T 0x54 ; T key
;#define VK_U 0x55 ; U key
;#define VK_V 0x56 ; V key
;#define VK_W 0x57 ; W key
;#define VK_X 0x58 ; X key
;#define VK_Y 0x59 ; Y key
;#define VK_Z 0x5A ; Z key
;#define VK_WINDOWSL 0x5B ; Windows key (left)
;#define VK_WINDOWSR 0x5C ; Windows key (right)
;#define VK_APPLICATION 0x5D ; Application key
;; 0x5E-0x5F ; Undefined
;#define VK_NUMPAD0 0x60 ; Numeric Keypad 0
;#define VK_NUMPAD1 0x61 ; Numeric Keypad 1
;#define VK_NUMPAD2 0x62 ; Numeric Keypad 2
;#define VK_NUMPAD3 0x63 ; Numeric Keypad 3
;#define VK_NUMPAD4 0x64 ; Numeric Keypad 4
;#define VK_NUMPAD5 0x65 ; Numeric Keypad 5
;#define VK_NUMPAD6 0x66 ; Numeric Keypad 6
;#define VK_NUMPAD7 0x67 ; Numeric Keypad 7
;#define VK_NUMPAD8 0x68 ; Numeric Keypad 8
;#define VK_NUMPAD9 0x69 ; Numeric Keypad 9
;#define VK_MULTIPLY 0x6A ; Multiply key
;#define VK_ADD 0x6B ; Add key
;#define VK_SEPARATOR 0x6C ; Separator key
;#define VK_SUBTRACT 0x6D ; Subtract key
;#define VK_DECIMAL 0x6E ; Decimal key
;#define VK_DIVIDE 0x6F ; Divide key
;#define VK_F1 0x70 ; Function key F1
;#define VK_F2 0x71 ; Function key F2
;#define VK_F3 0x72 ; Function key F3
;#define VK_F4 0x73 ; Function key F4
;#define VK_F5 0x74 ; Function key F5
;#define VK_F6 0x75 ; Function key F6
;#define VK_F7 0x76 ; Function key F7
;#define VK_F8 0x77 ; Function key F8
;#define VK_F9 0x78 ; Function key F9
;#define VK_F10 0x79 ; Function key F10
;#define VK_F11 0x7A ; Function key F11
;#define VK_F12 0x7B ; Function key F12
;#define VK_F13 0x7C ; Function key F13
;#define VK_F14 0x7D ; Function key F14
;#define VK_F15 0x7E ; Function key F15
;#define VK_F16 0x7F ; Function key F16
;#define VK_F17 0x80 ; Function key F17
;#define VK_F18 0x81 ; Function key F18
;#define VK_F19 0x82 ; Function key F19
;#define VK_F20 0x83 ; Function key F20
;#define VK_F21 0x84 ; Function key F21
;#define VK_F22 0x85 ; Function key F22
;#define VK_F23 0x86 ; Function key F23
;#define VK_F24 0x87 ; Function key F24
;; 0x88-0x8F ; Unassigned
;#define VK_NUMLOCK 0x90 ; Num Lock key
;#define VK_OEM_SCROLL 0x91 ; Scroll Lock key
;; 0x92-0xB9 ; Unassigned
;; 0xBA-0xC0 ; Keyboard (OEM) specific
;; 0xC1-0xDA ; Unassigned
;; 0xDB-0xE4 ; Keyboard (OEM) specific
;; 0xE5 ; Unassigned
;; 0xE6 ; Keyboard (OEM) specific
;; 0xE7-0xE8 ; Unassigned
;; 0xE9-0xF5 ; Keyboard (OEM) specific
;; 0xF6-0xFE ; Unassigned
;;**********************************************************************
;;* Useful macros for testing and forming key values from keyboard
;;* shift states and virtual key code values.
;;**********************************************************************
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.