id val 001Espresso 002Espresso_Macchiato 003Caffe_Crema 004Cappuccino 005Latte_Macchiato 006Milchkaffee 007Ristretto 008Milchschaum 009Warme_Milch 010Kleiner_Brauner 001DPEspresso Kaffee_gesamt 002DPEspresso_Macchiato 003DPCaffe_Crema 004DPCappuccino 005DPLatte_Macchiato 006DPMilchkaffee 007DPRistretto 008DPMilchschaum 009DPWarme_Milch 010DPKleiner_Brauner Kaffeesorte aWYoZ2V0T2JqZWN0KGlkKS5jb21tb24uc3RhdGVzKSByZXR1cm4gZ2V0T2JqZWN0KGlkKS5jb21tb24uc3RhdGVzW3ZhbF07CnJldHVybiBpZCArICcgRGllc2VyIERhdGVucHVua3QgaGF0IGtlaW5lbiBadXN0YW5kICEnOw== Beschreibe diese Funktion … Datenpunkt_in_0_userdata_anlegen Ly8gRGF0ZW5wdW5rdCB1bnRlciAwX3VzZXJkYXRhLjAgZXJzdGVsbGVuCmNvbnN0IGRwMDAwID0gJ0Jvc2NoLkthZmZlZW1hc2NoaW5lLkthZmZlZXNvcnRlLjAwMFNvcnRlX2FrdHVlbGwnOwpjb25zdCBkdHAwMDAgPSB7dHlwZTogJ3N0cmluZycsIHJlYWQ6IHRydWUsIHdyaXRlOiBmYWxzZSwgbmFtZTogJzAwMFNvcnRlX2FrdHVlbGwnLHJvbGU6ICdzdHJpbmcnfTsKIApmdW5jdGlvbiBjcmVhdGVEcDAwMChpZCwgY29tbW9uKSB7CiAgICBpZigkKGlkKS5sZW5ndGgpIGxvZygnRGF0ZW5wdW5rdCAnICsgaWQgKyAnIGV4aXN0aWVydCBiZXJlaXRzICEnLCAnd2FybicpOwogICAgZWxzZSB7CiAgICAgICAgdmFyIG9iaiA9IHt9OwogICAgICAgIG9iai50eXBlID0gJ3N0YXRlJzsKICAgICAgICBvYmouY29tbW9uID0gY29tbW9uOwogICAgICAgIG9iai5uYXRpdmUgPSB7fTsKICAgICAgICBzZXRPYmplY3QoaWQsIG9iaiwgZnVuY3Rpb24gKGVycikgewogICAgICAgICAgICBpZiAoZXJyKSBsb2coJ0Nhbm5vdCB3cml0ZSBvYmplY3Q6ICcgKyBlcnIpCiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgdmFyIGluaXQgPSBudWxsOwogICAgICAgICAgICAgICAgaWYoY29tbW9uLmRlZiA9PT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgICAgICAgICAgaWYoY29tbW9uLnR5cGUgPT09ICdudW1iZXInKSBpbml0ID0gMDsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ2Jvb2xlYW4nKSBpbml0ID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgaWYoY29tbW9uLnR5cGUgPT09ICdzdHJpbmcnKSBpbml0ID0gJ25vY2ggbGVlcic7CiAgICAgICAgICAgICAgICB9IGVsc2UgaW5pdCA9IGNvbW1vbi5kZWY7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge3NldFN0YXRlKGlkLCBpbml0LCB0cnVlKTt9LDEwMDApOwogICAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICB9Cn0KY3JlYXRlRHAwMDAoJzBfdXNlcmRhdGEuMC4nICsgZHAwMDAsIGR0cDAwMCk7CgovLyBEYXRlbnB1bmt0IHVudGVyIDBfdXNlcmRhdGEuMCBlcnN0ZWxsZW4KY29uc3QgZHAwMDEgPSAnQm9zY2guS2FmZmVlbWFzY2hpbmUuS2FmZmVlc29ydGUuMDAxRXNwcmVzc29fQW56YWhsJzsKY29uc3QgZHRwMDAxID0ge3R5cGU6ICdudW1iZXInLCB1bml0OiAnRXNwcmVzc28nLCByZWFkOiB0cnVlLCB3cml0ZTogZmFsc2UsIG5hbWU6ICcwMDFFc3ByZXNzb19BbnphaGwnLHJvbGU6ICdudW1iZXInfTsKIApmdW5jdGlvbiBjcmVhdGVEcDAwMShpZCwgY29tbW9uKSB7CiAgICBpZigkKGlkKS5sZW5ndGgpIGxvZygnRGF0ZW5wdW5rdCAnICsgaWQgKyAnIGV4aXN0aWVydCBiZXJlaXRzICEnLCAnd2FybicpOwogICAgZWxzZSB7CiAgICAgICAgdmFyIG9iaiA9IHt9OwogICAgICAgIG9iai50eXBlID0gJ3N0YXRlJzsKICAgICAgICBvYmouY29tbW9uID0gY29tbW9uOwogICAgICAgIG9iai5uYXRpdmUgPSB7fTsKICAgICAgICBzZXRPYmplY3QoaWQsIG9iaiwgZnVuY3Rpb24gKGVycikgewogICAgICAgICAgICBpZiAoZXJyKSBsb2coJ0Nhbm5vdCB3cml0ZSBvYmplY3Q6ICcgKyBlcnIpCiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgdmFyIGluaXQgPSBudWxsOwogICAgICAgICAgICAgICAgaWYoY29tbW9uLmRlZiA9PT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgICAgICAgICAgaWYoY29tbW9uLnR5cGUgPT09ICdudW1iZXInKSBpbml0ID0gMDsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ2Jvb2xlYW4nKSBpbml0ID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgaWYoY29tbW9uLnR5cGUgPT09ICdzdHJpbmcnKSBpbml0ID0gJ25vY2ggbGVlcic7CiAgICAgICAgICAgICAgICB9IGVsc2UgaW5pdCA9IGNvbW1vbi5kZWY7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge3NldFN0YXRlKGlkLCBpbml0LCB0cnVlKTt9LDEwMDApOwogICAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICB9Cn0KY3JlYXRlRHAwMDEoJzBfdXNlcmRhdGEuMC4nICsgZHAwMDEsIGR0cDAwMSk7CgovLyBEYXRlbnB1bmt0IHVudGVyIDBfdXNlcmRhdGEuMCBlcnN0ZWxsZW4KY29uc3QgZHAwMDIgPSAnQm9zY2guS2FmZmVlbWFzY2hpbmUuS2FmZmVlc29ydGUuMDAyRXNwcmVzc29NYWNjaGlhdG9fQW56YWhsJzsKY29uc3QgZHRwMDAyID0ge3R5cGU6ICdudW1iZXInLCB1bml0OiAnRXNwcmVzc28gTWFjY2hpYXRvJywgcmVhZDogdHJ1ZSwgd3JpdGU6IGZhbHNlLCBuYW1lOiAnMDAyRXNwcmVzc29NYWNjaGlhdG9fQW56YWhsJyxyb2xlOiAnbnVtYmVyJ307CiAKZnVuY3Rpb24gY3JlYXRlRHAwMDIoaWQsIGNvbW1vbikgewogICAgaWYoJChpZCkubGVuZ3RoKSBsb2coJ0RhdGVucHVua3QgJyArIGlkICsgJyBleGlzdGllcnQgYmVyZWl0cyAhJywgJ3dhcm4nKTsKICAgIGVsc2UgewogICAgICAgIHZhciBvYmogPSB7fTsKICAgICAgICBvYmoudHlwZSA9ICdzdGF0ZSc7CiAgICAgICAgb2JqLmNvbW1vbiA9IGNvbW1vbjsKICAgICAgICBvYmoubmF0aXZlID0ge307CiAgICAgICAgc2V0T2JqZWN0KGlkLCBvYmosIGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICAgICAgaWYgKGVycikgbG9nKCdDYW5ub3Qgd3JpdGUgb2JqZWN0OiAnICsgZXJyKQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIHZhciBpbml0ID0gbnVsbDsKICAgICAgICAgICAgICAgIGlmKGNvbW1vbi5kZWYgPT09IHVuZGVmaW5lZCkgewogICAgICAgICAgICAgICAgICAgIGlmKGNvbW1vbi50eXBlID09PSAnbnVtYmVyJykgaW5pdCA9IDA7CiAgICAgICAgICAgICAgICAgICAgaWYoY29tbW9uLnR5cGUgPT09ICdib29sZWFuJykgaW5pdCA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAgIGlmKGNvbW1vbi50eXBlID09PSAnc3RyaW5nJykgaW5pdCA9ICdub2NoIGxlZXInOwogICAgICAgICAgICAgICAgfSBlbHNlIGluaXQgPSBjb21tb24uZGVmOwogICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtzZXRTdGF0ZShpZCwgaW5pdCwgdHJ1ZSk7fSwxMDAwKTsKICAgICAgICAgICAgfQogICAgICAgIH0pOwogICAgfQp9CmNyZWF0ZURwMDAyKCcwX3VzZXJkYXRhLjAuJyArIGRwMDAyLCBkdHAwMDIpOwoKLy8gRGF0ZW5wdW5rdCB1bnRlciAwX3VzZXJkYXRhLjAgZXJzdGVsbGVuCmNvbnN0IGRwMDAzID0gJ0Jvc2NoLkthZmZlZW1hc2NoaW5lLkthZmZlZXNvcnRlLjAwM0NhZmZlQ3JlbWFfQW56YWhsJzsKY29uc3QgZHRwMDAzID0ge3R5cGU6ICdudW1iZXInLCB1bml0OiAnQ2FmZmUgQ3JlbWEnLCByZWFkOiB0cnVlLCB3cml0ZTogZmFsc2UsIG5hbWU6ICcwMDNDYWZmZUNyZW1hX0FuemFobCcscm9sZTogJ251bWJlcid9OwogCmZ1bmN0aW9uIGNyZWF0ZURwMDAzKGlkLCBjb21tb24pIHsKICAgIGlmKCQoaWQpLmxlbmd0aCkgbG9nKCdEYXRlbnB1bmt0ICcgKyBpZCArICcgZXhpc3RpZXJ0IGJlcmVpdHMgIScsICd3YXJuJyk7CiAgICBlbHNlIHsKICAgICAgICB2YXIgb2JqID0ge307CiAgICAgICAgb2JqLnR5cGUgPSAnc3RhdGUnOwogICAgICAgIG9iai5jb21tb24gPSBjb21tb247CiAgICAgICAgb2JqLm5hdGl2ZSA9IHt9OwogICAgICAgIHNldE9iamVjdChpZCwgb2JqLCBmdW5jdGlvbiAoZXJyKSB7CiAgICAgICAgICAgIGlmIChlcnIpIGxvZygnQ2Fubm90IHdyaXRlIG9iamVjdDogJyArIGVycikKICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICB2YXIgaW5pdCA9IG51bGw7CiAgICAgICAgICAgICAgICBpZihjb21tb24uZGVmID09PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ251bWJlcicpIGluaXQgPSAwOwogICAgICAgICAgICAgICAgICAgIGlmKGNvbW1vbi50eXBlID09PSAnYm9vbGVhbicpIGluaXQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ3N0cmluZycpIGluaXQgPSAnbm9jaCBsZWVyJzsKICAgICAgICAgICAgICAgIH0gZWxzZSBpbml0ID0gY29tbW9uLmRlZjsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7c2V0U3RhdGUoaWQsIGluaXQsIHRydWUpO30sMTAwMCk7CiAgICAgICAgICAgIH0KICAgICAgICB9KTsKICAgIH0KfQpjcmVhdGVEcDAwMygnMF91c2VyZGF0YS4wLicgKyBkcDAwMywgZHRwMDAzKTsKCi8vIERhdGVucHVua3QgdW50ZXIgMF91c2VyZGF0YS4wIGVyc3RlbGxlbgpjb25zdCBkcDAwNCA9ICdCb3NjaC5LYWZmZWVtYXNjaGluZS5LYWZmZWVzb3J0ZS4wMDRDYXBwdWNjaW5vX0FuemFobCc7CmNvbnN0IGR0cDAwNCA9IHt0eXBlOiAnbnVtYmVyJywgdW5pdDogJ0NhcHB1Y2Npbm8nLHJlYWQ6IHRydWUsIHdyaXRlOiBmYWxzZSwgbmFtZTogJzAwNENhcHB1Y2Npbm9fQW56YWhsJyxyb2xlOiAnbnVtYmVyJ307CiAKZnVuY3Rpb24gY3JlYXRlRHAwMDQoaWQsIGNvbW1vbikgewogICAgaWYoJChpZCkubGVuZ3RoKSBsb2coJ0RhdGVucHVua3QgJyArIGlkICsgJyBleGlzdGllcnQgYmVyZWl0cyAhJywgJ3dhcm4nKTsKICAgIGVsc2UgewogICAgICAgIHZhciBvYmogPSB7fTsKICAgICAgICBvYmoudHlwZSA9ICdzdGF0ZSc7CiAgICAgICAgb2JqLmNvbW1vbiA9IGNvbW1vbjsKICAgICAgICBvYmoubmF0aXZlID0ge307CiAgICAgICAgc2V0T2JqZWN0KGlkLCBvYmosIGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICAgICAgaWYgKGVycikgbG9nKCdDYW5ub3Qgd3JpdGUgb2JqZWN0OiAnICsgZXJyKQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgIHZhciBpbml0ID0gbnVsbDsKICAgICAgICAgICAgICAgIGlmKGNvbW1vbi5kZWYgPT09IHVuZGVmaW5lZCkgewogICAgICAgICAgICAgICAgICAgIGlmKGNvbW1vbi50eXBlID09PSAnbnVtYmVyJykgaW5pdCA9IDA7CiAgICAgICAgICAgICAgICAgICAgaWYoY29tbW9uLnR5cGUgPT09ICdib29sZWFuJykgaW5pdCA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAgIGlmKGNvbW1vbi50eXBlID09PSAnc3RyaW5nJykgaW5pdCA9ICdub2NoIGxlZXInOwogICAgICAgICAgICAgICAgfSBlbHNlIGluaXQgPSBjb21tb24uZGVmOwogICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHtzZXRTdGF0ZShpZCwgaW5pdCwgdHJ1ZSk7fSwxMDAwKTsKICAgICAgICAgICAgfQogICAgICAgIH0pOwogICAgfQp9CmNyZWF0ZURwMDA0KCcwX3VzZXJkYXRhLjAuJyArIGRwMDA0LCBkdHAwMDQpOwoKLy8gRGF0ZW5wdW5rdCB1bnRlciAwX3VzZXJkYXRhLjAgZXJzdGVsbGVuCmNvbnN0IGRwMDA1ID0gJ0Jvc2NoLkthZmZlZW1hc2NoaW5lLkthZmZlZXNvcnRlLjAwNUxhdHRlTWFjY2hpYXRvX0FuemFobCc7CmNvbnN0IGR0cDAwNSA9IHt0eXBlOiAnbnVtYmVyJywgdW5pdDogJ0xhdHRlIE1hY2NoaWF0bycsIHJlYWQ6IHRydWUsIHdyaXRlOiBmYWxzZSwgbmFtZTogJzAwNUxhdHRlTWFjY2hpYXRvX0FuemFobCcscm9sZTogJ251bWJlcid9OwogCmZ1bmN0aW9uIGNyZWF0ZURwMDA1KGlkLCBjb21tb24pIHsKICAgIGlmKCQoaWQpLmxlbmd0aCkgbG9nKCdEYXRlbnB1bmt0ICcgKyBpZCArICcgZXhpc3RpZXJ0IGJlcmVpdHMgIScsICd3YXJuJyk7CiAgICBlbHNlIHsKICAgICAgICB2YXIgb2JqID0ge307CiAgICAgICAgb2JqLnR5cGUgPSAnc3RhdGUnOwogICAgICAgIG9iai5jb21tb24gPSBjb21tb247CiAgICAgICAgb2JqLm5hdGl2ZSA9IHt9OwogICAgICAgIHNldE9iamVjdChpZCwgb2JqLCBmdW5jdGlvbiAoZXJyKSB7CiAgICAgICAgICAgIGlmIChlcnIpIGxvZygnQ2Fubm90IHdyaXRlIG9iamVjdDogJyArIGVycikKICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICB2YXIgaW5pdCA9IG51bGw7CiAgICAgICAgICAgICAgICBpZihjb21tb24uZGVmID09PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ251bWJlcicpIGluaXQgPSAwOwogICAgICAgICAgICAgICAgICAgIGlmKGNvbW1vbi50eXBlID09PSAnYm9vbGVhbicpIGluaXQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ3N0cmluZycpIGluaXQgPSAnbm9jaCBsZWVyJzsKICAgICAgICAgICAgICAgIH0gZWxzZSBpbml0ID0gY29tbW9uLmRlZjsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7c2V0U3RhdGUoaWQsIGluaXQsIHRydWUpO30sMTAwMCk7CiAgICAgICAgICAgIH0KICAgICAgICB9KTsKICAgIH0KfQpjcmVhdGVEcDAwNSgnMF91c2VyZGF0YS4wLicgKyBkcDAwNSwgZHRwMDA1KTsKCi8vIERhdGVucHVua3QgdW50ZXIgMF91c2VyZGF0YS4wIGVyc3RlbGxlbgpjb25zdCBkcDAwNiA9ICdCb3NjaC5LYWZmZWVtYXNjaGluZS5LYWZmZWVzb3J0ZS4wMDZNaWxjaGthZmZlZV9BbnphaGwnOwpjb25zdCBkdHAwMDYgPSB7dHlwZTogJ251bWJlcicsIHVuaXQ6ICdNaWxjaGthZmZlZScsIHJlYWQ6IHRydWUsIHdyaXRlOiBmYWxzZSwgbmFtZTogJzAwNk1pbGNoa2FmZmVlX0FuemFobCcscm9sZTogJ251bWJlcid9OwogCmZ1bmN0aW9uIGNyZWF0ZURwMDA2KGlkLCBjb21tb24pIHsKICAgIGlmKCQoaWQpLmxlbmd0aCkgbG9nKCdEYXRlbnB1bmt0ICcgKyBpZCArICcgZXhpc3RpZXJ0IGJlcmVpdHMgIScsICd3YXJuJyk7CiAgICBlbHNlIHsKICAgICAgICB2YXIgb2JqID0ge307CiAgICAgICAgb2JqLnR5cGUgPSAnc3RhdGUnOwogICAgICAgIG9iai5jb21tb24gPSBjb21tb247CiAgICAgICAgb2JqLm5hdGl2ZSA9IHt9OwogICAgICAgIHNldE9iamVjdChpZCwgb2JqLCBmdW5jdGlvbiAoZXJyKSB7CiAgICAgICAgICAgIGlmIChlcnIpIGxvZygnQ2Fubm90IHdyaXRlIG9iamVjdDogJyArIGVycikKICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICB2YXIgaW5pdCA9IG51bGw7CiAgICAgICAgICAgICAgICBpZihjb21tb24uZGVmID09PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ251bWJlcicpIGluaXQgPSAwOwogICAgICAgICAgICAgICAgICAgIGlmKGNvbW1vbi50eXBlID09PSAnYm9vbGVhbicpIGluaXQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ3N0cmluZycpIGluaXQgPSAnbm9jaCBsZWVyJzsKICAgICAgICAgICAgICAgIH0gZWxzZSBpbml0ID0gY29tbW9uLmRlZjsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7c2V0U3RhdGUoaWQsIGluaXQsIHRydWUpO30sMTAwMCk7CiAgICAgICAgICAgIH0KICAgICAgICB9KTsKICAgIH0KfQpjcmVhdGVEcDAwNignMF91c2VyZGF0YS4wLicgKyBkcDAwNiwgZHRwMDA2KTsKCi8vIERhdGVucHVua3QgdW50ZXIgMF91c2VyZGF0YS4wIGVyc3RlbGxlbgpjb25zdCBkcDAwNyA9ICdCb3NjaC5LYWZmZWVtYXNjaGluZS5LYWZmZWVzb3J0ZS4wMDdSaXN0cmV0dG9fQW56YWhsJzsKY29uc3QgZHRwMDA3ID0ge3R5cGU6ICdudW1iZXInLCB1bml0OiAnUmlzdHJldHRvJywgcmVhZDogdHJ1ZSwgd3JpdGU6IGZhbHNlLCBuYW1lOiAnMDA3UmlzdHJldHRvX0FuemFobCcscm9sZTogJ251bWJlcid9OwogCmZ1bmN0aW9uIGNyZWF0ZURwMDA3KGlkLCBjb21tb24pIHsKICAgIGlmKCQoaWQpLmxlbmd0aCkgbG9nKCdEYXRlbnB1bmt0ICcgKyBpZCArICcgZXhpc3RpZXJ0IGJlcmVpdHMgIScsICd3YXJuJyk7CiAgICBlbHNlIHsKICAgICAgICB2YXIgb2JqID0ge307CiAgICAgICAgb2JqLnR5cGUgPSAnc3RhdGUnOwogICAgICAgIG9iai5jb21tb24gPSBjb21tb247CiAgICAgICAgb2JqLm5hdGl2ZSA9IHt9OwogICAgICAgIHNldE9iamVjdChpZCwgb2JqLCBmdW5jdGlvbiAoZXJyKSB7CiAgICAgICAgICAgIGlmIChlcnIpIGxvZygnQ2Fubm90IHdyaXRlIG9iamVjdDogJyArIGVycikKICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICB2YXIgaW5pdCA9IG51bGw7CiAgICAgICAgICAgICAgICBpZihjb21tb24uZGVmID09PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ251bWJlcicpIGluaXQgPSAwOwogICAgICAgICAgICAgICAgICAgIGlmKGNvbW1vbi50eXBlID09PSAnYm9vbGVhbicpIGluaXQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ3N0cmluZycpIGluaXQgPSAnbm9jaCBsZWVyJzsKICAgICAgICAgICAgICAgIH0gZWxzZSBpbml0ID0gY29tbW9uLmRlZjsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7c2V0U3RhdGUoaWQsIGluaXQsIHRydWUpO30sMTAwMCk7CiAgICAgICAgICAgIH0KICAgICAgICB9KTsKICAgIH0KfQpjcmVhdGVEcDAwNygnMF91c2VyZGF0YS4wLicgKyBkcDAwNywgZHRwMDA3KTsKCi8vIERhdGVucHVua3QgdW50ZXIgMF91c2VyZGF0YS4wIGVyc3RlbGxlbgpjb25zdCBkcDAwOCA9ICdCb3NjaC5LYWZmZWVtYXNjaGluZS5LYWZmZWVzb3J0ZS4wMDhNaWxjaHNjaGF1bV9BbnphaGwnOwpjb25zdCBkdHAwMDggPSB7dHlwZTogJ251bWJlcicsIHVuaXQ6ICdNaWxjaHNjaGF1bScsIHJlYWQ6IHRydWUsIHdyaXRlOiBmYWxzZSwgbmFtZTogJzAwOE1pbGNoc2NoYXVtX0FuemFobCcscm9sZTogJ251bWJlcid9OwogCmZ1bmN0aW9uIGNyZWF0ZURwMDA4KGlkLCBjb21tb24pIHsgCiAgICBpZigkKGlkKS5sZW5ndGgpIGxvZygnRGF0ZW5wdW5rdCAnICsgaWQgKyAnIGV4aXN0aWVydCBiZXJlaXRzICEnLCAnd2FybicpOwogICAgZWxzZSB7CiAgICAgICAgdmFyIG9iaiA9IHt9OwogICAgICAgIG9iai50eXBlID0gJ3N0YXRlJzsKICAgICAgICBvYmouY29tbW9uID0gY29tbW9uOwogICAgICAgIG9iai5uYXRpdmUgPSB7fTsKICAgICAgICBzZXRPYmplY3QoaWQsIG9iaiwgZnVuY3Rpb24gKGVycikgewogICAgICAgICAgICBpZiAoZXJyKSBsb2coJ0Nhbm5vdCB3cml0ZSBvYmplY3Q6ICcgKyBlcnIpCiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgdmFyIGluaXQgPSBudWxsOwogICAgICAgICAgICAgICAgaWYoY29tbW9uLmRlZiA9PT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgICAgICAgICAgaWYoY29tbW9uLnR5cGUgPT09ICdudW1iZXInKSBpbml0ID0gMDsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ2Jvb2xlYW4nKSBpbml0ID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgaWYoY29tbW9uLnR5cGUgPT09ICdzdHJpbmcnKSBpbml0ID0gJ25vY2ggbGVlcic7CiAgICAgICAgICAgICAgICB9IGVsc2UgaW5pdCA9IGNvbW1vbi5kZWY7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge3NldFN0YXRlKGlkLCBpbml0LCB0cnVlKTt9LDEwMDApOwogICAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICB9Cn0KY3JlYXRlRHAwMDgoJzBfdXNlcmRhdGEuMC4nICsgZHAwMDgsIGR0cDAwOCk7CgovLyBEYXRlbnB1bmt0IHVudGVyIDBfdXNlcmRhdGEuMCBlcnN0ZWxsZW4KY29uc3QgZHAwMDkgPSAnQm9zY2guS2FmZmVlbWFzY2hpbmUuS2FmZmVlc29ydGUuMDA5V2FybWVfTWlsY2hfQW56YWhsJzsKY29uc3QgZHRwMDA5ID0ge3R5cGU6ICdudW1iZXInLCB1bml0OiAnV2FybWUgTWlsY2gnLCByZWFkOiB0cnVlLCB3cml0ZTogZmFsc2UsIG5hbWU6ICcwMDlXYXJtZV9NaWxjaF9BbnphaGwnLHJvbGU6ICdudW1iZXInfTsKIApmdW5jdGlvbiBjcmVhdGVEcDAwOShpZCwgY29tbW9uKSB7CiAgICBpZigkKGlkKS5sZW5ndGgpIGxvZygnRGF0ZW5wdW5rdCAnICsgaWQgKyAnIGV4aXN0aWVydCBiZXJlaXRzICEnLCAnd2FybicpOwogICAgZWxzZSB7CiAgICAgICAgdmFyIG9iaiA9IHt9OwogICAgICAgIG9iai50eXBlID0gJ3N0YXRlJzsKICAgICAgICBvYmouY29tbW9uID0gY29tbW9uOwogICAgICAgIG9iai5uYXRpdmUgPSB7fTsKICAgICAgICBzZXRPYmplY3QoaWQsIG9iaiwgZnVuY3Rpb24gKGVycikgewogICAgICAgICAgICBpZiAoZXJyKSBsb2coJ0Nhbm5vdCB3cml0ZSBvYmplY3Q6ICcgKyBlcnIpCiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgdmFyIGluaXQgPSBudWxsOwogICAgICAgICAgICAgICAgaWYoY29tbW9uLmRlZiA9PT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgICAgICAgICAgaWYoY29tbW9uLnR5cGUgPT09ICdudW1iZXInKSBpbml0ID0gMDsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ2Jvb2xlYW4nKSBpbml0ID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgaWYoY29tbW9uLnR5cGUgPT09ICdzdHJpbmcnKSBpbml0ID0gJ25vY2ggbGVlcic7CiAgICAgICAgICAgICAgICB9IGVsc2UgaW5pdCA9IGNvbW1vbi5kZWY7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge3NldFN0YXRlKGlkLCBpbml0LCB0cnVlKTt9LDEwMDApOwogICAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICB9Cn0KY3JlYXRlRHAwMDkoJzBfdXNlcmRhdGEuMC4nICsgZHAwMDksIGR0cDAwOSk7CgovLyBEYXRlbnB1bmt0IHVudGVyIDBfdXNlcmRhdGEuMCBlcnN0ZWxsZW4KY29uc3QgZHAwMTAgPSAnQm9zY2guS2FmZmVlbWFzY2hpbmUuS2FmZmVlc29ydGUuMDEwS2xlaW5lcl9CcmF1bmVyX0FuemFobCc7CmNvbnN0IGR0cDAxMCA9IHt0eXBlOiAnbnVtYmVyJywgdW5pdDogJ0tsZWluZXIgQnJhdW5lcicsIHJlYWQ6IHRydWUsIHdyaXRlOiBmYWxzZSwgbmFtZTogJzAxMEtsZWluZXJfQnJhdW5lcl9BbnphaGwnLHJvbGU6ICdudW1iZXInfTsKIApmdW5jdGlvbiBjcmVhdGVEcDAxMChpZCwgY29tbW9uKSB7CiAgICBpZigkKGlkKS5sZW5ndGgpIGxvZygnRGF0ZW5wdW5rdCAnICsgaWQgKyAnIGV4aXN0aWVydCBiZXJlaXRzICEnLCAnd2FybicpOwogICAgZWxzZSB7CiAgICAgICAgdmFyIG9iaiA9IHt9OwogICAgICAgIG9iai50eXBlID0gJ3N0YXRlJzsKICAgICAgICBvYmouY29tbW9uID0gY29tbW9uOwogICAgICAgIG9iai5uYXRpdmUgPSB7fTsKICAgICAgICBzZXRPYmplY3QoaWQsIG9iaiwgZnVuY3Rpb24gKGVycikgewogICAgICAgICAgICBpZiAoZXJyKSBsb2coJ0Nhbm5vdCB3cml0ZSBvYmplY3Q6ICcgKyBlcnIpCiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgdmFyIGluaXQgPSBudWxsOwogICAgICAgICAgICAgICAgaWYoY29tbW9uLmRlZiA9PT0gdW5kZWZpbmVkKSB7CiAgICAgICAgICAgICAgICAgICAgaWYoY29tbW9uLnR5cGUgPT09ICdudW1iZXInKSBpbml0ID0gMDsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ2Jvb2xlYW4nKSBpbml0ID0gZmFsc2U7CiAgICAgICAgICAgICAgICAgICAgaWYoY29tbW9uLnR5cGUgPT09ICdzdHJpbmcnKSBpbml0ID0gJ25vY2ggbGVlcic7CiAgICAgICAgICAgICAgICB9IGVsc2UgaW5pdCA9IGNvbW1vbi5kZWY7CiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkge3NldFN0YXRlKGlkLCBpbml0LCB0cnVlKTt9LDEwMDApOwogICAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICB9Cn0KY3JlYXRlRHAwMTAoJzBfdXNlcmRhdGEuMC4nICsgZHAwMTAsIGR0cDAxMCk7CgoKCgoKLy8gRGF0ZW5wdW5rdCB1bnRlciAwX3VzZXJkYXRhLjAgZXJzdGVsbGVuCmNvbnN0IGRwMDk5ID0gJ0Jvc2NoLkthZmZlZW1hc2NoaW5lLkthZmZlZXNvcnRlLjA5OUthZmZlX2dlc2FtdF9BbnphaGwnOwpjb25zdCBkdHAwOTkgPSB7dHlwZTogJ251bWJlcicsIHVuaXQ6ICdHZXRyw6Rua2UgZ2VzYW10JywgcmVhZDogdHJ1ZSwgd3JpdGU6IGZhbHNlLCBuYW1lOiAnMDk5S2FmZmVfZ2VzYW10X0FuemFobCcscm9sZTogJ251bWJlcid9OwogCmZ1bmN0aW9uIGNyZWF0ZURwMDk5KGlkLCBjb21tb24pIHsKICAgIGlmKCQoaWQpLmxlbmd0aCkgbG9nKCdEYXRlbnB1bmt0ICcgKyBpZCArICcgZXhpc3RpZXJ0IGJlcmVpdHMgIScsICd3YXJuJyk7CiAgICBlbHNlIHsKICAgICAgICB2YXIgb2JqID0ge307CiAgICAgICAgb2JqLnR5cGUgPSAnc3RhdGUnOwogICAgICAgIG9iai5jb21tb24gPSBjb21tb247CiAgICAgICAgb2JqLm5hdGl2ZSA9IHt9OwogICAgICAgIHNldE9iamVjdChpZCwgb2JqLCBmdW5jdGlvbiAoZXJyKSB7CiAgICAgICAgICAgIGlmIChlcnIpIGxvZygnQ2Fubm90IHdyaXRlIG9iamVjdDogJyArIGVycikKICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICB2YXIgaW5pdCA9IG51bGw7CiAgICAgICAgICAgICAgICBpZihjb21tb24uZGVmID09PSB1bmRlZmluZWQpIHsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ251bWJlcicpIGluaXQgPSAwOwogICAgICAgICAgICAgICAgICAgIGlmKGNvbW1vbi50eXBlID09PSAnYm9vbGVhbicpIGluaXQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICBpZihjb21tb24udHlwZSA9PT0gJ3N0cmluZycpIGluaXQgPSAnbm9jaCBsZWVyJzsKICAgICAgICAgICAgICAgIH0gZWxzZSBpbml0ID0gY29tbW9uLmRlZjsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7c2V0U3RhdGUoaWQsIGluaXQsIHRydWUpO30sMTAwMCk7CiAgICAgICAgICAgIH0KICAgICAgICB9KTsKICAgIH0KfQpjcmVhdGVEcDA5OSgnMF91c2VyZGF0YS4wLicgKyBkcDA5OSwgZHRwMDk5KTs= Beschreibe diese Funktion … any homeconnect.0.BOSCH-CTL636ES6-68A40E26C6C6.programs.selected.BSH_Common_Root_SelectedProgram 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.000Sorte_aktuell FALSE homeconnect.0.BOSCH-CTL636ES6-68A40E26C6C6.programs.selected.BSH_Common_Root_SelectedProgram val homeconnect.0.BOSCH-CTL636ES6-68A40E26C6C6.programs.selected.BSH_Common_Root_SelectedProgram FALSE Object ID 1 homeconnect.0.BOSCH-CTL636ES6-68A40E26C6C6.programs.selected.BSH_Common_Root_SelectedProgram val homeconnect.0.BOSCH-CTL636ES6-68A40E26C6C6.programs.selected.BSH_Common_Root_SelectedProgram Object ID 2 val 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.000Sorte_aktuell any 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.000Sorte_aktuell 001Espresso Espresso 002Espresso_Macchiato Espresso Macchiato 003Caffe_Crema Caffe Crema 004Cappuccino Cappuccino 005Latte_Macchiato Latte Macchiato 006Milchkaffee Milchkaffee 007Ristretto Ristretto 008Milchschaum Milchschaum 009Warme_Milch Warme Milch 010Kleiner_Brauner Kleiner Brauner EQ state.val 001Espresso 001DPEspresso 1 1 Kaffee_gesamt 1 1 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.001Espresso_Anzahl TRUE 100 ms TRUE 001DPEspresso 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.099Kaffe_gesamt_Anzahl TRUE 100 ms TRUE Kaffee_gesamt EQ state.val 002Espresso_Macchiato 002DPEspresso_Macchiato 1 1 Kaffee_gesamt 1 1 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.002EspressoMacchiato_Anzahl TRUE 100 ms TRUE 002DPEspresso_Macchiato 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.099Kaffe_gesamt_Anzahl TRUE 100 ms TRUE Kaffee_gesamt EQ val 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.000Sorte_aktuell 003Caffe_Crema 003DPCaffe_Crema 1 1 Kaffee_gesamt 1 1 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.003CaffeCrema_Anzahl TRUE 100 ms TRUE 003DPCaffe_Crema 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.099Kaffe_gesamt_Anzahl TRUE 100 ms TRUE Kaffee_gesamt EQ val 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.000Sorte_aktuell 004Cappuccino 004DPCappuccino 1 1 Kaffee_gesamt 1 1 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.004Cappuccino_Anzahl TRUE 100 ms TRUE 004DPCappuccino 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.099Kaffe_gesamt_Anzahl TRUE 100 ms TRUE Kaffee_gesamt EQ val 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.000Sorte_aktuell 005Latte_Macchiato 005DPLatte_Macchiato 1 1 Kaffee_gesamt 1 1 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.005LatteMacchiato_Anzahl TRUE 100 ms TRUE 005DPLatte_Macchiato 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.099Kaffe_gesamt_Anzahl TRUE 100 ms TRUE Kaffee_gesamt EQ val 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.000Sorte_aktuell 006Milchkaffee 006DPMilchkaffee 1 1 Kaffee_gesamt 1 1 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.006Milchkaffee_Anzahl TRUE 100 ms TRUE 006DPMilchkaffee 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.099Kaffe_gesamt_Anzahl TRUE 100 ms TRUE Kaffee_gesamt EQ val 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.000Sorte_aktuell 007Ristretto 007DPRistretto 1 1 Kaffee_gesamt 1 1 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.007Ristretto_Anzahl TRUE 100 ms TRUE 007DPRistretto 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.099Kaffe_gesamt_Anzahl TRUE 100 ms TRUE Kaffee_gesamt EQ val 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.000Sorte_aktuell 008Milchschaum 008DPMilchschaum 1 1 Kaffee_gesamt 1 1 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.008Milchschaum_Anzahl TRUE 100 ms TRUE 008DPMilchschaum 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.099Kaffe_gesamt_Anzahl TRUE 100 ms TRUE Kaffee_gesamt EQ val 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.000Sorte_aktuell 009Warme_Milch 009DPWarme_Milch 1 1 Kaffee_gesamt 1 1 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.009Warme_Milch_Anzahl TRUE 100 ms TRUE 009DPWarme_Milch 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.099Kaffe_gesamt_Anzahl TRUE 100 ms TRUE Kaffee_gesamt EQ val 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.000Sorte_aktuell 010Kleiner_Brauner 010DPKleiner_Brauner 1 1 Kaffee_gesamt 1 1 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.010Kleiner_Brauner_Anzahl TRUE 100 ms TRUE 010DPKleiner_Brauner 0_userdata.0.Bosch.Kaffeemaschine.Kaffeesorte.099Kaffe_gesamt_Anzahl TRUE 100 ms TRUE Kaffee_gesamt