dfgtnbcnnnnb vbnjjhghjhvchdgfkhjkkkkjkgfxngfgbbbbgggfgdjugrthhfcvcvccffdrsrsyyyeyytttdgggbchdhdhjdhdjjdfjjdjdjdjjgfgthnvhvnnjvmjvnnbnhcjjjjfhythnhbbg nn bbnjikriiikkkktlkjitiktkiijuujhgyfgfgfgbnn nbv bbb
functions,