Studio Overview

Kontakt

Mitgliederzentrale

Crunch Fit GmbH
Brunsbütteler Damm 448,
13591 Berlin

Fax:
+49 (0) 30 / 857 40 83 70

E-mail:
[email protected]

ICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhY2YtbWFwIj4gICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KIDxzY3JpcHQgc3JjPSJodHRwczovL21hcHMuZ29vZ2xlYXBpcy5jb20vbWFwcy9hcGkvanM/dj0zLmV4cCZhbXA7c2Vuc29yPWZhbHNlJmFtcDtrZXk9QUl6YVN5QzdtenVraXp6UTVvRTB2QVhxeDlZWlNEeDJsck1HS2lvJmFtcDtjYWxsYmFjaz1yZW5kZXJfbWFwIj48L3NjcmlwdD4KIDxzY3JpcHQ+Ci8vIGxvY2F0aW9uIG1hcAogICAgLyoKICAgICAqICByZW5kZXJfbWFwCiAgICAgKgogICAgICogIFRoaXMgZnVuY3Rpb24gd2lsbCByZW5kZXIgYSBHb29nbGUgTWFwIG9udG8gdGhlIHNlbGVjdGVkIGpRdWVyeSBlbGVtZW50CiAgICAgKgogICAgICogIEB0eXBlCWZ1bmN0aW9uCiAgICAgKiAgQGRhdGUJOC8xMS8yMDEzCiAgICAgKiAgQHNpbmNlCTQuMy4wCiAgICAgKgogICAgICogIEBwYXJhbQkkZWwgKGpRdWVyeSBlbGVtZW50KQogICAgICogIEByZXR1cm4Jbi9hCiAgICAgKi8KCiAgICBmdW5jdGlvbiByZW5kZXJfbWFwKCkgewoKICAgICAgICAvLyB2YXIKICAgICAgICRlbCA9IGpRdWVyeSgnLmFjZi1tYXAnKTsKCgogICAgICAgIC8vIHZhcnMKICAgICAgICB2YXIgYXJncyA9IHsKICAgICAgICAgICAgem9vbTogMTYsCiAgICAgICAgICAgIGNlbnRlcjogbmV3IGdvb2dsZS5tYXBzLkxhdExuZygwLCAwKSwKICAgICAgICAgICAgbWFwVHlwZUlkOiBnb29nbGUubWFwcy5NYXBUeXBlSWQuUk9BRE1BUAoKICAgICAgICB9OwoKICAgICAgICAvLyBjcmVhdGUgbWFwCiAgICAgICAgdmFyIG1hcCA9IG5ldyBnb29nbGUubWFwcy5NYXAoJGVsWzBdLCBhcmdzKTsKCiAgICAgICAgLy8gYWRkIGEgbWFya2VycyByZWZlcmVuY2UKICAgICAgICBtYXAubWFya2VycyA9IFtdOwoKICAgICAgICBhZGRfbWFya2VyKG1hcCk7CiAgICAgICAgLy8gY2VudGVyIG1hcAogICAgICAgIGNlbnRlcl9tYXAobWFwKTsKCiAgICB9CgogICAgLyoKICAgICAqICBhZGRfbWFya2VyCiAgICAgKgogICAgICogIFRoaXMgZnVuY3Rpb24gd2lsbCBhZGQgYSBtYXJrZXIgdG8gdGhlIHNlbGVjdGVkIEdvb2dsZSBNYXAKICAgICAqCiAgICAgKiAgQHR5cGUJZnVuY3Rpb24KICAgICAqICBAZGF0ZQk4LzExLzIwMTMKICAgICAqICBAc2luY2UJNC4zLjAKICAgICAqCiAgICAgKiAgQHBhcmFtCSRtYXJrZXIgKGpRdWVyeSBlbGVtZW50KQogICAgICogIEBwYXJhbQltYXAgKEdvb2dsZSBNYXAgb2JqZWN0KQogICAgICogIEByZXR1cm4Jbi9hCiAgICAgKi8KCiAgICBmdW5jdGlvbiBhZGRfbWFya2VyKG1hcCkgewoKICAgICAgICAkbWFya2VyID0galF1ZXJ5KCcuYWNmLW1hcCcpOwogICAgICAgIC8vIHZhcgogICAgICAgIHZhciBsYXRsbmcgPSBuZXcgZ29vZ2xlLm1hcHMuTGF0TG5nKEJydW5zYsO8dHRlbGVyIERhbW0gNDQ4LCAgIDEzNTkxIEJlcmxpbnw1Mi41MzY2Mik7CgogICAgICAgIC8vIGNyZWF0ZSBtYXJrZXIKICAgICAgICB2YXIgbWFya2VyID0gbmV3IGdvb2dsZS5tYXBzLk1hcmtlcih7CiAgICAgICAgICAgIHBvc2l0aW9uOiBsYXRsbmcsCiAgICAgICAgICAgIG1hcDogbWFwLAogICAgICAgICAgICBpY29uOiAnLi4vLi4vd3AtY29udGVudC90aGVtZXMvY2hydW5jaGZpdC9pbWFnZXMvbWFya2VyLWljb24ucG5nJwogICAgICAgIH0pOwoKICAgICAgICAvLyBhZGQgdG8gYXJyYXkKICAgICAgICBtYXAubWFya2Vycy5wdXNoKG1hcmtlcik7CgogICAgICAgIC8vIGlmIG1hcmtlciBjb250YWlucyBIVE1MLCBhZGQgaXQgdG8gYW4gaW5mb1dpbmRvdwogICAgICAgIGlmICgkbWFya2VyLmh0bWwoKSkgewogICAgICAgICAgICAvLyBjcmVhdGUgaW5mbyB3aW5kb3cKICAgICAgICAgICAgdmFyIGluZm93aW5kb3cgPSBuZXcgZ29vZ2xlLm1hcHMuSW5mb1dpbmRvdyh7CiAgICAgICAgICAgICAgICBjb250ZW50OiAkbWFya2VyLmh0bWwoKQogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIC8vIHNob3cgaW5mbyB3aW5kb3cgd2hlbiBtYXJrZXIgaXMgY2xpY2tlZAogICAgICAgICAgICBnb29nbGUubWFwcy5ldmVudC5hZGRMaXN0ZW5lcihtYXJrZXIsICdjbGljaycsIGZ1bmN0aW9uICgpIHsKCiAgICAgICAgICAgICAgICBpbmZvd2luZG93Lm9wZW4obWFwLCBtYXJrZXIpOwoKICAgICAgICAgICAgfSk7CiAgICAgICAgfQoKICAgIH0KCiAgICAvKgogICAgICogIGNlbnRlcl9tYXAKICAgICAqCiAgICAgKiAgVGhpcyBmdW5jdGlvbiB3aWxsIGNlbnRlciB0aGUgbWFwLCBzaG93aW5nIGFsbCBtYXJrZXJzIGF0dGFjaGVkIHRvIHRoaXMgbWFwCiAgICAgKgogICAgICogIEB0eXBlCWZ1bmN0aW9uCiAgICAgKiAgQGRhdGUJOC8xMS8yMDEzCiAgICAgKiAgQHNpbmNlCTQuMy4wCiAgICAgKgogICAgICogIEBwYXJhbQltYXAgKEdvb2dsZSBNYXAgb2JqZWN0KQogICAgICogIEByZXR1cm4Jbi9hCiAgICAgKi8KCiAgICBmdW5jdGlvbiBjZW50ZXJfbWFwKG1hcCkgewoKICAgICAgICAvLyB2YXJzCiAgICAgICAgdmFyIGJvdW5kcyA9IG5ldyBnb29nbGUubWFwcy5MYXRMbmdCb3VuZHMoKTsKCiAgICAgICAgLy8gbG9vcCB0aHJvdWdoIGFsbCBtYXJrZXJzIGFuZCBjcmVhdGUgYm91bmRzCiAgICAgICAgalF1ZXJ5LmVhY2gobWFwLm1hcmtlcnMsIGZ1bmN0aW9uIChpLCBtYXJrZXIpIHsKCiAgICAgICAgICAgIHZhciBsYXRsbmcgPSBuZXcgZ29vZ2xlLm1hcHMuTGF0TG5nKG1hcmtlci5wb3NpdGlvbi5sYXQoKSwgbWFya2VyLnBvc2l0aW9uLmxuZygpKTsKCiAgICAgICAgICAgIGJvdW5kcy5leHRlbmQobGF0bG5nKTsKCiAgICAgICAgfSk7CgogICAgICAgIC8vIG9ubHkgMSBtYXJrZXI/CiAgICAgICAgaWYgKG1hcC5tYXJrZXJzLmxlbmd0aCA9PSAxKSB7CiAgICAgICAgICAgIC8vIHNldCBjZW50ZXIgb2YgbWFwCiAgICAgICAgICAgIG1hcC5zZXRDZW50ZXIoYm91bmRzLmdldENlbnRlcigpKTsKICAgICAgICAgICAgbWFwLnNldFpvb20oMTYpOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgLy8gZml0IHRvIGJvdW5kcwogICAgICAgICAgICBtYXAuZml0Qm91bmRzKGJvdW5kcyk7CiAgICAgICAgfQoKICAgIH0KICAgIDwvc2NyaXB0PgogICAgICAgICAgICA=