Request relevant data from KAPI at first. Then, perform SQL query with necesssary parameters, like staking_module_address, nonce and so on. The query depicted on the following code section: ```sql! START TRANSACTION; INSERT INTO public.meta_version ( block_number, block_hash, timestamp, status ) SELECT block_number, block_hash, timestamp, 0 FROM registry_meta__old LIMIT 1; WITH op_key_ids AS ( INSERT INTO public.node_operator_key ( "index", operator_index, operator_id, module_address) select "index", operator_index, NULL, '0x595F64Ddc3856a3b5Ff4f4CC1d1fb4B46cFd2bAC' from registry_key__old RETURNING * ) INSERT INTO public.node_operator_key_version( key_id, meta_version_id, key, deposit_signature, used) SELECT ks."id", mv.version_id, rkold.key, rkold.deposit_signature, rkold.used FROM op_key_ids ks INNER JOIN registry_key__old rkold ON rkold.index = ks.index AND rkold.operator_index = ks.operator_index CROSS JOIN meta_version mv ; WITH op_ids AS ( INSERT INTO public.node_operator("index", "name", module_address) SELECT "index", "name", '0x595F64Ddc3856a3b5Ff4f4CC1d1fb4B46cFd2bAC' FROM registry_operator__old RETURNING * ) INSERT INTO public.node_operator_version( operator_id, meta_version_id, active, "name", reward_address, staking_limit, stopped_validators, total_signing_keys, used_signing_keys ) SELECT os.id, mv.version_id, rold.active, rold."name", rold.reward_address, rold.staking_limit, rold.stopped_validators, rold.total_signing_keys, rold.used_signing_keys FROM op_ids os INNER JOIN registry_operator__old rold ON rold.index = os.index CROSS JOIN meta_version mv ; WITH sm_ids AS ( INSERT INTO public.staking_module( staking_module_id, staking_module_address, name, type) VALUES ( 1, '0x595F64Ddc3856a3b5Ff4f4CC1d1fb4B46cFd2bAC', 'curated-onchain-v1', 'curated-onchain-v1' ) RETURNING * ) INSERT INTO staking_module_version( staking_module_id, meta_version_id, staking_module_fee, treasury_fee, target_share, status, name, last_deposit_at, last_deposit_block, exited_validators_count, nonce ) SELECT si.staking_module_id, mv.version_id, 500 as staking_module_fee, 500 as treasury_fee, 10000 as target_share, 0 as status, 'curated-onchain-v1' as "name", 1699459536 as last_deposit_at, 275454 as last_deposit_block, 1 as exited_validators_count, 339 as nonce FROM sm_ids as si CROSS JOIN meta_version mv ; UPDATE meta_version SET status = 1 ; ROLLBACK TRANSACTION; COMMIT TRANSACTION; ``` Perform data binding for keys: ```sql! UPDATE node_operator_key as rk SET operator_id = oe.id FROM node_operator oe WHERE oe.index = rk.operator_index AND oe.module_address = rk.module_address AND rk.operator_id is null; UPDATE node_operator_key_version as kv SET node_operator_version_id = nov.version_id FROM node_operator_version as nov INNER JOIN node_operator as nop ON nop.id = nov.operator_id INNER JOIN node_operator_key as nok ON nok.operator_index = nop.index AND nok.module_address = nop.module_address WHERE kv.node_operator_version_id is null AND kv.meta_version_id = nov.meta_version_id AND kv.key_id = nok.id; ``` Perform data binding for node operators: ```sql! UPDATE node_operator oe SET staking_module_id = sm.id FROM staking_module sm WHERE sm.staking_module_address = oe.module_address AND oe.staking_module_id is null; UPDATE node_operator_version as nov SET staking_module_version_id = smv.version_id FROM staking_module_version as smv INNER JOIN staking_module as sm ON sm.id = smv.staking_module_id INNER JOIN node_operator as nop ON nop.module_address = sm.staking_module_address WHERE nop.id = nov.operator_id AND smv.meta_version_id = nov.meta_version_id; ``` Perform data binding for already existing relation between node operators and slots: ```sql! UPDATE slot_storage ss SET operator_version_id = ove.version_id FROM node_operator_version as ove INNER JOIN node_operator as op ON op.id = ove.operator_id WHERE ss.operator_index = op.index AND ove.meta_version_id IN ( SELECT mve.version_id FROM meta_version mve WHERE mve.status = 1 LIMIT 1 ) -- for testing purposes AND slot_number IN ( SELECT slot_number FROM slot_storage WHERE operator_index IS NOT NULL ORDER BY slot_number LIMIT 1 ) ; ```