diff --git a/docs/index.md b/docs/index.md index 60995bd7..081d196f 100644 --- a/docs/index.md +++ b/docs/index.md @@ -31,7 +31,7 @@ In order to run a local demo service based on the IEKit: 2. Fetch the IEKit. ```bash - autonomy fetch valory/impact_evaluator:0.1.0:bafybeifjktzzr6mag6b6hw6c4wmytzx4b6qdd4yg7ionldp3bx7ce53o3a --service + autonomy fetch valory/impact_evaluator:0.1.0:bafybeiequa2f4mihs32uuq7izqodnnm22n2eknohhjg3ecjbveq5pm7muu --service ``` 3. Build the Docker image of the service agents diff --git a/packages/packages.json b/packages/packages.json index d61f0c45..2cec9cf1 100644 --- a/packages/packages.json +++ b/packages/packages.json @@ -14,24 +14,24 @@ "connection/valory/twitter/0.1.0": "bafybeiffqsvt3i37sd5qdsmpzf5i4hm37uosbobyogg5oyosovjs66buni", "connection/valory/openai/0.1.0": "bafybeifz2n6s6u3zvvryhhxpkvn6guyp2jwpagtyjducvgwoldtmz7ea64", "connection/valory/farcaster/0.1.0": "bafybeibbdas7lxbipksodaphjms3uop7vnzjqkroktjq2g6wbvgtlldaxi", - "skill/valory/dynamic_nft_abci/0.1.0": "bafybeiefzzoht5se6g25dz7m5reag74alwgiuwpfhnyjuxs4cfosysrmey", - "skill/valory/twitter_scoring_abci/0.1.0": "bafybeibzufdrxy3zq52j6wd5ewebfh2bpituqoeafqnnoukzvqzzbav7oy", + "skill/valory/dynamic_nft_abci/0.1.0": "bafybeihiujrp5papummfkfbabwuhziie2y5f3x7y2rats6i7iuncto3yhm", + "skill/valory/twitter_scoring_abci/0.1.0": "bafybeihitc6jjvemw6t6rth5nseegkjg3ymr4hooggk4g6rdsxa2au3fle", "skill/valory/ceramic_read_abci/0.1.0": "bafybeigz7rzfls3niv3urfb4z4vwr525ooxveelgg3djpvkg5jzetxlm2u", "skill/valory/ceramic_write_abci/0.1.0": "bafybeic6c3iub3nsr5tmr7g5vzoixbin6w64ewudfiq6u4r2fiqwbg753i", - "skill/valory/impact_evaluator_abci/0.1.0": "bafybeifszzdlbkuc2wdvbd5dyqpnkly75d4z5qyzjwzfdpbals5s3sdcm4", - "skill/valory/generic_scoring_abci/0.1.0": "bafybeieq7m5puqjfgk73tewe5psmnibo7dud7bzhh6ra6xmavsfb3uyjxy", + "skill/valory/impact_evaluator_abci/0.1.0": "bafybeiabl5vcxuz3v27ljdku6nu42nj4shxcswtwgg4e6q72iicc2xgj34", + "skill/valory/generic_scoring_abci/0.1.0": "bafybeiaihmptaalhpv55mzqdrg6asmclh7icw5vyqv3rio7gygocdx7doq", "skill/valory/twitter_write_abci/0.1.0": "bafybeibp7zai2qwvfjd5fgpayx44x5c2zshbukpobvz2la7ws2l5f5fjde", "skill/valory/llm_abci/0.1.0": "bafybeib2k62hilwglfad33bzxkjlviw5bxwiw7z3rjvweyeamatdjznpeq", - "skill/valory/decision_making_abci/0.1.0": "bafybeic2tkfgwofeqcr2xvpsk7cjdsqfl5ac7ek7mrune6yvve4fqiepou", - "skill/valory/olas_week_abci/0.1.0": "bafybeib36ohnbn4otxlkrw4fx6tjysysd2rds7upqfbfk42rgp4xxxqeda", + "skill/valory/decision_making_abci/0.1.0": "bafybeiejtrllovij4ty56pczfgpnhohobqubr3qtw2oslvqxp2lwmibu4e", + "skill/valory/olas_week_abci/0.1.0": "bafybeibptel6eva6pfpzs6k7n7swrkx6imrlelfpuozygirvpkbucbzfii", "skill/valory/mech_interact_abci/0.1.0": "bafybeidaevbuo3srnvjtjnumqn6gjkcqogj5rmvl2dcwygvvhhskba4yza", "skill/valory/farcaster_write_abci/0.1.0": "bafybeigx2wyujnojer7er7g2eufm5lojon2dckotvsgwb6tn5iyiwdfgsu", "skill/valory/farcaster_test_abci/0.1.0": "bafybeihd3h37ngkxlqo6o3vuvdik54bwmbrjmqcxtgsr5is3tqgbk73yoa", "skill/valory/staking_abci/0.1.0": "bafybeidgmviq6inwwjachktoeddmyuo7iyg7yfyhvhvy3znndkvuuudllq", - "agent/valory/impact_evaluator/0.1.0": "bafybeigw5gabgs23sq55tjq7gly2plkqefia5w3jn7k72hya6upzc6yzou", + "agent/valory/impact_evaluator/0.1.0": "bafybeig4y74umrsll4iahg4xslhfphq33ets4qr72a4kg7savt5mkockem", "agent/valory/farcaster_test/0.1.0": "bafybeiefui6dnhhy5leqyvfrbkeleb64gap5tzctkrzzggjf4ubbxamjvy", - "service/valory/impact_evaluator/0.1.0": "bafybeifjktzzr6mag6b6hw6c4wmytzx4b6qdd4yg7ionldp3bx7ce53o3a", - "service/valory/impact_evaluator_local/0.1.0": "bafybeibb24y5hxgyy2uvcbg3f5hfuckxdlqeosmapqo5kihkj6gsw2trfa" + "service/valory/impact_evaluator/0.1.0": "bafybeiequa2f4mihs32uuq7izqodnnm22n2eknohhjg3ecjbveq5pm7muu", + "service/valory/impact_evaluator_local/0.1.0": "bafybeiafc4eyos4rcfidacg7qqvlnmzqb3uq75tqbtrqq6q2xnat5vhigi" }, "third_party": { "protocol/open_aea/signing/1.0.0": "bafybeihv62fim3wl2bayavfcg3u5e5cxu3b7brtu4cn5xoxd6lqwachasi", diff --git a/packages/valory/agents/impact_evaluator/aea-config.yaml b/packages/valory/agents/impact_evaluator/aea-config.yaml index a05c0d57..574e5452 100644 --- a/packages/valory/agents/impact_evaluator/aea-config.yaml +++ b/packages/valory/agents/impact_evaluator/aea-config.yaml @@ -45,20 +45,20 @@ protocols: skills: - valory/abstract_abci:0.1.0:bafybeieo7pe5wqjphs5izpz5aujjbubymlxub62b3rhx6yglu65ibalffu - valory/abstract_round_abci:0.1.0:bafybeibiw4oqwqvo4jccwz5fb73iardzychgvcl66tceiildohoju2ikti -- valory/impact_evaluator_abci:0.1.0:bafybeifszzdlbkuc2wdvbd5dyqpnkly75d4z5qyzjwzfdpbals5s3sdcm4 -- valory/generic_scoring_abci:0.1.0:bafybeieq7m5puqjfgk73tewe5psmnibo7dud7bzhh6ra6xmavsfb3uyjxy -- valory/twitter_scoring_abci:0.1.0:bafybeibzufdrxy3zq52j6wd5ewebfh2bpituqoeafqnnoukzvqzzbav7oy +- valory/impact_evaluator_abci:0.1.0:bafybeiabl5vcxuz3v27ljdku6nu42nj4shxcswtwgg4e6q72iicc2xgj34 +- valory/generic_scoring_abci:0.1.0:bafybeiaihmptaalhpv55mzqdrg6asmclh7icw5vyqv3rio7gygocdx7doq +- valory/twitter_scoring_abci:0.1.0:bafybeihitc6jjvemw6t6rth5nseegkjg3ymr4hooggk4g6rdsxa2au3fle - valory/ceramic_read_abci:0.1.0:bafybeigz7rzfls3niv3urfb4z4vwr525ooxveelgg3djpvkg5jzetxlm2u - valory/ceramic_write_abci:0.1.0:bafybeic6c3iub3nsr5tmr7g5vzoixbin6w64ewudfiq6u4r2fiqwbg753i -- valory/dynamic_nft_abci:0.1.0:bafybeiefzzoht5se6g25dz7m5reag74alwgiuwpfhnyjuxs4cfosysrmey +- valory/dynamic_nft_abci:0.1.0:bafybeihiujrp5papummfkfbabwuhziie2y5f3x7y2rats6i7iuncto3yhm - valory/registration_abci:0.1.0:bafybeib3n6vqkfbrcubcbliebjnuwyywdinxkbzt76n6gbn2kg7ace47dq - valory/reset_pause_abci:0.1.0:bafybeihkj6lmaypspyxe5qqrjgnolyck62pyvqoylr24ab6ue4steqcw7e - valory/termination_abci:0.1.0:bafybeifi2uodnrjsrivj53g3sjutocmyusbx6mlsb6oanqdyt2mfbyvusy - valory/transaction_settlement_abci:0.1.0:bafybeigh2vkt74jrad5gtsczrgqcuhcqe7jkgjy7jdw56yamlzwwnaymjy - valory/twitter_write_abci:0.1.0:bafybeibp7zai2qwvfjd5fgpayx44x5c2zshbukpobvz2la7ws2l5f5fjde -- valory/decision_making_abci:0.1.0:bafybeic2tkfgwofeqcr2xvpsk7cjdsqfl5ac7ek7mrune6yvve4fqiepou +- valory/decision_making_abci:0.1.0:bafybeiejtrllovij4ty56pczfgpnhohobqubr3qtw2oslvqxp2lwmibu4e - valory/llm_abci:0.1.0:bafybeib2k62hilwglfad33bzxkjlviw5bxwiw7z3rjvweyeamatdjznpeq -- valory/olas_week_abci:0.1.0:bafybeib36ohnbn4otxlkrw4fx6tjysysd2rds7upqfbfk42rgp4xxxqeda +- valory/olas_week_abci:0.1.0:bafybeibptel6eva6pfpzs6k7n7swrkx6imrlelfpuozygirvpkbucbzfii - valory/mech_interact_abci:0.1.0:bafybeidaevbuo3srnvjtjnumqn6gjkcqogj5rmvl2dcwygvvhhskba4yza - valory/staking_abci:0.1.0:bafybeidgmviq6inwwjachktoeddmyuo7iyg7yfyhvhvy3znndkvuuudllq default_ledger: ethereum diff --git a/packages/valory/services/impact_evaluator/service.yaml b/packages/valory/services/impact_evaluator/service.yaml index 389f08ae..0f8e425b 100644 --- a/packages/valory/services/impact_evaluator/service.yaml +++ b/packages/valory/services/impact_evaluator/service.yaml @@ -8,7 +8,7 @@ license: Apache-2.0 fingerprint: README.md: bafybeign56hilwuoa6bgos3uqabss4gew4vadkik7vhj3ucpqw6nxtqtpe fingerprint_ignore_patterns: [] -agent: valory/impact_evaluator:0.1.0:bafybeigw5gabgs23sq55tjq7gly2plkqefia5w3jn7k72hya6upzc6yzou +agent: valory/impact_evaluator:0.1.0:bafybeig4y74umrsll4iahg4xslhfphq33ets4qr72a4kg7savt5mkockem number_of_agents: 4 deployment: agent: diff --git a/packages/valory/services/impact_evaluator_local/service.yaml b/packages/valory/services/impact_evaluator_local/service.yaml index 00b80f74..cd3aebbe 100644 --- a/packages/valory/services/impact_evaluator_local/service.yaml +++ b/packages/valory/services/impact_evaluator_local/service.yaml @@ -8,7 +8,7 @@ license: Apache-2.0 fingerprint: README.md: bafybeign56hilwuoa6bgos3uqabss4gew4vadkik7vhj3ucpqw6nxtqtpe fingerprint_ignore_patterns: [] -agent: valory/impact_evaluator:0.1.0:bafybeigw5gabgs23sq55tjq7gly2plkqefia5w3jn7k72hya6upzc6yzou +agent: valory/impact_evaluator:0.1.0:bafybeig4y74umrsll4iahg4xslhfphq33ets4qr72a4kg7savt5mkockem number_of_agents: 1 deployment: agent: diff --git a/packages/valory/skills/decision_making_abci/skill.yaml b/packages/valory/skills/decision_making_abci/skill.yaml index e40ef6ee..df389715 100644 --- a/packages/valory/skills/decision_making_abci/skill.yaml +++ b/packages/valory/skills/decision_making_abci/skill.yaml @@ -14,7 +14,7 @@ fingerprint: models.py: bafybeievjcjj4y5wr33xaycfrb6ve55ngr2pi4rjq6wlpedxjr7enrgvvu payloads.py: bafybeic6jrms2xs2odykwwngr5yyqm6cus7cyihdbxux26glpq3573q3ay rounds.py: bafybeiboeza3rdqwynloozpuugdcw7s63ukkxsupwspc4mfhrhr6mu3tey - tasks/campaign_validation_preparation.py: bafybeiajrw52olpckrc6xxiz5ndbxpb3p66p3ikgtdngwuj5qwaleunzpy + tasks/campaign_validation_preparation.py: bafybeiafgc7lzgtl6qwo3qsdpskipm4qeby6c5nmltm4x4yp3zcwn5a6z4 tasks/finished_pipeline_preparation.py: bafybeid652b53p7mtsbj3ksko3g2eezvg4nut2vukwvnfhxyfi4zkx3dym tasks/llm_preparation.py: bafybeigivqniwvqzmhpqytrn5gz3gb5caa6nlvctkbycbk4cmtut6hvuvi tasks/read_stream_preparation.py: bafybeicmjasiyecopfweobodzbmn3tbluu5q724uzzqkit6urn3lb5q354 @@ -31,7 +31,7 @@ fingerprint: tests/__init__.py: bafybeiff447fuzkdgyp5yoqqstzv2pyi2uiokng6lzrtfnsgspocghwypi tests/centaur_configs.py: bafybeigkr2n3l7ibtxtwf5w2t6fygxxt5headnic4lh6wrs6tcbb2ghqgi tests/test_behaviours.py: bafybeigt4ifqyyw23ejypquaqgecjrgmvtrgxustwmzucolgm6kr5gzdnu - tests/test_campaign_validation.py: bafybeid745ps5z5bgujkwbku6ci3gx6mobo6m3sbqxkiut67ffcsx5ueuy + tests/test_campaign_validation.py: bafybeihpfaqjevuprse5uesw5ascbzyxylldcnpkjfuey7ytspriq2p5pu tests/test_ceramic_db.py: bafybeibfyfyk6acgd33y5hnmcxosrmzw7rm76fcmkjrwxyeac2q47migre tests/test_dialogues.py: bafybeihxzcyy7xvg4lte4bv5hy2h4mozdzwvyaa36feu3oxv67jfvsyuoi tests/test_finished_pipeline_preparation.py: bafybeidlz77tnfif5ajq4ikrlo4mv7ssy3wghvkwolyid3f3dd3scfbblq diff --git a/packages/valory/skills/decision_making_abci/tasks/campaign_validation_preparation.py b/packages/valory/skills/decision_making_abci/tasks/campaign_validation_preparation.py index 1c872b62..7a815f8c 100644 --- a/packages/valory/skills/decision_making_abci/tasks/campaign_validation_preparation.py +++ b/packages/valory/skills/decision_making_abci/tasks/campaign_validation_preparation.py @@ -48,6 +48,7 @@ def check_extra_conditions(self): def _pre_task(self): """Preparations before running the task""" + yield centaurs_data = self.synchronized_data.centaurs_data current_centaur = centaurs_data[self.synchronized_data.current_centaur_index] updates = {} diff --git a/packages/valory/skills/decision_making_abci/tests/test_campaign_validation.py b/packages/valory/skills/decision_making_abci/tests/test_campaign_validation.py index 46a11093..9436a14c 100644 --- a/packages/valory/skills/decision_making_abci/tests/test_campaign_validation.py +++ b/packages/valory/skills/decision_making_abci/tests/test_campaign_validation.py @@ -120,8 +120,8 @@ def _pre_task_base_test(self, test_case: CampaignValidationTestCase): return updates, event -class TestTweetValidationPreparation(BaseCampaignValidationPreparationTest): - """Test the TweetValidationPreparation class.""" +class TestCampaignValidationPreparation(BaseCampaignValidationPreparationTest): + """Test the CampaignValidationPreparation class.""" @pytest.mark.parametrize( "test_case", @@ -259,7 +259,7 @@ def test_pre_task( self.create_tweet_validation_object( test_case.campaign_validation_preparation_class ) - updates, event = self._pre_task_base_test(test_case) + updates, event = yield from self._pre_task_base_test(test_case) assert event == Event.TWEET_VALIDATION.value assert updates["has_centaurs_changes"] is test_case.has_updates diff --git a/packages/valory/skills/dynamic_nft_abci/skill.yaml b/packages/valory/skills/dynamic_nft_abci/skill.yaml index 5bb309cf..91a077ad 100644 --- a/packages/valory/skills/dynamic_nft_abci/skill.yaml +++ b/packages/valory/skills/dynamic_nft_abci/skill.yaml @@ -31,7 +31,7 @@ protocols: - valory/http:1.0.0:bafybeifugzl63kfdmwrxwphrnrhj7bn6iruxieme3a4ntzejf6kmtuwmae skills: - valory/abstract_round_abci:0.1.0:bafybeibiw4oqwqvo4jccwz5fb73iardzychgvcl66tceiildohoju2ikti -- valory/decision_making_abci:0.1.0:bafybeic2tkfgwofeqcr2xvpsk7cjdsqfl5ac7ek7mrune6yvve4fqiepou +- valory/decision_making_abci:0.1.0:bafybeiejtrllovij4ty56pczfgpnhohobqubr3qtw2oslvqxp2lwmibu4e behaviours: main: args: {} diff --git a/packages/valory/skills/generic_scoring_abci/skill.yaml b/packages/valory/skills/generic_scoring_abci/skill.yaml index 7bbb8e0a..bcd4143f 100644 --- a/packages/valory/skills/generic_scoring_abci/skill.yaml +++ b/packages/valory/skills/generic_scoring_abci/skill.yaml @@ -28,7 +28,7 @@ contracts: [] protocols: [] skills: - valory/abstract_round_abci:0.1.0:bafybeibiw4oqwqvo4jccwz5fb73iardzychgvcl66tceiildohoju2ikti -- valory/decision_making_abci:0.1.0:bafybeic2tkfgwofeqcr2xvpsk7cjdsqfl5ac7ek7mrune6yvve4fqiepou +- valory/decision_making_abci:0.1.0:bafybeiejtrllovij4ty56pczfgpnhohobqubr3qtw2oslvqxp2lwmibu4e behaviours: main: args: {} diff --git a/packages/valory/skills/impact_evaluator_abci/skill.yaml b/packages/valory/skills/impact_evaluator_abci/skill.yaml index f3da6115..954deda6 100644 --- a/packages/valory/skills/impact_evaluator_abci/skill.yaml +++ b/packages/valory/skills/impact_evaluator_abci/skill.yaml @@ -25,18 +25,18 @@ protocols: [] skills: - valory/abstract_round_abci:0.1.0:bafybeibiw4oqwqvo4jccwz5fb73iardzychgvcl66tceiildohoju2ikti - valory/ceramic_read_abci:0.1.0:bafybeigz7rzfls3niv3urfb4z4vwr525ooxveelgg3djpvkg5jzetxlm2u -- valory/generic_scoring_abci:0.1.0:bafybeieq7m5puqjfgk73tewe5psmnibo7dud7bzhh6ra6xmavsfb3uyjxy -- valory/twitter_scoring_abci:0.1.0:bafybeibzufdrxy3zq52j6wd5ewebfh2bpituqoeafqnnoukzvqzzbav7oy +- valory/generic_scoring_abci:0.1.0:bafybeiaihmptaalhpv55mzqdrg6asmclh7icw5vyqv3rio7gygocdx7doq +- valory/twitter_scoring_abci:0.1.0:bafybeihitc6jjvemw6t6rth5nseegkjg3ymr4hooggk4g6rdsxa2au3fle - valory/ceramic_write_abci:0.1.0:bafybeic6c3iub3nsr5tmr7g5vzoixbin6w64ewudfiq6u4r2fiqwbg753i -- valory/dynamic_nft_abci:0.1.0:bafybeiefzzoht5se6g25dz7m5reag74alwgiuwpfhnyjuxs4cfosysrmey +- valory/dynamic_nft_abci:0.1.0:bafybeihiujrp5papummfkfbabwuhziie2y5f3x7y2rats6i7iuncto3yhm - valory/registration_abci:0.1.0:bafybeib3n6vqkfbrcubcbliebjnuwyywdinxkbzt76n6gbn2kg7ace47dq - valory/reset_pause_abci:0.1.0:bafybeihkj6lmaypspyxe5qqrjgnolyck62pyvqoylr24ab6ue4steqcw7e - valory/termination_abci:0.1.0:bafybeifi2uodnrjsrivj53g3sjutocmyusbx6mlsb6oanqdyt2mfbyvusy - valory/transaction_settlement_abci:0.1.0:bafybeigh2vkt74jrad5gtsczrgqcuhcqe7jkgjy7jdw56yamlzwwnaymjy -- valory/decision_making_abci:0.1.0:bafybeic2tkfgwofeqcr2xvpsk7cjdsqfl5ac7ek7mrune6yvve4fqiepou +- valory/decision_making_abci:0.1.0:bafybeiejtrllovij4ty56pczfgpnhohobqubr3qtw2oslvqxp2lwmibu4e - valory/llm_abci:0.1.0:bafybeib2k62hilwglfad33bzxkjlviw5bxwiw7z3rjvweyeamatdjznpeq - valory/twitter_write_abci:0.1.0:bafybeibp7zai2qwvfjd5fgpayx44x5c2zshbukpobvz2la7ws2l5f5fjde -- valory/olas_week_abci:0.1.0:bafybeib36ohnbn4otxlkrw4fx6tjysysd2rds7upqfbfk42rgp4xxxqeda +- valory/olas_week_abci:0.1.0:bafybeibptel6eva6pfpzs6k7n7swrkx6imrlelfpuozygirvpkbucbzfii - valory/mech_interact_abci:0.1.0:bafybeidaevbuo3srnvjtjnumqn6gjkcqogj5rmvl2dcwygvvhhskba4yza - valory/staking_abci:0.1.0:bafybeidgmviq6inwwjachktoeddmyuo7iyg7yfyhvhvy3znndkvuuudllq behaviours: diff --git a/packages/valory/skills/olas_week_abci/skill.yaml b/packages/valory/skills/olas_week_abci/skill.yaml index ccbed446..1727cb7c 100644 --- a/packages/valory/skills/olas_week_abci/skill.yaml +++ b/packages/valory/skills/olas_week_abci/skill.yaml @@ -31,7 +31,7 @@ protocols: - valory/llm:1.0.0:bafybeihj2orqapokafg7co3wlogwgf6cckaaj2bz3nuv4rm3opkoyhrlp4 skills: - valory/abstract_round_abci:0.1.0:bafybeibiw4oqwqvo4jccwz5fb73iardzychgvcl66tceiildohoju2ikti -- valory/decision_making_abci:0.1.0:bafybeic2tkfgwofeqcr2xvpsk7cjdsqfl5ac7ek7mrune6yvve4fqiepou +- valory/decision_making_abci:0.1.0:bafybeiejtrllovij4ty56pczfgpnhohobqubr3qtw2oslvqxp2lwmibu4e behaviours: main: args: {} diff --git a/packages/valory/skills/twitter_scoring_abci/skill.yaml b/packages/valory/skills/twitter_scoring_abci/skill.yaml index b990e35b..b654fd72 100644 --- a/packages/valory/skills/twitter_scoring_abci/skill.yaml +++ b/packages/valory/skills/twitter_scoring_abci/skill.yaml @@ -32,7 +32,7 @@ protocols: - valory/contract_api:1.0.0:bafybeidgu7o5llh26xp3u3ebq3yluull5lupiyeu6iooi2xyymdrgnzq5i skills: - valory/abstract_round_abci:0.1.0:bafybeibiw4oqwqvo4jccwz5fb73iardzychgvcl66tceiildohoju2ikti -- valory/decision_making_abci:0.1.0:bafybeic2tkfgwofeqcr2xvpsk7cjdsqfl5ac7ek7mrune6yvve4fqiepou +- valory/decision_making_abci:0.1.0:bafybeiejtrllovij4ty56pczfgpnhohobqubr3qtw2oslvqxp2lwmibu4e - valory/mech_interact_abci:0.1.0:bafybeidaevbuo3srnvjtjnumqn6gjkcqogj5rmvl2dcwygvvhhskba4yza behaviours: main: