Autor Thema: Modul 93_DbRep - Reporting und Management von Datenbankinhalten (DbLog)  (Gelesen 225661 mal)

Offline DerFrickler

  • Sr. Member
  • ****
  • Beiträge: 587
Hallo,

der Ansatz bei mir ist etwas anders. Ich erfasse diejenigen Geräte, die Energiewerte aufzeichnen. Dazu möchte ich den Gesamtbedarf in Relation stellen, um zu sehen was noch nicht erfasst wurde. Mal sehen wie viel Prozent ich in Zukunft durch Messungen abdecken kann.

Solange ich nicht über einen SmartMeter (in welcher Form auch immer) verfüge, muss ich die Werte wohl oder übel per hand eingeben.

Gruß!

Offline DerFrickler

  • Sr. Member
  • ****
  • Beiträge: 587
Hallo,

das Modul generiert bei mir im Log elendig lange Einträge und sorgt so zum Absturz von FHEM wenn ich mal den Log aufrufe.

Gruß!

2016.08.03 21:53:18 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1017) line 1.
2016.08.03 21:53:18 3: eval: {diffval_ParseDone('DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17|TWpBeE5pMHdNUT09IDAgMjAxNi0wMS0wMQp8TWpBeE5pMHdNZz09IDAgMjAxNi0wMi0wMQp8TWpBeE5pMHdNdz09IDAgMjAxNi0wMy0wMQp8TWpBeE5pMHdOQT09IDAgMjAxNi0wNC0wMQp8TWpBeE5pMHdOUT09IDAgMjAxNi0wNS0wMQp8TWpBeE5pMHdOZz09IDAgMjAxNi0wNi0wMQp8TWpBeE5pMHdOdz09IDUzODE2NSAyMDE2LTA3LTMxIDIxOjU3OjA5CnxNakF4Tmkwd053PT0gNTM4MTY2IDIwMTYtMDctMzEgMjI6MDE6MDkKfE1qQXhOaTB3Tnc9PSA1MzgxNjcgMjAxNi0wNy0zMSAyMjowNzowOQp8TWpBeE5pMHdOdz09IDUzODE2OCAyMDE2LTA3LTMxIDIyOjExOjA5CnxNakF4Tmkwd053PT0gNTM4MTY5IDIwMTYtMDctMzEgMjI6MTU6MDkKfE1qQXhOaTB3Tnc9PSA1MzgxNzAgMjAxNi0wNy0zMSAyMjoxOTowOQp8TWpBeE5pMHdOdz09IDUzODE3MSAyMDE2LTA3LTMxIDIyOjIzOjA5CnxNakF4Tmkwd053PT0gNTM4MTcyIDIwMTYtMDctMzEgMjI6Mjc6MDkKfE1qQXhOaTB3Tnc9PSA1MzgxNzMgMjAxNi0wNy0zMSAyMjozMzowOQp8TWpBeE5pMHdOdz09IDUzODE3NCAyMDE2LTA3LTMxIDIyOjM3OjA5CnxNakF4Tmkwd053PT0gNTM4MTc1IDIwMTYtMDctMzEgMjI6NDE6MDkKfE1qQXhOaTB3Tnc9PSA1MzgxNzYgMjAxNi0wNy0zMSAyMjo0NTowOQp8TWpBeE5pMHdOdz09IDUzODE3NyAyMDE2LTA3LTMxIDIyOjUxOjA5CnxNakF4Tmkwd053PT0gNTM4MTc4IDIwMTYtMDctMzEgMjI6NTU6MDkKfE1qQXhOaTB3Tnc9PSA1MzgxNzkgMjAxNi0wNy0zMSAyMjo1OTowOQp8TWpBeE5pMHdOdz09IDUzODE4MCAyMDE2LTA3LTMxIDIzOjAzOjA5CnxNakF4Tmkwd053PT0gNTM4MTgxIDIwMTYtMDctMzEgMjM6MDc6MDkKfE1qQXhOaTB3Tnc9PSA1MzgxODIgMjAxNi0wNy0zMSAyMzoxMTowOQp8TWpBeE5pMHdOdz09IDUzODE4MyAyMDE2LTA3LTMxIDIzOjE1OjA5CnxNakF4Tmkwd053PT0gNTM4MTg0IDIwMTYtMDctMzEgMjM6MTc6MDkKfE1qQXhOaTB3Tnc9PSA1MzgxODUgMjAxNi0wNy0zMSAyMzoyMTowOQp8TWpBeE5pMHdOdz09IDUzODE4NiAyMDE2LTA3LTMxIDIzOjI1OjA5CnxNakF4Tmkwd053PT0gNTM4MTg3IDIwMTYtMDctMzEgMjM6Mjc6MDkKfE1qQXhOaTB3Tnc9PSA1MzgxODggMjAxNi0wNy0zMSAyMzozMzowOQp8TWpBeE5pMHdOdz09IDUzODE4OSAyMDE2LTA3LTMxIDIzOjM3OjA5CnxNakF4Tmkwd053PT0gNTM4MTkwIDIwMTYtMDctMzEgMjM6NDE6MDkKfE1qQXhOaTB3Tnc9PSA1MzgxOTEgMjAxNi0wNy0zMSAyMzo0NTowOQp8TWpBeE5pMHdOdz09IDUzODE5MiAyMDE2LTA3LTMxIDIzOjQ5OjA5CnxNakF4Tmkwd053PT0gNTM4MTkzIDIwMTYtMDctMzEgMjM6NTM6MDkKfE1qQXhOaTB3Tnc9PSA1MzgxOTQgMjAxNi0wNy0zMSAyMzo1NzowOQp8TWpBeE5pMHdOdz09IDUzODE5NCAyMDE2LTA3LTMxIDIzOjU5OjU5CnxNakF4Tmkwd09BPT0gNTM4MTk1IDIwMTYtMDgtMDEgMDA6MDE6MDkKfE1qQXhOaTB3T0E9PSA1MzgxOTYgMjAxNi0wOC0wMSAwMDowNTowOQp8TWpBeE5pMHdPQT09IDUzODE5NyAyMDE2LTA4LTAxIDAwOjA5OjA5CnxNakF4Tmkwd09BPT0gNTM4MTk4IDIwMTYtMDgtMDEgMDA6MTU6MDkKfE1qQXhOaTB3T0E9PSA1MzgxOTkgMjAxNi0wOC0wMSAwMDoxOTowOQp8TWpBeE5pMHdPQT09IDUzODIwMCAyMDE2LTA4LTAxIDAwOjIzOjA5CnxNakF4Tmkwd09BPT0gNTM4MjAxIDIwMTYtMDgtMDEgMDA6Mjc6MDkKfE1qQXhOaTB3T0E9PSA1MzgyMDIgMjAxNi0wOC0wMSAwMDozMTowOQp8TWpBeE5pMHdPQT09IDUzODIwMyAyMDE2LTA4LTAxIDAwOjM3OjA5CnxNakF4Tmkwd09BPT0gNTM4MjA0IDIwMTYtMDgtMDEgMDA6NDE6MDkKfE1qQXhOaTB3T0E9PSA1MzgyMDUgMjAxNi0wOC0wMSAwMDo0NTowOQp8TWpBeE5pMHdPQT09IDUzODIwNiAyMDE2LTA4LTAxIDAwOjQ5OjA5CnxNakF4Tmkwd09BPT0gNTM4MjA3IDIwMTYtMDgtMDEgMDA6NTU6MDkKfE1qQXhOaTB3T0E9PSA1MzgyMDggMjAxNi0wOC0wMSAwMDo1OTowOQp8TWpBeE5pMHdPQT09IDUzODIxNSAyMDE2LTA4LTAxIDA2OjI2OjI4CnxNakF4Tmkwd09BPT0gNTM4MjE2IDIwMTYtMDgtMDEgMDY6Mjg6MjgKfE1qQXhOaTB3T0E9PSA1MzgyMTcgMjAxNi0wOC0wMSAwNjozMjoyOAp8TWpBeE5pMHdPQT09IDUzODIxOCAyMDE2LTA4LTAxIDA2OjM2OjI4CnxNakF4Tmkwd09BPT0gNTM4MjE5IDIwMTYtMDgtMDEgMDY6NDI6MjgKfE1qQXhOaTB3T0E9PSA1MzgyMjAgMjAxNi0wOC0wMSAwNjo0NjoyOAp8TWpBeE5pMHdPQT09IDUzODIyMSAyMDE2LTA4LTAxIDA2OjUwOjI4CnxNakF4Tmkwd09BPT0gNTM4MjIyIDIwMTYtMDgtMDEgMDY6NTQ6MjgKfE1qQXhOaTB3T0E9PSA1MzgyMjMgMjAxNi0wOC0wMSAwNjo1ODoyOAp8TWpBeE5pMHdPQT09IDUzODIyNCAyMDE2LTA4LTAxIDA3OjAyOjI4CnxNakF4Tmkwd09BPT0gNTM4MjI1IDIwMTYtMDgtMDEgMDc6MDY6MjgKfE1qQXhOaTB3T0E9PSA1MzgyMjYgMjAxNi0wOC0wMSAwNzoxMDoyOAp8TWpBeE5pMHdPQT09IDUzODIyNyAyMDE2LTA4LTAxIDA3OjE0OjI4CnxNakF4Tmkwd09BPT0gNTM4MjI4IDIwMTYtMDgtMDEgMDc6MjA6MjgKfE1qQXhOaTB3T0E9PSA1MzgyMjkgMjAxNi0wOC0wMSAwNzoyNDoyOAp8TWpBeE5pMHdPQT09IDUzODIzMCAyMDE2LTA4LTAxIDA3OjI4OjI4CnxNakF4Tmkwd09BPT0gNTM4MjMxIDIwMTYtMDgtMDEgMDc6MzI6MjgKfE1qQXhOaTB3T0E9PSA1MzgyMzIgMjAxNi0wOC0wMSAwNzozODoyOAp8TWpBeE5pMHdPQT09IDUzODIzMyAyMDE2LTA4LTAxIDA3OjQyOjI4CnxNakF4Tmkwd09BPT0gNTM4MjM0IDIwMTYtMDgtMDEgMDc6NDY6MzYKfE1qQXhOaTB3T0E9PSA1MzgyMzUgMjAxNi0wOC0wMSAwNzo1MDozNgp8TWpBeE5pMHdPQT09IDUzODIzNiAyMDE2LTA4LTAxIDA3OjU0OjM2CnxNakF4Tmkwd09BPT0gNTM4MjM3IDIwMTYtMDgtMDEgMDg6MDA6MzYKfE1qQXhOaTB3T0E9PSA1MzgyMzggMjAxNi0wOC0wMSAwODowNDozNgp8TWpBeE5pMHdPQT09IDUzODIzOSAyMDE2LTA4LTAxIDA4OjA4OjM2CnxNakF4Tmkwd09BPT0gNTM4MjQwIDIwMTYtMDgtMDEgMDg6MTI6MzYKfE1qQXhOaTB3T0E9PSA1MzgyNDEgMjAxNi0wOC0wMSAwODoxNjozNgp8TWpBeE5pMHdPQT09IDUzODI0MiAyMDE2LTA4LTAxIDA4OjIwOjM2CnxNakF4Tmkwd09BPT0gNTM4MjQzIDIwMTYtMDgtMDEgMDg6MjQ6MzYKfE1qQXhOaTB3T0E9PSA1MzgyNDQgMjAxNi0wOC0wMSAwODoyODozNgp8TWpBeE5pMHdPQT09IDUzODI0NSAyMDE2LTA4LTAxIDA4OjMyOjM2CnxNakF4Tmkwd09BPT0gNTM4MjQ2IDIwMTYtMDgtMDEgMDg6MzY6MzYKfE1qQXhOaTB3T0E9PSA1MzgyNDcgMjAxNi0wOC0wMSAwODo0MjozNgp8TWpBeE5pMHdPQT09IDUzODI0OCAyMDE2LTA4LTAxIDA4OjQ2OjM2CnxNakF4Tmkwd09BPT0gNTM4MjQ5IDIwMTYtMDgtMDEgMDg6NTA6MzYKfE1qQXhOaTB3T0E9PSA1MzgyNTAgMjAxNi0wOC0wMSAwODo1NDozNgp8TWpBeE5pMHdPQT09IDUzODI1MSAyMDE2LTA4LTAxIDA4OjU4OjM2CnxNakF4Tmkwd09BPT0gNTM4MjUyIDIwMTYtMDgtMDEgMDk6MDI6MzcKfE1qQXhOaTB3T0E9PSA1MzgyNTMgMjAxNi0wOC0wMSAwOTowODozNgp8TWpBeE5pMHdPQT09IDUzODI1NCAyMDE2LTA4LTAxIDA5OjEyOjM2CnxNakF4Tmkwd09BPT0gNTM4MjU1IDIwMTYtMDgtMDEgMDk6MTY6MzYKfE1qQXhOaTB3T0E9PSA1MzgyNTYgMjAxNi0wOC0wMSAwOToyMDozNwp8TWpBeE5pMHdPQT09IDUzODI1NyAyMDE2LTA4LTAxIDA5OjI0OjM2CnxNakF4Tmkwd09BPT0gNTM4MjU4IDIwMTYtMDgtMDEgMDk6MzA6MzcKfE1qQXhOaTB3T0E9PSA1MzgyNTkgMjAxNi0wOC0wMSAwOTozNDozNgp8TWpBeE5pMHdPQT09IDUzODI2MCAyMDE2LTA4LTAxIDA5OjM4OjM2CnxNakF4Tmkwd09BPT0gNTM4MjYxIDIwMTYtMDgtMDEgMDk6NDI6MzcKfE1qQXhOaTB3T0E9PSA1MzgyNjIgMjAxNi0wOC0wMSAwOTo0NjozNgp8TWpBeE5pMHdPQT09IDUzODI2MyAyMDE2LTA4LTAxIDA5OjUwOjM2CnxNakF4Tmkwd09BPT0gNTM4MjY0IDIwMTYtMDgtMDEgMDk6NTQ6MzYKfE1qQXhOaTB3T0E9PSA1MzgyNjcgMjAxNi0wOC0wMSAwOTo1ODozNQp8TWpBeE5pMHdPQT09IDUzODI3MiAyMDE2LTA4LTAxIDEwOjAwOjM1CnxNakF4Tmkwd09BPT0gNTM4Mjc3IDIwMTYtMDgtMDEgMTA6MDI6MzUKfE1qQXhOaTB3T0E9PSA1MzgyNzggMjAxNi0wOC0wMSAxMDowMjo0NAp8TWpBeE5pMHdPQT09IDUzODI4MSAyMDE2LTA4LTAxIDEwOjAzOjQ0CnxNakF4Tmkwd09BPT0gNTM4Mjg2IDIwMTYtMDgtMDEgMTA6MDU6NDQKfE1qQXhOaTB3T0E9PSA1MzgyODggMjAxNi0wOC0wMSAxMDowNjoyNAp8TWpBeE5pMHdPQT09IDUzODI5MSAyMDE2LTA4LTAxIDEwOjA3OjI0CnxNakF4Tmkwd09BPT0gNTM4Mjk3IDIwMTYtMDgtMDEgMTA6MDk6MjQKfE1qQXhOaTB3T0E9PSA1MzgzMDIgMjAxNi0wOC0wMSAxMDoxMToyNQp8TWpBeE5pMHdPQT09IDUzODMwOCAyMDE2LTA4LTAxIDEwOjEzOjI1CnxNakF4Tmkwd09BPT0gNTM4MzE0IDIwMTYtMDgtMDEgMTA6MTU6MjQKfE1qQXhOaTB3T0E9PSA1MzgzMjAgMjAxNi0wOC0wMSAxMDoxNzoyNAp8TWpBeE5pMHdPQT09IDUzODMyNCAyMDE2LTA4LTAxIDEwOjE4OjU1CnxNakF4Tmkwd09BPT0gNTM4MzMwIDIwMTYtMDgtMDEgMTA6MjA6NTUKfE1qQXhOaTB3T0E9PSA1MzgzMzYgMjAxNi0wOC0wMSAxMDoyMjo1NQp8TWpBeE5pMHdPQT09IDUzODM0MiAyMDE2LTA4LTAxIDEwOjI0OjU1CnxNakF4Tmkwd09BPT0gNTM4MzQ4IDIwMTYtMDgtMDEgMTA6MjY6NTUKfE1qQXhOaTB3T0E9PSA1MzgzNTQgMjAxNi0wOC0wMSAxMDoyODo1NQp8TWpBeE5pMHdPQT09IDUzODM2MCAyMDE2LTA4LTAxIDEwOjMwOjU1CnxNakF4Tmkwd09BPT0gNTM4MzY2IDIwMTYtMDgtMDEgMTA6MzI6NDQKfE1qQXhOaTB3T0E9PSA1MzgzNjkgMjAxNi0wOC0wMSAxMDozMzo0NQp8TWpBeE5pMHdPQT09IDUzODM3NSAyMDE2LTA4LTAxIDEwOjM1OjQ1CnxNakF4Tmkwd09BPT0gNTM4Mzc3IDIwMTYtMDgtMDEgMTA6MzY6MjUKfE1qQXhOaTB3T0E9PSA1MzgzODQgMjAxNi0wOC0wMSAxMDozODoyNAp8TWpBeE5pMHdPQT09IDUzODM5MSAyMDE2LTA4LTAxIDEwOjQwOjI0CnxNakF4Tmkwd09BPT0gNTM4Mzk4IDIwMTYtMDgtMDEgMTA6NDI6MjUKfE1qQXhOaTB3T0E9PSA1Mzg0MDEgMjAxNi0wOC0wMSAxMDo0MzoyNAp8TWpBeE5pMHdPQT09IDUzODQwNSAyMDE2LTA4LTAxIDEwOjQ0OjI1CnxNakF4Tmkwd09BPT0gNTM4NDEyIDIwMTYtMDgtMDEgMTA6NDY6MjQKfE1qQXhOaTB3T0E9PSA1Mzg0MTkgMjAxNi0wOC0wMSAxMDo0ODoyNQp8TWpBeE5pMHdPQT09IDUzODQyNiAyMDE2LTA4LTAxIDEwOjUwOjI0CnxNakF4Tmkwd09BPT0gNTM4NDMyIDIwMTYtMDgtMDEgMTA6NTI6MjQKfE1qQXhOaTB3T0E9PSA1Mzg0MzkgMjAxNi0wOC0wMSAxMDo1NDoyNAp8TWpBeE5pMHdPQT09IDUzODQ0MyAyMDE2LTA4LTAxIDEwOjU1OjM1CnxNakF4Tmkwd09BPT0gNTM4NDQ3IDIwMTYtMDgtMDEgMTA6NTY6MzUKfE1qQXhOaTB3T0E9PSA1Mzg0NTMgMjAxNi0wOC0wMSAxMDo1ODozNQp8TWpBeE5pMHdPQT09IDUzODQ1OCAyMDE2LTA4LTAxIDEwOjU5OjU1CnxNakF4Tmkwd09BPT0gNTM4NDYyIDIwMTYtMDgtMDEgMTE6MDE6MDQKfE1qQXhOaTB3T0E9PSA1Mzg0NjggMjAxNi0wOC0wMSAxMTowMzowNQp8TWpBeE5pMHdPQT09IDUzODQ3NSAyMDE2LTA4LTAxIDExOjA1OjA1CnxNakF4Tmkwd09BPT0gNTM4NDgyIDIwMTYtMDgtMDEgMTE6MDc6MDUKfE1qQXhOaTB3T0E9PSA1Mzg0ODkgMjAxNi0wOC0wMSAxMTowOToxNQp8TWpBeE5pMHdPQT09IDUzODQ5NiAyMDE2LTA4LTAxIDExOjExOjE1CnxNakF4Tmkwd09BPT0gNTM4NTAzIDIwMTYtMDgtMDEgMTE6MTM6MTUKfE1qQXhOaTB3T0E9PSA1Mzg1MDkgMjAxNi0wOC0wMSAxMToxNToxNQp8TWpBeE5pMHdPQT09IDUzODUxMSAyMDE2LTA4LTAxIDExOjE1OjQ1CnxNakF4Tmkwd09BPT0gNTM4NTE0IDIwMTYtMDgtMDEgMTE6MTY6NDQKfE1qQXhOaTB3T0E9PSA1Mzg1MTcgMjAxNi0wOC0wMSAxMToxNzo0NQp8TWpBeE5pMHdPQT09IDUzODUyNCAyMDE2LTA4LTAxIDExOjE5OjQ1CnxNakF4Tmkwd09BPT0gNTM4NTMwIDIwMTYtMDgtMDEgMTE6MjE6MzUKfE1qQXhOaTB3T0E9PSA1Mzg1MzMgMjAxNi0wOC0wMSAxMToyMjozNQp8TWpBeE5pMHdPQT09IDUzODU0MCAyMDE2LTA4LTAxIDExOjI0OjM1CnxNakF4Tmkwd09BPT0gNTM4NTQ3IDIwMTYtMDgtMDEgMTE6MjY6MzUKfE1qQXhOaTB3T0E9PSA1Mzg1NTQgMjAxNi0wOC0wMSAxMToyODozNQp8TWpBeE5pMHdPQT09IDUzODU2MCAyMDE2LTA4LTAxIDExOjMwOjM1CnxNakF4Tmkwd09BPT0gNTM4NTY3IDIwMTYtMDgtMDEgMTE6MzI6MzUKfE1qQXhOaTB3T0E9PSA1Mzg1NzQgMjAxNi0wOC0wMSAxMTozNDozNQp8TWpBeE5pMHdPQT09IDUzODU4MCAyMDE2LTA4LTAxIDExOjM2OjM1CnxNakF4Tmkwd09BPT0gNTM4NTg3IDIwMTYtMDgtMDEgMTE6Mzg6MzUKfE1qQXhOaTB3T0E9PSA1Mzg1OTQgMjAxNi0wOC0wMSAxMTo0MDozNQp8TWpBeE5pMHdPQT09IDUzODYwMSAyMDE2LTA4LTAxIDExOjQyOjM1CnxNakF4Tmkwd09BPT0gNTM4NjA3IDIwMTYtMDgtMDEgMTE6NDQ6MzUKfE1qQXhOaTB3T0E9PSA1Mzg2MTQgMjAxNi0wOC0wMSAxMTo0NjozNQp8TWpBeE5pMHdPQT09IDUzODYyMSAyMDE2LTA4LTAxIDExOjQ4OjM1CnxNakF4Tmkwd09BPT0gNTM4NjI3IDIwMTYtMDgtMDEgMTE6NTA6MzUKfE1qQXhOaTB3T0E9PSA1Mzg2MzQgMjAxNi0wOC0wMSAxMTo1MjozNQp8TWpBeE5pMHdPQT09IDUzODY0MSAyMDE2LTA4LTAxIDExOjU0OjM1CnxNakF4Tmkwd09BPT0gNTM4NjQ3IDIwMTYtMDgtMDEgMTE6NTY6MjUKfE1qQXhOaTB3T0E9PSA1Mzg2NTAgMjAxNi0wOC0wMSAxMTo1NzoyNQp8TWpBeE5pMHdPQT09IDUzODY1NyAyMDE2LTA4LTAxIDExOjU5OjI1CnxNakF4Tmkwd09BPT0gNTM4NjYzIDIwMTYtMDgtMDEgMTI6MDE6MjUKfE1qQXhOaTB3T0E9PSA1Mzg2NzAgMjAxNi0wOC0wMSAxMjowMzoyNQp8TWpBeE5pMHdPQT09IDUzODY3NiAyMDE2LTA4LTAxIDEyOjA1OjI1CnxNakF4Tmkwd09BPT0gNTM4NjgzIDIwMTYtMDgtMDEgMTI6MDc6MjUKfE1qQXhOaTB3T0E9PSA1Mzg2OTAgMjAxNi0wOC0wMSAxMjowOToyNQp8TWpBeE5pMHdPQT09IDUzODY5MiAyMDE2LTA4LTAxIDEyOjEwOjA1CnxNakF4Tmkwd09BPT0gNTM4NjkzIDIwMTYtMDgtMDEgMTI6MTM6NDUKfE1qQXhOaTB3T0E9PSA1Mzg2OTQgMjAxNi0wOC0wMSAxMjoxNTo0NQp8TWpBeE5pMHdPQT09IDUzODY5NSAyMDE2LTA4LTAxIDEyOjE5OjQ1CnxNakF4Tmkwd09BPT0gNTM4Njk3IDIwMTYtMDgtMDEgMTI6MjA6NTUKfE1qQXhOaTB3T0E9PSA1Mzg3MDIgMjAxNi0wOC0wMSAxMjoyMjo1NQp8TWpBeE5pMHdPQT09IDUzODcwNyAyMDE2LTA4LTAxIDEyOjI0OjU1CnxNakF4Tmkwd09BPT0gNTM4NzEyIDIwMTYtMDgtMDEgMTI6MjY6NTUKfE1qQXhOaTB3T0E9PSA1Mzg3MTcgMjAxNi0wOC0wMSAxMjoyODo1NQp8TWpBeE5pMHdPQT09IDUzODcyMiAyMDE2LTA4LTAxIDEyOjMwOjU1CnxNakF4Tmkwd09BPT0gNTM4NzI3IDIwMTYtMDgtMDEgMTI6MzI6NTUKfE1qQXhOaTB3T0E9PSA1Mzg3MzIgMjAxNi0wOC0wMSAxMjozNDo1NQp8TWpBeE5pMHdPQT09IDUzODczNyAyMDE2LTA4LTAxIDEyOjM2OjU1CnxNakF4Tmkwd09BPT0gNTM4NzQyIDIwMTYtMDgtMDEgMTI6Mzg6NTUKfE1qQXhOaTB3T0E9PSA1Mzg3NDcgMjAxNi0wOC0wMSAxMjo0MDo1NQp8TWpBeE5pMHdPQT09IDUzODc1MiAyMDE2LTA4LTAxIDEyOjQyOjU1CnxNakF4Tmkwd09BPT0gNTM4NzU3IDIwMTYtMDgtMDEgMTI6NDQ6NTUKfE1qQXhOaTB3T0E9PSA1Mzg3NjIgMjAxNi0wOC0wMSAxMjo0Njo1NQp8TWpBeE5pMHdPQT09IDUzODc2NyAyMDE2LTA4LTAxIDEyOjQ4OjU1CnxNakF4Tmkwd09BPT0gNTM4NzcyIDIwMTYtMDgtMDEgMTI6NTA6NTUKfE1qQXhOaTB3T0E9PSA1Mzg3NzcgMjAxNi0wOC0wMSAxMjo1Mjo1NQp8TWpBeE5pMHdPQT09IDUzODc4MiAyMDE2LTA4LTAxIDEyOjU0OjU1CnxNakF4Tmkwd09BPT0gNTM4Nzg3IDIwMTYtMDgtMDEgMTI6NTY6NTUKfE1qQXhOaTB3T0E9PSA1Mzg3OTIgMjAxNi0wOC0wMSAxMjo1ODo1NQp8TWpBeE5pMHdPQT09IDUzODc5NyAyMDE2LTA4LTAxIDEzOjAwOjU1CnxNakF4Tmkwd09BPT0gNTM4ODAyIDIwMTYtMDgtMDEgMTM6MDI6NTUKfE1qQXhOaTB3T0E9PSA1Mzg4MDcgMjAxNi0wOC0wMSAxMzowNDo1NQp8TWpBeE5pMHdPQT09IDUzODgxMiAyMDE2LTA4LTAxIDEzOjA2OjU1CnxNakF4Tmkwd09BPT0gNTM4ODE3IDIwMTYtMDgtMDEgMTM6MDg6NTUKfE1qQXhOaTB3T0E9PSA1Mzg4MjIgMjAxNi0wOC0wMSAxMzoxMDo1NQp8TWpBeE5pMHdPQT09IDUzODgyNyAyMDE2LTA4LTAxIDEzOjEyOjU1CnxNakF4Tmkwd09BPT0gNTM4ODMyIDIwMTYtMDgtMDEgMTM6MTQ6NTUKfE1qQXhOaTB3T0E9PSA1Mzg4MzcgMjAxNi0wOC0wMSAxMzoxNjo1NQp8TWpBeE5pMHdPQT09IDUzODg0MSAyMDE2LTA4LTAxIDEzOjE4OjU1CnxNakF4Tmkwd09BPT0gNTM4ODQ2IDIwMTYtMDgtMDEgMTM6MjA6NTUKfE1qQXhOaTB3T0E9PSA1Mzg4NTIgMjAxNi0wOC0wMSAxMzoyMjo1NQp8TWpBeE5pMHdPQT09IDUzODg1NiAyMDE2LTA4LTAxIDEzOjI0OjU1CnxNakF4Tmkwd09BPT0gNTM4ODYxIDIwMTYtMDgtMDEgMTM6MjY6NTUKfE1qQXhOaTB3T0E9PSA1Mzg4NjcgMjAxNi0wOC0wMSAxMzoyODo1NQp8TWpBeE5pMHdPQT09IDUzODg3MSAyMDE2LTA4LTAxIDEzOjMwOjU1CnxNakF4Tmkwd09BPT0gNTM4ODc2IDIwMTYtMDgtMDEgMTM6MzI6NTUKfE1qQXhOaTB3T0E9PSA1Mzg4ODEgMjAxNi0wOC0wMSAxMzozNDo1NQp8TWpBeE5pMHdPQT09IDUzODg4NiAyMDE2LTA4LTAxIDEzOjM2OjU1CnxNakF4Tmkwd09BPT0gNTM4ODkxIDIwMTYtMDgtMDEgMTM6Mzg6NTUKfE1qQXhOaTB3T0E9PSA1Mzg4OTYgMjAxNi0wOC0wMSAxMzo0MDo1NQp8TWpBeE5pMHdPQT09IDUzODkwMSAyMDE2LTA4LTAxIDEzOjQyOjU1CnxNakF4Tmkwd09BPT0gNTM4OTA2IDIwMTYtMDgtMDEgMTM6NDQ6NTUKfE1qQXhOaTB3T0E9PSA1Mzg5MTEgMjAxNi0wOC0wMSAxMzo0Njo1NQp8TWpBeE5pMHdPQT09IDUzODkxNiAyMDE2LTA4LTAxIDEzOjQ4OjU1CnxNakF4Tmkwd09BPT0gNTM4OTIxIDIwMTYtMDgtMDEgMTM6NTA6NTUKfE1qQXhOaTB3T0E9PSA1Mzg5MjYgMjAxNi0wOC0wMSAxMzo1Mjo1NQp8TWpBeE5pMHdPQT09IDUzODkzMSAyMDE2LTA4LTAxIDEzOjU0OjU1CnxNakF4Tmkwd09BPT0gNTM4OTM2IDIwMTYtMDgtMDEgMTM6NTY6NTUKfE1qQXhOaTB3T0E9PSA1Mzg5NDEgMjAxNi0wOC0wMSAxMzo1ODo1NQp8TWpBeE5pMHdPQT09IDUzODk0NiAyMDE2LTA4LTAxIDE0OjAwOjU1CnxNakF4Tmkwd09BPT0gNTM4OTUxIDIwMTYtMDgtMDEgMTQ6MDI6NTUKfE1qQXhOaTB3T0E9PSA1Mzg5NTYgMjAxNi0wOC0wMSAxNDowNDo1NQp8TWpBeE5pMHdPQT09IDUzODk2MSAyMDE2LTA4LTAxIDE0OjA2OjU1CnxNakF4Tmkwd09BPT0gNTM4OTY2IDIwMTYtMDgtMDEgMTQ6MDg6NTUKfE1qQXhOaTB3T0E9PSA1Mzg5NjkgMjAxNi0wOC0wMSAxNDoxMDozNQp8TWpBeE5pMHdPQT09IDUzODk3MCAyMDE2LTA4LTAxIDE0OjEyOjE1CnxNakF4Tmkwd09BPT0gNTM4OTcxIDIwMTYtMDgtMDEgMTQ6MTQ6MTUKfE1qQXhOaTB3T0E9PSA1Mzg5NzIgMjAxNi0wOC0wMSAxNDoxODoxNQp8TWpBeE5pMHdPQT09IDUzODk3MyAyMDE2LTA4LTAxIDE0OjIyOjE1CnxNakF4Tmkwd09BPT0gNTM4OTc0IDIwMTYtMDgtMDEgMTQ6MjQ6MTUKfE1qQXhOaTB3T0E9PSA1Mzg5NzUgMjAxNi0wOC0wMSAxNDoyODoxNQp8TWpBeE5pMHdPQT09IDUzODk3NiAyMDE2LTA4LTAxIDE0OjMwOjE1CnxNakF4Tmkwd09BPT0gNTM4OTc3IDIwMTYtMDgtMDEgMTQ6MzQ6MTUKfE1qQXhOaTB3T0E9PSA1Mzg5NzggMjAxNi0wOC0wMSAxNDo0MDoxNQp8TWpBeE5pMHdPQT09IDUzODk3OSAyMDE2LTA4LTAxIDE0OjQyOjE1CnxNakF4Tmkwd09BPT0gNTM4OTgwIDIwMTYtMDgtMDEgMTQ6NDY6MTUKfE1qQXhOaTB3T0E9PSA1Mzg5ODEgMjAxNi0wOC0wMSAxNDo0ODoxNQp8TWpBeE5pMHdPQT09IDUzODk4MiAyMDE2LTA4LTAxIDE0OjU0OjE1CnxNakF4Tmkwd09BPT0gNTM4OTgzIDIwMTYtMDgtMDEgMTQ6NTY6MTUKfE1qQXhOaTB3T0E9PSA1Mzg5ODQgMjAxNi0wOC0wMSAxNTowMDoxNQp8TWpBeE5pMHdPQT09IDUzODk4NSAyMDE2LTA4LTAxIDE1OjAyOjE1CnxNakF4Tmkwd09BPT0gNTM4OTg2IDIwMTYtMDgtMDEgMTU6MDY6MTUKfE1qQXhOaTB3T0E9PSA1Mzg5ODcgMjAxNi0wOC0wMSAxNToxMDoxNQp8TWpBeE5pMHdPQT09IDUzODk4OCAyMDE2LTA4LTAxIDE1OjE0OjE1CnxNakF4Tmkwd09BPT0gNTM4OTg5IDIwMTYtMDgtMDEgMTU6MTY6MTUKfE1qQXhOaTB3T0E9PSA1Mzg5OTAgMjAxNi0wOC0wMSAxNToyMDoxNQp8TWpBeE5pMHdPQT09IDUzODk5MSAyMDE2LTA4LTAxIDE1OjI0OjE1CnxNakF4Tmkwd09BPT0gNTM4OTkyIDIwMTYtMDgtMDEgMTU6MjY6MTUKfE1qQXhOaTB3T0E9PSA1Mzg5OTMgMjAxNi0wOC0wMSAxNTozMDoxNQp8TWpBeE5pMHdPQT09IDUzODk5NCAyMDE2LTA4LTAxIDE1OjM0OjE1CnxNakF4Tmkwd09BPT0gNTM5MDI5IDIwMTYtMDgtMDEgMTc6MzY6MTQKfE1qQXhOaTB3T0E9PSA1MzkwMzAgMjAxNi0wOC0wMSAxNzozODoxNQp8TWpBeE5pMHdPQT09IDUzOTAzMSAyMDE2LTA4LTAxIDE3OjQwOjE1CnxNakF4Tmkwd09BPT0gNTM5MDM0IDIwMTYtMDgtMDEgMTc6NDI6MzUKfE1qQXhOaTB3T0E9PSA1MzkwMzcgMjAxNi0wOC0wMSAxNzo0MzozNQp8TWpBeE5pMHdPQT09IDUzOTA0NCAyMDE2LTA4LTAxIDE3OjQ1OjM0CnxNakF4Tmkwd09BPT0gNTM5MDUwIDIwMTYtMDgtMDEgMTc6NDc6MzUKfE1qQXhOaTB3T0E9PSA1MzkwNTcgMjAxNi0wOC0wMSAxNzo0OTozNQp8TWpBeE5pMHdPQT09IDUzOTA2NCAyMDE2LTA4LTAxIDE3OjUxOjM1CnxNakF4Tmkwd09BPT0gNTM5MDcxIDIwMTYtMDgtMDEgMTc6NTM6MzUKfE1qQXhOaTB3T0E9PSA1MzkwNzcgMjAxNi0wOC0wMSAxNzo1NTozNQp8TWpBeE5pMHdPQT09IDUzOTA4NCAyMDE2LTA4LTAxIDE3OjU3OjM1CnxNakF4Tmkwd09BPT0gNTM5MDkxIDIwMTYtMDgtMDEgMTc6NTk6MzUKfE1qQXhOaTB3T0E9PSA1MzkwOTcgMjAxNi0wOC0wMSAxODowMTozNQp8TWpBeE5pMHdPQT09IDUzOTEwNCAyMDE2LTA4LTAxIDE4OjAzOjM1CnxNakF4Tmkwd09BPT0gNTM5MTExIDIwMTYtMDgtMDEgMTg6MDU6MzUKfE1qQXhOaTB3T0E9PSA1MzkxMTcgMjAxNi0wOC0wMSAxODowNzozNQp8TWpBeE5pMHdPQT09IDUzOTEyNCAyMDE2LTA4LTAxIDE4OjA5OjM1CnxNakF4Tmkwd09BPT0gNTM5MTMwIDIwMTYtMDgtMDEgMTg6MTE6MzUKfE1qQXhOaTB3T0E9PSA1MzkxMzMgMjAxNi0wOC0wMSAxODoxMjozNQp8TWpBeE5pMHdPQT09IDUzOTEzNiAyMDE2LTA4LTAxIDE4OjEzOjM1CnxNakF4Tmkwd09BPT0gNTM5MTQzIDIwMTYtMDgtMDEgMTg6MTU6MzUKfE1qQXhOaTB3T0E9PSA1MzkxNDkgMjAxNi0wOC0wMSAxODoxNzozNQp8TWpBeE5pMHdPQT09IDUzOTE1MCAyMDE2LTA4LTAxIDE4OjE3OjQ1CnxNakF4Tmkwd09BPT0gNTM5MTU0IDIwMTYtMDgtMDEgMTg6MTk6MDUKfE1qQXhOaTB3T0E9PSA1MzkxNTcgMjAxNi0wOC0wMSAxODoyMDowNQp8TWpBeE5pMHdPQT09IDUzOTE2NCAyMDE2LTA4LTAxIDE4OjIyOjA1CnxNakF4Tmkwd09BPT0gNTM5MTcwIDIwMTYtMDgtMDEgMTg6MjQ6MDUKfE1qQXhOaTB3T0E9PSA1MzkxNzMgMjAxNi0wOC0wMSAxODoyNDo1NQp8TWpBeE5pMHdPQT09IDUzOTE3NiAyMDE2LTA4LTAxIDE4OjI1OjU1CnxNakF4Tmkwd09BPT0gNTM5MTgyIDIwMTYtMDgtMDEgMTg6Mjc6NTUKfE1qQXhOaTB3T0E9PSA1MzkxODMgMjAxNi0wOC0wMSAxODoyODoyNQp8TWpBeE5pMHdPQT09IDUzOTE4NyAyMDE2LTA4LTAxIDE4OjI5OjI1CnxNakF4Tmkwd09BPT0gNTM5MTkzIDIwMTYtMDgtMDEgMTg6MzE6MjUKfE1qQXhOaTB3T0E9PSA1MzkxOTYgMjAxNi0wOC0wMSAxODozMjoyNQp8TWpBeE5pMHdPQT09IDUzOTIwMCAyMDE2LTA4LTAxIDE4OjMzOjM1CnxNakF4Tmkwd09BPT0gNTM5MjA2IDIwMTYtMDgtMDEgMTg6MzU6MzUKfE1qQXhOaTB3T0E9PSA1MzkyMDcgMjAxNi0wOC0wMSAxODozNTo1NQp8TWpBeE5pMHdPQT09IDUzOTIxMyAyMDE2LTA4LTAxIDE4OjM3OjU1CnxNakF4Tmkwd09BPT0gNTM5MjE1IDIwMTYtMDgtMDEgMTg6Mzg6MzUKfE1qQXhOaTB3T0E9PSA1MzkyMTkgMjAxNi0wOC0wMSAxODozOTozNQp8TWpBeE5pMHdPQT09IDUzOTIyNSAyMDE2LTA4LTAxIDE4OjQxOjM1CnxNakF4Tmkwd09BPT0gNTM5MjMxIDIwMTYtMDgtMDEgMTg6NDM6MzUKfE1qQXhOaTB3T0E9PSA1MzkyMzcgMjAxNi0wOC0wMSAxODo0NTozNQp8TWpBeE5pMHdPQT09IDUzOTI0MiAyMDE2LTA4LTAxIDE4OjQ3OjE1CnxNakF4Tmkwd09BPT0gNTM5MjQ2IDIwMTYtMDgtMDEgMTg6NDg6MTUKfE1qQXhOaTB3T0E9PSA1MzkyNTIgMjAxNi0wOC0wMSAxODo1MDoxNQp8TWpBeE5pMHdPQT09IDUzOTI1OCAyMDE2LTA4LTAxIDE4OjUyOjE1CnxNakF4Tmkwd09BPT0gNTM5MjY0IDIwMTYtMDgtMDEgMTg6NTQ6MTUKfE1qQXhOaTB3T0E9PSA1MzkyNzEgMjAxNi0wOC0wMSAxODo1NjoxNQp8TWpBeE5pMHdPQT09IDUzOTI3MyAyMDE2LTA4LTAxIDE4OjU2OjU1CnxNakF4Tmkwd09BPT0gNTM5Mjc2IDIwMTYtMDgtMDEgMTg6NTc6NTUKfE1qQXhOaTB3T0E9PSA1MzkyODIgMjAxNi0wOC0wMSAxODo1OTo1NQp8TWpBeE5pMHdPQT09IDUzOTI4NSAyMDE2LTA4LTAxIDE5OjAxOjA1CnxNakF4Tmkwd09BPT0gNTM5Mjg4IDIwMTYtMDgtMDEgMTk6MDI6MDUKfE1qQXhOaTB3T0E9PSA1MzkyOTUgMjAxNi0wOC0wMSAxOTowNDowNQp8TWpBeE5pMHdPQT09IDUzOTMwMSAyMDE2LTA4LTAxIDE5OjA2OjA1CnxNakF4Tmkwd09BPT0gNTM5MzA3IDIwMTYtMDgtMDEgMTk6MDg6MDUKfE1qQXhOaTB3T0E9PSA1MzkzMDggMjAxNi0wOC0wMSAxOTowODoyNQp8TWpBeE5pMHdPQT09IDUzOTMxMSAyMDE2LTA4LTAxIDE5OjA5OjI1CnxNakF4Tmkwd09BPT0gNTM5MzE3IDIwMTYtMDgtMDEgMTk6MTE6MjUKfE1qQXhOaTB3T0E9PSA1MzkzMjIgMjAxNi0wOC0wMSAxOToxMjo1NQp8TWpBeE5pMHdPQT09IDUzOTMyOCAyMDE2LTA4LTAxIDE5OjE0OjU1CnxNakF4Tmkwd09BPT0gNTM5MzMwIDIwMTYtMDgtMDEgMTk6MTU6MzUKfE1qQXhOaTB3T0E9PSA1MzkzMzMgMjAxNi0wOC0wMSAxOToxNjozNQp8TWpBeE5pMHdPQT09IDUzOTMzOSAyMDE2LTA4LTAxIDE5OjE4OjM1CnxNakF4Tmkwd09BPT0gNTM5MzQyIDIwMTYtMDgtMDEgMTk6MTk6MzUKfE1qQXhOaTB3T0E9PSA1MzkzNDUgMjAxNi0wOC0wMSAxOToyMDo0NQp8TWpBeE5pMHdPQT09IDUzOTM1MiAyMDE2LTA4LTAxIDE5OjIyOjQ1CnxNakF4Tmkwd09BPT0gNTM5MzU0IDIwMTYtMDgtMDEgMTk6MjM6MjUKfE1qQXhOaTB3T0E9PSA1MzkzNTcgMjAxNi0wOC0wMSAxOToyNDoyNQp8TWpBeE5pMHdPQT09IDUzOTM2MSAyMDE2LTA4LTAxIDE5OjI1OjQ1CnxNakF4Tmkwd09BPT0gNTM5MzY0IDIwMTYtMDgtMDEgMTk6MjY6NDUKfE1qQXhOaTB3T0E9PSA1MzkzNzcgMjAxNi0wOC0wMSAxOTozMDo0NQp8TWpBeE5pMHdPQT09IDUzOTM4MyAyMDE2LTA4LTAxIDE5OjMyOjQ1CnxNakF4Tmkwd09BPT0gNTM5Mzg5IDIwMTYtMDgtMDEgMTk6MzQ6NDUKfE1qQXhOaTB3T0E9PSA1MzkzOTUgMjAxNi0wOC0wMSAxOTozNjo0NQp8TWpBeE5pMHdPQT09IDUzOTQwMSAyMDE2LTA4LTAxIDE5OjM4OjQ1CnxNakF4Tmkwd09BPT0gNTM5NDA4IDIwMTYtMDgtMDEgMTk6NDA6NDUKfE1qQXhOaTB3T0E9PSA1Mzk0MTQgMjAxNi0wOC0wMSAxOTo0Mjo0NQp8TWpBeE5pMHdPQT09IDUzOTQxNiAyMDE2LTA4LTAxIDE5OjQzOjM1CnxNakF4Tmkwd09BPT0gNTM5NDg4IDIwMTYtMDgtMDEgMjE6NDY6MDUKfE1qQXhOaTB3T0E9PSA1Mzk0ODkgMjAxNi0wOC0wMSAyMTo1MDowNQp8TWpBeE5pMHdPQT09IDUzOTQ5MCAyMDE2LTA4LTAxIDIxOjU0OjA1CnxNakF4Tmkwd09BPT0gNTM5NDkxIDIwMTYtMDgtMDEgMjE6NTg6MDUKfE1qQXhOaTB3T0E9PSA1Mzk0OTIgMjAxNi0wOC0wMSAyMjowMjowNQp8TWpBeE5pMHdPQT09IDUzOTQ5MyAyMDE2LTA4LTAxIDIyOjA4OjA1CnxNakF4Tmkwd09BPT0gNTM5NDk0IDIwMTYtMDgtMDEgMjI6MTI6MDUKfE1qQXhOaTB3T0E9PSA1Mzk0OTUgMjAxNi0wOC0wMSAyMjoxNjowNQp8TWpBeE5pMHdPQT09IDUzOTQ5NiAyMDE2LTA4LTAxIDIyOjIwOjA1CnxNakF4Tmkwd09BPT0gNTM5NDk3IDIwMTYtMDgtMDEgMjI6MjQ6MDUKfE1qQXhOaTB3T0E9PSA1Mzk0OTggMjAxNi0wOC0wMSAyMjoyODowNQp8TWpBeE5pMHdPQT09IDUzOTQ5OSAyMDE2LTA4LTAxIDIyOjMyOjA1CnxNakF4Tmkwd09BPT0gNTM5NTAwIDIwMTYtMDgtMDEgMjI6MzY6MDUKfE1qQXhOaTB3T0E9PSA1Mzk1MDEgMjAxNi0wOC0wMSAyMjo0MDowNQp8TWpBeE5pMHdPQT09IDUzOTUwMiAyMDE2LTA4LTAxIDIyOjQ0OjA1CnxNakF4Tmkwd09BPT0gNTM5NTAzIDIwMTYtMDgtMDEgMjI6NTA6MDUKfE1qQXhOaTB3T0E9PSA1Mzk1MDQgMjAxNi0wOC0wMSAyMjo1NDowNQp8TWpBeE5pMHdPQT09IDUzOTUwNSAyMDE2LTA4LTAxIDIyOjU4OjA1CnxNakF4Tmkwd09BPT0gNTM5NTA2IDIwMTYtMDgtMDEgMjM6MDI6MDUKfE1qQXhOaTB3T0E9PSA1Mzk1MDcgMjAxNi0wOC0wMSAyMzowNjowNQp8TWpBeE5pMHdPQT09IDUzOTUwOCAyMDE2LTA4LTAxIDIzOjEyOjA1CnxNakF4Tmkwd09BPT0gNTM5NTA5IDIwMTYtMDgtMDEgMjM6MTY6MDUKfE1qQXhOaTB3T0E9PSA1Mzk1MTAgMjAxNi0wOC0wMSAyMzoyMDowNQp8TWpBeE5pMHdPQT09IDUzOTUxMSAyMDE2LTA4LTAxIDIzOjI0OjA1CnxNakF4Tmkwd09BPT0gNTM5NTEyIDIwMTYtMDgtMDEgMjM6MzA6MDUKfE1qQXhOaTB3T0E9PSA1Mzk1MTMgMjAxNi0wOC0wMSAyMzozNDowNQp8TWpBeE5pMHdPQT09IDUzOTUxNCAyMDE2LTA4LTAxIDIzOjM4OjA1CnxNakF4Tmkwd09BPT0gNTM5NTE1IDIwMTYtMDgtMDEgMjM6NDI6MDUKfE1qQXhOaTB3T0E9PSA1Mzk1MTYgMjAxNi0wOC0wMSAyMzo0NjowNQp8TWpBeE5pMHdPQT09IDUzOTUxNyAyMDE2LTA4LTAxIDIzOjUwOjA1CnxNakF4Tmkwd09BPT0gNTM5NTE4IDIwMTYtMDgtMDEgMjM6NTQ6MDUKfE1qQXhOaTB3T0E9PSA1Mzk1MTkgMjAxNi0wOC0wMSAyMzo1ODowNQp8TWpBeE5pMHdPQT09IDUzOTUxOSAyMDE2LTA4LTAyIDAwOjAwOjAwCnxNakF4Tmkwd09BPT0gNTM5NTIwIDIwMTYtMDgtMDIgMDA6MDI6MDYKfE1qQXhOaTB3T0E9PSA1Mzk1MjEgMjAxNi0wOC0wMiAwMDowNjowNQp8TWpBeE5pMHdPQT09IDUzOTUyMiAyMDE2LTA4LTAyIDAwOjEwOjA1CnxNakF4Tmkwd09BPT0gNTM5NTIzIDIwMTYtMDgtMDIgMDA6MTY6MDUKfE1qQXhOaTB3T0E9PSA1Mzk1MjQgMjAxNi0wOC0wMiAwMDoyMDowNQp8TWpBeE5pMHdPQT09IDUzOTUyNSAyMDE2LTA4LTAyIDAwOjI0OjA1CnxNakF4Tmkwd09BPT0gNTM5NTI2IDIwMTYtMDgtMDIgMDA6Mjg6MDUKfE1qQXhOaTB3T0E9PSA1Mzk1MjcgMjAxNi0wOC0wMiAwMDozNDowNQp8TWpBeE5pMHdPQT09IDUzOTUyOCAyMDE2LTA4LTAyIDAwOjM4OjA1CnxNakF4Tmkwd09BPT0gNTM5NTI5IDIwMTYtMDgtMDIgMDA6NDI6MDUKfE1qQXhOaTB3T0E9PSA1Mzk1MzAgMjAxNi0wOC0wMiAwMDo0NjowNQp8TWpBeE5pMHdPQT09IDUzOTUzMSAyMDE2LTA4LTAyIDAwOjUwOjA1CnxNakF4Tmkwd09BPT0gNTM5NTMyIDIwMTYtMDgtMDIgMDA6NTQ6MDUKfE1qQXhOaTB3T0E9PSA1Mzk1MzMgMjAxNi0wOC0wMiAwMTowMDowNQp8TWpBeE5pMHdPQT09IDUzOTUzNCAyMDE2LTA4LTAyIDA2OjAyOjM1CnxNakF4Tmkwd09BPT0gNTM5NTM1IDIwMTYtMDgtMDIgMDY6MDQ6NDUKfE1qQXhOaTB3T0E9PSA1Mzk1MzYgMjAxNi0wOC0wMiAwNjowODo0NQp8TWpBeE5pMHdPQT09IDUzOTUzNyAyMDE2LTA4LTAyIDA2OjE0OjQ1CnxNakF4Tmkwd09BPT0gNTM5NTM4IDIwMTYtMDgtMDIgMDY6MTY6NDUKfE1qQXhOaTB3T0E9PSA1Mzk1MzkgMjAxNi0wOC0wMiAwNjoyMDo0NQp8TWpBeE5pMHdPQT09IDUzOTU0MCAyMDE2LTA4LTAyIDA2OjI2OjQ1CnxNakF4Tmkwd09BPT0gNTM5NTQxIDIwMTYtMDgtMDIgMDY6MzI6NDUKfE1qQXhOaTB3T0E9PSA1Mzk1NDIgMjAxNi0wOC0wMiAwNjozNDo0NQp8TWpBeE5pMHdPQT09IDUzOTU0MyAyMDE2LTA4LTAyIDA2OjM4OjQ1CnxNakF4Tmkwd09BPT0gNTM5NTQ0IDIwMTYtMDgtMDIgMDY6NDI6NDUKfE1qQXhOaTB3T0E9PSA1Mzk1NDUgMjAxNi0wOC0wMiAwNjo0Njo0NQp8TWpBeE5pMHdPQT09IDUzOTU0NiAyMDE2LTA4LTAyIDA2OjUwOjQ1CnxNakF4Tmkwd09BPT0gNTM5NTQ3IDIwMTYtMDgtMDIgMDY6NTQ6NDUKfE1qQXhOaTB3T0E9PSA1Mzk1NDggMjAxNi0wOC0wMiAwNzowMDo0NQp8TWpBeE5pMHdPQT09IDUzOTU0OSAyMDE2LTA4LTAyIDA3OjA0OjQ1CnxNakF4Tmkwd09BPT0gNTM5NTUwIDIwMTYtMDgtMDIgMDc6MDg6NDUKfE1qQXhOaTB3T0E9PSA1Mzk1NTEgMjAxNi0wOC0wMiAwNzoxMjo0NQp8TWpBeE5pMHdPQT09IDUzOTU1MiAyMDE2LTA4LTAyIDA3OjE4OjQ1CnxNakF4Tmkwd09BPT0gNTM5NTUzIDIwMTYtMDgtMDIgMDc6MjI6NDUKfE1qQXhOaTB3T0E9PSA1Mzk1NTQgMjAxNi0wOC0wMiAwNzoyNjo0Ngp8TWpBeE5pMHdPQT09IDUzOTU1NSAyMDE2LTA4LTAyIDA3OjMwOjQ1CnxNakF4Tmkwd09BPT0gNTM5NTU2IDIwMTYtMDgtMDIgMDc6MzQ6NDUKfE1qQXhOaTB3T0E9PSA1Mzk1NTcgMjAxNi0wOC0wMiAwNzo0MDo0NQp8TWpBeE5pMHdPQT09IDUzOTU1OCAyMDE2LTA4LTAyIDA3OjQ0OjQ1CnxNakF4Tmkwd09BPT0gNTM5NTU5IDIwMTYtMDgtMDIgMDc6NDg6NDUKfE1qQXhOaTB3T0E9PSA1Mzk1NjAgMjAxNi0wOC0wMiAwNzo1Mjo0NQp8TWpBeE5pMHdPQT09IDUzOTU2MSAyMDE2LTA4LTAyIDA3OjU2OjQ1CnxNakF4Tmkwd09BPT0gNTM5NTYyIDIwMTYtMDgtMDIgMDg6MDA6NDUKfE1qQXhOaTB3T0E9PSA1Mzk1NjMgMjAxNi0wOC0wMiAwODowNDo0NQp8TWpBeE5pMHdPQT09IDUzOTU2NCAyMDE2LTA4LTAyIDA4OjA4OjQ1CnxNakF4Tmkwd09BPT0gNTM5NTY1IDIwMTYtMDgtMDIgMDg6MTI6NDUKfE1qQXhOaTB3T0E9PSA1Mzk1NjYgMjAxNi0wOC0wMiAwODoxNjo0NQp8TWpBeE5pMHdPQT09IDUzOTU2NyAyMDE2LTA4LTAyIDA4OjIyOjQ1CnxNakF4Tmkwd09BPT0gNTM5NTY4IDIwMTYtMDgtMDIgMDg6MjY6NDUKfE1qQXhOaTB3T0E9PSA1Mzk1NjkgMjAxNi0wOC0wMiAwODozMDo0NQp8TWpBeE5pMHdPQT09IDUzOTU3MCAyMDE2LTA4LTAyIDA4OjM0OjQ1CnxNakF4Tmkwd09BPT0gNTM5NTcxIDIwMTYtMDgtMDIgMDg6Mzg6NDUKfE1qQXhOaTB3T0E9PSA1Mzk2NTUgMjAxNi0wOC0wMiAxMDo0MjoyNQp8TWpBeE5pMHdPQT09IDUzOTY2MSAyMDE2LTA4LTAyIDEwOjQ0OjI1CnxNakF4Tmkwd09BPT0gNTM5NjY3IDIwMTYtMDgtMDIgMTA6NDY6MjUKfE1qQXhOaTB3T0E9PSA1Mzk2NzMgMjAxNi0wOC0wMiAxMDo0ODowNQp8TWpBeE5pMHdPQT09IDUzOTY3NiAyMDE2LTA4LTAyIDEwOjQ5OjA1CnxNakF4Tmkwd09BPT0gNTM5NjgxIDIwMTYtMDgtMDIgMTA6NTA6MzUKfE1qQXhOaTB3T0E9PSA1Mzk2ODQgMjAxNi0wOC0wMiAxMDo1MTozNQp8TWpBeE5pMHdPQT09IDUzOTY5MSAyMDE2LTA4LTAyIDEwOjUzOjM1CnxNakF4Tmkwd09BPT0gNTQwMDE1IDIwMTYtMDgtMDIgMTI6NTU6MTUKfE1qQXhOaTB3T0E9PSA1NDAwMjAgMjAxNi0wOC0wMiAxMjo1NzoxNQp8TWpBeE5pMHdPQT09IDU0MDAyNSAyMDE2LTA4LTAyIDEyOjU5OjE1CnxNakF4Tmkwd09BPT0gNTQwMDMwIDIwMTYtMDgtMDIgMTM6MDE6MTUKfE1qQXhOaTB3T0E9PSA1NDAwMzUgMjAxNi0wOC0wMiAxMzowMzoxNQp8TWpBeE5pMHdPQT09IDU0MDA0MCAyMDE2LTA4LTAyIDEzOjA1OjE1CnxNakF4Tmkwd09BPT0gNTQwMDQ1IDIwMTYtMDgtMDIgMTM6MDc6MTUKfE1qQXhOaTB3T0E9PSA1NDAwNTAgMjAxNi0wOC0wMiAxMzowOToxNQp8TWpBeE5pMHdPQT09IDU0MDA1NSAyMDE2LTA4LTAyIDEzOjExOjE1CnxNakF4Tmkwd09BPT0gNTQwMDYwIDIwMTYtMDgtMDIgMTM6MTM6MTUKfE1qQXhOaTB3T0E9PSA1NDAwNjUgMjAxNi0wOC0wMiAxMzoxNToxNQp8TWpBeE5pMHdPQT09IDU0MDA3MCAyMDE2LTA4LTAyIDEzOjE3OjE1CnxNakF4Tmkwd09BPT0gNTQwMDc1IDIwMTYtMDgtMDIgMTM6MTk6MTUKfE1qQXhOaTB3T0E9PSA1NDAwODAgMjAxNi0wOC0wMiAxMzoyMToxNQp8TWpBeE5pMHdPQT09IDU0MDA4NSAyMDE2LTA4LTAyIDEzOjIzOjE1CnxNakF4Tmkwd09BPT0gNTQwMDkwIDIwMTYtMDgtMDIgMTM6MjU6MTUKfE1qQXhOaTB3T0E9PSA1NDAwOTUgMjAxNi0wOC0wMiAxMzoyNzoxNQp8TWpBeE5pMHdPQT09IDU0MDEwMCAyMDE2LTA4LTAyIDEzOjI5OjE1CnxNakF4Tmkwd09BPT0gNTQwMTA1IDIwMTYtMDgtMDIgMTM6MzE6MTUKfE1qQXhOaTB3T0E9PSA1NDAyMjkgMjAxNi0wOC0wMiAxNDoyMToxNQp8TWpBeE5pMHdPQT09IDU0MDIzNCAyMDE2LTA4LTAyIDE0OjIzOjE1CnxNakF4Tmkwd09BPT0gNTQwMjM5IDIwMTYtMDgtMDIgMTQ6MjU6MTUKfE1qQXhOaTB3T0E9PSA1NDAyNDQgMjAxNi0wOC0wMiAxNDoyNzoxNQp8TWpBeE5pMHdPQT09IDU0MDI0OSAyMDE2LTA4LTAyIDE0OjI5OjE1CnxNakF4Tmkwd09BPT0gNTQwMjU0IDIwMTYtMDgtMDIgMTQ6MzE6MTUKfE1qQXhOaTB3T0E9PSA1NDAyNTkgMjAxNi0wOC0wMiAxNDozMzoxNQp8TWpBeE5pMHdPQT09IDU0MDI2NCAyMDE2LTA4LTAyIDE0OjM1OjE1CnxNakF4Tmkwd09BPT0gNTQwMjY5IDIwMTYtMDgtMDIgMTQ6Mzc6MTUKfE1qQXhOaTB3T0E9PSA1NDAyNzQgMjAxNi0wOC0wMiAxNDozOToxNQp8TWpBeE5pMHdPQT09IDU0MDI3OSAyMDE2LTA4LTAyIDE0OjQxOjE1CnxNakF4Tmkwd09BPT0gNTQwMjgzIDIwMTYtMDgtMDIgMTQ6NDM6MTUKfE1qQXhOaTB3T0E9PSA1NDAyODggMjAxNi0wOC0wMiAxNDo0NToxNQp8TWpBeE5pMHdPQT09IDU0MDI5MyAyMDE2LTA4LTAyIDE0OjQ3OjE1CnxNakF4Tmkwd09BPT0gNTQwMjk4IDIwMTYtMDgtMDIgMTQ6NDk6MTUKfE1qQXhOaTB3T0E9PSA1NDAzMDMgMjAxNi0wOC0wMiAxNDo1MToxNQp8TWpBeE5pMHdPQT09IDU0MDMwOCAyMDE2LTA4LTAyIDE0OjUzOjE1CnxNakF4Tmkwd09BPT0gNTQwMzEzIDIwMTYtMDgtMDIgMTQ6NTU6MTUKfE1qQXhOaTB3T0E9PSA1NDAzMTggMjAxNi0wOC0wMiAxNDo1NzoxNQp8TWpBeE5pMHdPQT09IDU0MDMyMyAyMDE2LTA4LTAyIDE0OjU5OjE1CnxNakF4Tmkwd09BPT0gNTQwMzI4IDIwMTYtMDgtMDIgMTU6MDE6MTUKfE1qQXhOaTB3T0E9PSA1NDAzMzMgMjAxNi0wOC0wMiAxNTowMzoxNQp8TWpBeE5pMHdPQT09IDU0MDMzOCAyMDE2LTA4LTAyIDE1OjA1OjE1CnxNakF4Tmkwd09BPT0gNTQwMzQzIDIwMTYtMDgtMDIgMTU6MDc6MTUKfE1qQXhOaTB3T0E9PSA1NDAzNDggMjAxNi0wOC0wMiAxNTowOToxNQp8TWpBeE5pMHdPQT09IDU0MDM1MyAyMDE2LTA4LTAyIDE1OjExOjE1CnxNakF4Tmkwd09BPT0gNTQwMzU4IDIwMTYtMDgtMDIgMTU6MTM6MTUKfE1qQXhOaTB3T0E9PSA1NDAzNjMgMjAxNi0wOC0wMiAxNToxNToxNQp8TWpBeE5pMHdPQT09IDU0MDM2OCAyMDE2LTA4LTAyIDE1OjE3OjE1CnxNakF4Tmkwd09BPT0gNTQwMzczIDIwMTYtMDgtMDIgMTU6MTk6MTUKfE1qQXhOaTB3T0E9PSA1NDAzNzggMjAxNi0wOC0wMiAxNToyMToxNQp8TWpBeE5pMHdPQT09IDU0MDM4MiAyMDE2LTA4LTAyIDE1OjIzOjE1CnxNakF4Tmkwd09BPT0gNTQwMzg3IDIwMTYtMDgtMDIgMTU6MjU6MTUKfE1qQXhOaTB3T0E9PSA1NDAzOTIgMjAxNi0wOC0wMiAxNToyNzoxNQp8TWpBeE5pMHdPQT09IDU0MDM5NyAyMDE2LTA4LTAyIDE1OjI5OjE1CnxNakF4Tmkwd09BPT0gNTQwNDAyIDIwMTYtMDgtMDIgMTU6MzE6MTUKfE1qQXhOaTB3T0E9PSA1NDA0MDcgMjAxNi0wOC0wMiAxNTozMzoxNQp8TWpBeE5pMHdPQT09IDU0MDQxMiAyMDE2LTA4LTAyIDE1OjM1OjE1CnxNakF4Tmkwd09BPT0gNTQwNDE3IDIwMTYtMDgtMDIgMTU6Mzc6MTUKfE1qQXhOaTB3T0E9PSA1NDA0MjIgMjAxNi0wOC0wMiAxNTozOToxNQp8TWpBeE5pMHdPQT09IDU0MDQyNyAyMDE2LTA4LTAyIDE1OjQxOjE1CnxNakF4Tmkwd09BPT0gNTQwNDMyIDIwMTYtMDgtMDIgMTU6NDM6MTUKfE1qQXhOaTB3T0E9PSA1NDA0MzcgMjAxNi0wOC0wMiAxNTo0NToxNQp8TWpBeE5pMHdPQT09IDU0MDQ0MiAyMDE2LTA4LTAyIDE1OjQ3OjE1CnxNakF4Tmkwd09BPT0gNTQwNDQ3IDIwMTYtMDgtMDIgMTU6NDk6MTUKfE1qQXhOaTB3T0E9PSA1NDA0NTIgMjAxNi0wOC0wMiAxNTo1MToxNQp8TWpBeE5pMHdPQT09IDU0MDQ1NyAyMDE2LTA4LTAyIDE1OjUzOjE1CnxNakF4Tmkwd09BPT0gNTQwNDYyIDIwMTYtMDgtMDIgMTU6NTU6MTUKfE1qQXhOaTB3T0E9PSA1NDA0NjcgMjAxNi0wOC0wMiAxNTo1NzoxNQp8TWpBeE5pMHdPQT09IDU0MDQ3MiAyMDE2LTA4LTAyIDE1OjU5OjE1CnxNakF4Tmkwd09BPT0gNTQwNDc3IDIwMTYtMDgtMDIgMTY6MDE6MTUKfE1qQXhOaTB3T0E9PSA1NDA0ODIgMjAxNi0wOC0wMiAxNjowMzoxNQp8TWpBeE5pMHdPQT09IDU0MDQ4NyAyMDE2LTA4LTAyIDE2OjA1OjE1CnxNakF4Tmkwd09BPT0gNTQwNDkyIDIwMTYtMDgtMDIgMTY6MDc6MTUKfE1qQXhOaTB3T0E9PSA1NDA0OTcgMjAxNi0wOC0wMiAxNjowOToxNQp8TWpBeE5pMHdPQT09IDU0MDUwMiAyMDE2LTA4LTAyIDE2OjExOjE1CnxNakF4Tmkwd09BPT0gNTQwNTA3IDIwMTYtMDgtMDIgMTY6MTM6MTUKfE1qQXhOaTB3T0E9PSA1NDA1MTIgMjAxNi0wOC0wMiAxNjoxNToxNQp8TWpBeE5pMHdPQT09IDU0MDUxNyAyMDE2LTA4LTAyIDE2OjE3OjE1CnxNakF4Tmkwd09BPT0gNTQwNTIyIDIwMTYtMDgtMDIgMTY6MTk6MTUKfE1qQXhOaTB3T0E9PSA1NDA1MjcgMjAxNi0wOC0wMiAxNjoyMToxNQp8TWpBeE5pMHdPQT09IDU0MDg5NiAyMDE2LTA4LTAyIDE4OjI0OjA1CnxNakF4Tmkwd09BPT0gNTQwOTAxIDIwMTYtMDgtMDIgMTg6MjY6MDUKfE1qQXhOaTB3T0E9PSA1NDA5MTQgMjAxNi0wOC0wMiAxODozMDowNQp8TWpBeE5pMHdPQT09IDU0MDkyMCAyMDE2LTA4LTAyIDE4OjMyOjA2CnxNakF4Tmkwd09BPT0gNTQwOTI2IDIwMTYtMDgtMDIgMTg6MzQ6MDUKfE1qQXhOaTB3T0E9PSA1NDA5MzIgMjAxNi0wOC0wMiAxODozNjowNQp8TWpBeE5pMHdPQT09IDU0MDkzOCAyMDE2LTA4LTAyIDE4OjM4OjA1CnxNakF4Tmkwd09BPT0gNTQwOTQ0IDIwMTYtMDgtMDIgMTg6NDA6MDUKfE1qQXhOaTB3T0E9PSA1NDA5NTAgMjAxNi0wOC0wMiAxODo0MjowNwp8TWpBeE5pMHdPQT09IDU0MDk1NiAyMDE2LTA4LTAyIDE4OjQ0OjA1CnxNakF4Tmkwd09BPT0gNTQwOTYyIDIwMTYtMDgtMDIgMTg6NDY6MDUKfE1qQXhOaTB3T0E9PSA1NDA5NjkgMjAxNi0wOC0wMiAxODo0ODowNQp8TWpBeE5pMHdPQT09IDU0MDk3NSAyMDE2LTA4LTAyIDE4OjUwOjA1CnxNakF4Tmkwd09BPT0gNTQwOTgxIDIwMTYtMDgtMDIgMTg6NTI6MDYKfE1qQXhOaTB3T0E9PSA1NDA5ODcgMjAxNi0wOC0wMiAxODo1NDowNQp8TWpBeE5pMHdPQT09IDU0MDk5MyAyMDE2LTA4LTAyIDE4OjU2OjA1CnxNakF4Tmkwd09BPT0gNTQwOTk5IDIwMTYtMDgtMDIgMTg6NTg6MDUKfE1qQXhOaTB3T0E9PSA1NDEwMDUgMjAxNi0wOC0wMiAxOTowMDowNQp8TWpBeE5pMHdPQT09IDU0MTAxMSAyMDE2LTA4LTAyIDE5OjAyOjA3CnxNakF4Tmkwd09BPT0gNTQxMDE3IDIwMTYtMDgtMDIgMTk6MDQ6MDUKfE1qQXhOaTB3T0E9PSA1NDEwMjMgMjAxNi0wOC0wMiAxOTowNjowNQp8TWpBeE5pMHdPQT09IDU0MTAyOSAyMDE2LTA4LTAyIDE5OjA4OjA1CnxNakF4Tmkwd09BPT0gNTQxMDM1IDIwMTYtMDgtMDIgMTk6MTA6MDUKfE1qQXhOaTB3T0E9PSA1NDEwNDEgMjAxNi0wOC0wMiAxOToxMjowNwp8TWpBeE5pMHdPQT09IDU0MTA0NyAyMDE2LTA4LTAyIDE5OjE0OjA1CnxNakF4Tmkwd09BPT0gNTQxMDUzIDIwMTYtMDgtMDIgMTk6MTY6MDUKfE1qQXhOaTB3T0E9PSA1NDEwNTkgMjAxNi0wOC0wMiAxOToxODowNQp8TWpBeE5pMHdPQT09IDU0MTA2NSAyMDE2LTA4LTAyIDE5OjIwOjA1CnxNakF4Tmkwd09BPT0gNTQxMDcxIDIwMTYtMDgtMDIgMTk6MjI6MDUKfE1qQXhOaTB3T0E9PSA1NDEwNzcgMjAxNi0wOC0wMiAxOToyNDowNQp8TWpBeE5pMHdPQT09IDU0MTA4MiAyMDE2LTA4LTAyIDE5OjI2OjA1CnxNakF4Tmkwd09BPT0gNTQxMDgzIDIwMTYtMDgtMDIgMTk6Mjg6MDUKfE1qQXhOaTB3T0E9PSA1NDEwODQgMjAxNi0wOC0wMiAxOTozMDowNQp8TWpBeE5pMHdPQT09IDU0MTA4NSAyMDE2LTA4LTAyIDE5OjM0OjA1CnxNakF4Tmkwd09BPT0gNTQxMDg2IDIwMTYtMDgtMDIgMTk6MzY6MDUKfE1qQXhOaTB3T0E9PSA1NDEwODcgMjAxNi0wOC0wMiAxOTo0MDowNQp8TWpBeE5pMHdPQT09IDU0MTA4OCAyMDE2LTA4LTAyIDE5OjQ0OjA1CnxNakF4Tmkwd09BPT0gNTQxMDg5IDIwMTYtMDgtMDIgMTk6NDg6MDUKfE1qQXhOaTB3T0E9PSA1NDEwOTAgMjAxNi0wOC0wMiAxOTo1MjowNgp8TWpBeE5pMHdPQT09IDU0MTA5MSAyMDE2LTA4LTAyIDE5OjU0OjA1CnxNakF4Tmkwd09BPT0gNTQxMDkyIDIwMTYtMDgtMDIgMjA6MDA6MDUKfE1qQXhOaTB3T0E9PSA1NDEwOTMgMjAxNi0wOC0wMiAyMDowNDowNQp8TWpBeE5pMHdPQT09IDU0MTA5NCAyMDE2LTA4LTAyIDIwOjA4OjA1CnxNakF4Tmkwd09BPT0gNTQxMDk1IDIwMTYtMDgtMDIgMjA6MTI6MDYKfE1qQXhOaTB3T0E9PSA1NDEwOTYgMjAxNi0wOC0wMiAyMDoxNjowNQp8TWpBeE5pMHdPQT09IDU0MTA5NyAyMDE2LTA4LTAyIDIwOjIyOjA2CnxNakF4Tmkwd09BPT0gNTQxMDk4IDIwMTYtMDgtMDIgMjA6MjY6MDUKfE1qQXhOaTB3T0E9PSA1NDExMjcgMjAxNi0wOC0wMiAyMjozMDowNQp8TWpBeE5pMHdPQT09IDU0MTEyOCAyMDE2LTA4LTAyIDIyOjM0OjA1CnxNakF4Tmkwd09BPT0gNTQxMTI5IDIwMTYtMDgtMDIgMjI6Mzg6MDUKfE1qQXhOaTB3T0E9PSA1NDExMzAgMjAxNi0wOC0wMiAyMjo0MjowNwp8TWpBeE5pMHdPQT09IDU0MTEzMSAyMDE2LTA4LTAyIDIyOjQ2OjA1CnxNakF4Tmkwd09BPT0gNTQxMTM0IDIwMTYtMDgtMDIgMjM6MDI6MDUKfE1qQXhOaTB3T0E9PSA1NDExMzQgMjAxNi0wOC0wMyAwMDowMDowMAp8TWpBeE5pMHdPQT09IDU0MTE1NSAyMDE2LTA4LTAzIDA3OjI2OjExCnxNakF4Tmkwd09BPT0gNTQxMTU2IDIwMTYtMDgtMDMgMDc6MzA6MTEKfE1qQXhOaTB3T0E9PSA1NDExNTcgMjAxNi0wOC0wMyAwNzozNDoxMQp8TWpBeE5pMHdPQT09IDU0MTE1OCAyMDE2LTA4LTAzIDA3OjQwOjExCnxNakF4Tmkwd09BPT0gNTQxMTU5IDIwMTYtMDgtMDMgMDc6NDQ6MTEKfE1qQXhOaTB3T0E9PSA1NDExNjAgMjAxNi0wOC0wMyAwNzo0ODoxMQp8TWpBeE5pMHdPQT09IDU0MTE2MSAyMDE2LTA4LTAzIDA3OjUyOjExCnxNakF4Tmkwd09BPT0gNTQxMTYyIDIwMTYtMDgtMDMgMDc6NTg6MTEKfE1qQXhOaTB3T0E9PSA1NDExNjMgMjAxNi0wOC0wMyAwODowMjoxMQp8TWpBeE5pMHdPQT09IDU0MTE2NCAyMDE2LTA4LTAzIDA4OjA2OjExCnxNakF4Tmkwd09BPT0gNTQxMTY1IDIwMTYtMDgtMDMgMDg6MTA6MTEKfE1qQXhOaTB3T0E9PSA1NDExNjYgMjAxNi0wOC0wMyAwODoxNDoxMQp8TWpBeE5pMHdPQT09IDU0MTE2NyAyMDE2LTA4LTAzIDA4OjIwOjExCnxNakF4Tmkwd09BPT0gNTQxMTY4IDIwMTYtMDgtMDMgMDg6MjQ6MTEKfE1qQXhOaTB3T0E9PSA1NDExNjkgMjAxNi0wOC0wMyAwODoyODoxMQp8TWpBeE5pMHdPQT09IDU0MTE3MCAyMDE2LTA4LTAzIDA4OjMyOjExCnxNakF4Tmkwd09BPT0gNTQxMTcxIDIwMTYtMDgtMDMgMDg6MzY6MTEKfE1qQXhOaTB3T0E9PSA1NDExNzIgMjAxNi0wOC0wMyAwODo0MDoxMQp8TWpBeE5pMHdPQT09IDU0MTE3MyAyMDE2LTA4LTAzIDA4OjQ2OjExCnxNakF4Tmkwd09BPT0gNTQxMTc0IDIwMTYtMDgtMDMgMDg6NTA6MTEKfE1qQXhOaTB3T0E9PSA1NDExNzUgMjAxNi0wOC0wMyAwODo1NDoxMQp8TWpBeE5pMHdPQT09IDU0MTE3NiAyMDE2LTA4LTAzIDA4OjU4OjExCnxNakF4Tmkwd09BPT0gNTQxMTc3IDIwMTYtMDgtMDMgMDk6MDI6MTEKfE1qQXhOaTB3T0E9PSA1NDExNzggMjAxNi0wOC0wMyAwOTowNjoxMQp8TWpBeE5pMHdPQT09IDU0MTE3OSAyMDE2LTA4LTAzIDA5OjEwOjExCnxNakF4Tmkwd09BPT0gNTQxMTgyIDIwMTYtMDgtMDMgMDk6MTQ6MjEKfE1qQXhOaTB3T0E9PSA1NDExODYgMjAxNi0wOC0wMyAwOToxNToyMQp8TWpBeE5pMHdPQT09IDU0MTE5MiAyMDE2LTA4LTAzIDA5OjE3OjIxCnxNakF4Tmkwd09BPT0gNTQxMTk0IDIwMTYtMDgtMDMgMDk6MTg6MDEKfE1qQXhOaTB3T0E9PSA1NDExOTcgMjAxNi0wOC0wMyAwOToxOTowMQp8TWpBeE5pMHdPQT09IDU0MTIwMyAyMDE2LTA4LTAzIDA5OjIwOjMxCnxNakF4Tmkwd09BPT0gNTQxMjA2IDIwMTYtMDgtMDMgMDk6MjE6MzMKfE1qQXhOaTB3T0E9PSA1NDEyMTMgMjAxNi0wOC0wMyAwOToyMzozMQp8TWpBeE5pMHdPQT09IDU0MTIyMCAyMDE2LTA4LTAzIDA5OjI1OjMxCnxNakF4Tmkwd09BPT0gNTQxMjI0IDIwMTYtMDgtMDMgMDk6MjY6NDEKfE1qQXhOaTB3T0E9PSA1NDEyMjcgMjAxNi0wOC0wMyAwOToyNzo0MQp8TWpBeE5pMHdPQT09IDU0MTIzNCAyMDE2LTA4LTAzIDA5OjI5OjQxCnxNakF4Tmkwd09BPT0gNTQxMjM3IDIwMTYtMDgtMDMgMDk6MzA6NTEKfE1qQXhOaTB3T0E9PSA1NDEyNDEgMjAxNi0wOC0wMyAwOTozMTo1MQp8TWpBeE5pMHdPQT09IDU0MTI0NyAyMDE2LTA4LTAzIDA5OjMzOjUxCnxNakF4Tmkwd09BPT0gNTQxMjU0IDIwMTYtMDgtMDMgMDk6MzU6NTEKfE1qQXhOaTB3T0E9PSA1NDEyNjEgMjAxNi0wOC0wMyAwOTozNzo1MQp8TWpBeE5pMHdPQT09IDU0MTI2NSAyMDE2LTA4LTAzIDA5OjM5OjIxCnxNakF4Tmkwd09BPT0gNTQxMjY4IDIwMTYtMDgtMDMgMDk6NDA6MjEKfE1qQXhOaTB3T0E9PSA1NDEyNzIgMjAxNi0wOC0wMyAwOTo0MTozNAp8TWpBeE5pMHdPQT09IDU0MTMzOSAyMDE2LTA4LTAzIDExOjQzOjUxCnxNakF4Tmkwd09BPT0gNTQxMzQwIDIwMTYtMDgtMDMgMTE6NDc6NTEKfE1qQXhOaTB3T0E9PSA1NDEzNDEgMjAxNi0wOC0wMyAxMTo1MTo1MQp8TWpBeE5pMHdPQT09IDU0MTM0MiAyMDE2LTA4LTAzIDExOjU1OjUxCnxNakF4Tmkwd09BPT0gNTQxMzQzIDIwMTYtMDgtMDMgMTE6NTk6NTEKfE1qQXhOaTB3T0E9PSA1NDEzNDQgMjAxNi0wOC0wMyAxMjowMzo1MQp8TWpBeE5pMHdPQT09IDU0MTM0NSAyMDE2LTA4LTAzIDEyOjA3OjUxCnxNakF4Tmkwd09BPT0gNTQxMzQ2IDIwMTYtMDgtMDMgMTI6MTE6NTEKfE1qQXhOaTB3T0E9PSA1NDEzNDcgMjAxNi0wOC0wMyAxMjoxNzo1MQp8TWpBeE5pMHdPQT09IDU0MTM0OCAyMDE2LTA4LTAzIDEyOjIxOjUxCnxNakF4Tmkwd09BPT0gNTQxMzQ5IDIwMTYtMDgtMDMgMTI6MjU6NTEKfE1qQXhOaTB3T0E9PSA1NDEzNTAgMjAxNi0wOC0wMyAxMjoyOTo1MQp8TWpBeE5pMHdPQT09IDU0MTM1MSAyMDE2LTA4LTAzIDEyOjMzOjUxCnxNakF4Tmkwd09BPT0gNTQxMzUyIDIwMTYtMDgtMDMgMTI6Mzc6NTEKfE1qQXhOaTB3T0E9PSA1NDEzNTMgMjAxNi0wOC0wMyAxMjo0Mzo1MQp8TWpBeE5pMHdPQT09IDU0MTM1NCAyMDE2LTA4LTAzIDEyOjQ3OjUxCnxNakF4Tmkwd09BPT0gNTQxMzU1IDIwMTYtMDgtMDMgMTI6NTE6NTEKfE1qQXhOaTB3T0E9PSA1NDEzNTYgMjAxNi0wOC0wMyAxMjo1NTo1MQp8TWpBeE5pMHdPQT09IDU0MTM1NyAyMDE2LTA4LTAzIDEzOjAxOjUxCnxNakF4Tmkwd09BPT0gNTQxMzU4IDIwMTYtMDgtMDMgMTM6MDU6NTEKfE1qQXhOaTB3T0E9PSA1NDEzNTkgMjAxNi0wOC0wMyAxMzowOTo1MQp8TWpBeE5pMHdPQT09IDU0MTM2MCAyMDE2LTA4LTAzIDEzOjEzOjUxCnxNakF4Tmkwd09BPT0gNTQxMzYxIDIwMTYtMDgtMDMgMTM6MTc6NTEKfE1qQXhOaTB3T0E9PSA1NDEzNjIgMjAxNi0wOC0wMyAxMzoyMTo1MQp8TWpBeE5pMHdPQT09IDU0MTM2MyAyMDE2LTA4LTAzIDEzOjI1OjUxCnxNakF4Tmkwd09BPT0gNTQxMzkyIDIwMTYtMDgtMDMgMTU6Mjk6NTEKfE1qQXhOaTB3T0E9PSA1NDEzOTMgMjAxNi0wOC0wMyAxNTozNTo1MQp8TWpBeE5pMHdPQT09IDU0MTM5NCAyMDE2LTA4LTAzIDE1OjM5OjUxCnxNakF4Tmkwd09BPT0gNTQxMzk1IDIwMTYtMDgtMDMgMTU6NDM6NTEKfE1qQXhOaTB3T0E9PSA1NDEzOTYgMjAxNi0wOC0wMyAxNTo0Nzo1MQp8TWpBeE5pMHdPQT09IDU0MTM5NyAyMDE2LTA4LTAzIDE1OjUxOjUxCnxNakF4Tmkwd09BPT0gNTQxMzk4IDIwMTYtMDgtMDMgMTU6NTc6NTEKfE1qQXhOaTB3T0E9PSA1NDEzOTkgMjAxNi0wOC0wMyAxNjowMTo1MQp8TWpBeE5pMHdPQT09IDU0MTQwMCAyMDE2LTA4LTAzIDE2OjA1OjUxCnxNakF4Tmkwd09BPT0gNTQxNDAxIDIwMTYtMDgtMDMgMTY6MDk6NTEKfE1qQXhOaTB3T0E9PSA1NDE0MDIgMjAxNi0wOC0wMyAxNjoxMzo1MQp8TWpBeE5pMHdPQT09IDU0MTQwMyAyMDE2LTA4LTAzIDE2OjE3OjUxCnxNakF4Tmkwd09BPT0gNTQxNDA0IDIwMTYtMDgtMDMgMTY6MjE6NTEKfE1qQXhOaTB3T0E9PSA1NDE0MDUgMjAxNi0wOC0wMyAxNjoyNTo1MQp8TWpBeE5pMHdPQT09IDU0MTQwNiAyMDE2LTA4LTAzIDE2OjI5OjUxCnxNakF4Tmkwd09BPT0gNTQxNDA3IDIwMTYtMDgtMDMgMTY6MzE6NTEKfE1qQXhOaTB3T0E9PSA1NDE0MDkgMjAxNi0wOC0wMyAxNjozNTozMQp8TWpBeE5pMHdPQT09IDU0MTQxNCAyMDE2LTA4LTAzIDE2OjM3OjMxCnxNakF4Tmkwd09BPT0gNTQxNDE5IDIwMTYtMDgtMDMgMTY6Mzk6MzEKfE1qQXhOaTB3T0E9PSA1NDE0MjMgMjAxNi0wOC0wMyAxNjo0MTozNQp8TWpBeE5pMHdPQT09IDU0MTQyOCAyMDE2LTA4LTAzIDE2OjQzOjMxCnxNakF4Tmkwd09BPT0gNTQxNDMzIDIwMTYtMDgtMDMgMTY6NDU6MzEKfE1qQXhOaTB3T0E9PSA1NDE0MzggMjAxNi0wOC0wMyAxNjo0NzozMQp8TWpBeE5pMHdPQT09IDU0MTQ0MyAyMDE2LTA4LTAzIDE2OjQ5OjMxCnxNakF4Tmkwd09BPT0gNTQxNDQ4IDIwMTYtMDgtMDMgMTY6NTE6MzEKfE1qQXhOaTB3T0E9PSA1NDE0NTIgMjAxNi0wOC0wMyAxNjo1MzozMQp8TWpBeE5pMHdPQT09IDU0MTQ1NyAyMDE2LTA4LTAzIDE2OjU1OjMxCnxNakF4Tmkwd09BPT0gNTQxNDYyIDIwMTYtMDgtMDMgMTY6NTc6MzEKfE1qQXhOaTB3T0E9PSA1NDE0NjcgMjAxNi0wOC0wMyAxNjo1OTozMQp8TWpBeE5pMHdPQT09IDU0MTQ3MiAyMDE2LTA4LTAzIDE3OjAxOjM0CnxNakF4Tmkwd09BPT0gNTQxNDc3IDIwMTYtMDgtMDMgMTc6MDM6MzEKfE1qQXhOaTB3T0E9PSA1NDE0ODIgMjAxNi0wOC0wMyAxNzowNTozMQp8TWpBeE5pMHdPQT09IDU0MTQ4NyAyMDE2LTA4LTAzIDE3OjA3OjMxCnxNakF4Tmkwd09BPT0gNTQxNDkyIDIwMTYtMDgtMDMgMTc6MDk6MzEKfE1qQXhOaTB3T0E9PSA1NDE0OTYgMjAxNi0wOC0wMyAxNzoxMTozNQp8TWpBeE5pMHdPQT09IDU0MTUwMiAyMDE2LTA4LTAzIDE3OjEzOjMxCnxNakF4Tmkwd09BPT0gNTQxNTA3IDIwMTYtMDgtMDMgMTc6MTU6MzEKfE1qQXhOaTB3T0E9PSA1NDE1MTEgMjAxNi0wOC0wMyAxNzoxNzozMQp8TWpBeE5pMHdPQT09IDU0MTUxNiAyMDE2LTA4LTAzIDE3OjE5OjMxCnxNakF4Tmkwd09BPT0gNTQxNTIxIDIwMTYtMDgtMDMgMTc6MjE6MzQKfE1qQXhOaTB3T0E9PSA1NDE1MjYgMjAxNi0wOC0wMyAxNzoyMzozMQp8TWpBeE5pMHdPQT09IDU0MTUzMSAyMDE2LTA4LTAzIDE3OjI1OjMxCnxNakF4Tmkwd09BPT0gNTQxNTM2IDIwMTYtMDgtMDMgMTc6Mjc6MzEKfE1qQXhOaTB3T0E9PSA1NDE1NDEgMjAxNi0wOC0wMyAxNzoyOTozMQp8TWpBeE5pMHdPQT09IDU0MTU0NSAyMDE2LTA4LTAzIDE3OjMxOjMxCnxNakF4Tmkwd09BPT0gNTQxNTUwIDIwMTYtMDgtMDMgMTc6MzM6MzEKfE1qQXhOaTB3T0E9PSA1NDE1NTUgMjAxNi0wOC0wMyAxNzozNTozMQp8TWpBeE5pMHdPQT09IDU0MTU2MCAyMDE2LTA4LTAzIDE3OjM3OjMxCnxNakF4Tmkwd09BPT0gNTQxNTY1IDIwMTYtMDgtMDMgMTc6Mzk6MzEKfE1qQXhOaTB3T0E9PSA1NDE1NzAgMjAxNi0wOC0wMyAxNzo0MTozMgp8TWpBeE5pMHdPQT09IDU0MTU3NSAyMDE2LTA4LTAzIDE3OjQzOjMxCnxNakF4Tmkwd09BPT0gNTQxNTgwIDIwMTYtMDgtMDMgMTc6NDU6MzEKfE1qQXhOaTB3T0E9PSA1NDE1ODQgMjAxNi0wOC0wMyAxNzo0NzozMQp8TWpBeE5pMHdPQT09IDU0MTU4OSAyMDE2LTA4LTAzIDE3OjQ5OjMxCnxNakF4Tmkwd09BPT0gNTQxNTk0IDIwMTYtMDgtMDMgMTc6NTE6MzIKfE1qQXhOaTB3T0E9PSA1NDE1OTkgMjAxNi0wOC0wMyAxNzo1MzozMQp8TWpBeE5pMHdPQT09IDU0MTYwNCAyMDE2LTA4LTAzIDE3OjU1OjMxCnxNakF4Tmkwd09BPT0gNTQxNjA5IDIwMTYtMDgtMDMgMTc6NTc6MzEKfE1qQXhOaTB3T0E9PSA1NDE2MTQgMjAxNi0wOC0wMyAxNzo1OTozMQp8TWpBeE5pMHdPQT09IDU0MTYxOSAyMDE2LTA4LTAzIDE4OjAxOjM0CnxNakF4Tmkwd09BPT0gNTQxNjIzIDIwMTYtMDgtMDMgMTg6MDM6MzEKfE1qQXhOaTB3T0E9PSA1NDE2MjggMjAxNi0wOC0wMyAxODowNTozMQp8TWpBeE5pMHdPQT09IDU0MTYzMyAyMDE2LTA4LTAzIDE4OjA3OjMxCnxNakF4Tmkwd09BPT0gNTQxNjM4IDIwMTYtMDgtMDMgMTg6MDk6MzEKfE1qQXhOaTB3T0E9PSA1NDE2NDEgMjAxNi0wOC0wMyAxODoxMDo1MQp8TWpBeE5pMHdPQT09IDU0MTY0NyAyMDE2LTA4LTAzIDE4OjEyOjUxCnxNakF4Tmkwd09BPT0gNTQxNjUwIDIwMTYtMDgtMDMgMTg6MTQ6MDEKfE1qQXhOaTB3T0E9PSA1NDE2NTYgMjAxNi0wOC0wMyAxODoxNjowMQp8TWpBeE5pMHdPQT09IDU0MTY2MSAyMDE2LTA4LTAzIDE4OjE3OjQxCnxNakF4Tmkwd09BPT0gNTQxNjYzIDIwMTYtMDgtMDMgMTg6MTg6NDEKfE1qQXhOaTB3T0E9PSA1NDE2NjkgMjAxNi0wOC0wMyAxODoyMDo0MQp8TWpBeE5pMHdPQT09IDU0MTY3NCAyMDE2LTA4LTAzIDE4OjIyOjQxCnxNakF4Tmkwd09BPT0gNTQxNjgwIDIwMTYtMDgtMDMgMTg6MjQ6NDEKfE1qQXhOaTB3T0E9PSA1NDE2ODYgMjAxNi0wOC0wMyAxODoyNjo0MQp8TWpBeE5pMHdPQT09IDU0MTY5MSAyMDE2LTA4LTAzIDE4OjI4OjQxCnxNakF4Tmkwd09BPT0gNTQxNjk2IDIwMTYtMDgtMDMgMTg6MzA6NDEKfE1qQXhOaTB3T0E9PSA1NDE3MDIgMjAxNi0wOC0wMyAxODozMjo0MQp8TWpBeE5pMHdPQT09IDU0MTcwNyAyMDE2LTA4LTAzIDE4OjM0OjQxCnxNakF4Tmkwd09BPT0gNTQxNzA5IDIwMTYtMDgtMDMgMTg6MzU6MTEKfE1qQXhOaTB3T0E9PSA1NDE3MTIgMjAxNi0wOC0wMyAxODozNjoxMQp8TWpBeE5pMHdPQT09IDU0MTcxNSAyMDE2LTA4LTAzIDE4OjM3OjIxCnxNakF4Tmkwd09BPT0gNTQxNzE4IDIwMTYtMDgtMDMgMTg6Mzg6MzEKfE1qQXhOaTB3T0E9PSA1NDE3MjEgMjAxNi0wOC0wMyAxODozOTozMQp8TWpBeE5pMHdPQT09IDU0MTcyNiAyMDE2LTA4LTAzIDE4OjQxOjMxCnxNakF4Tmkwd09BPT0gNTQxNzMxIDIwMTYtMDgtMDMgMTg6NDM6MzEKfE1qQXhOaTB3T0E9PSA1NDE3MzMgMjAxNi0wOC0wMyAxODo0NDoxMQp8TWpBeE5pMHdPQT09IDU0MTczNiAyMDE2LTA4LTAzIDE4OjQ1OjExCnxNakF4Tmkwd09BPT0gNTQxNzQxIDIwMTYtMDgtMDMgMTg6NDY6NTEKfE1qQXhOaTB3T0E9PSA1NDE3NDMgMjAxNi0wOC0wMyAxODo0Nzo1MQp8TWpBeE5pMHdPQT09IDU0MTc0OCAyMDE2LTA4LTAzIDE4OjQ5OjUxCnxNakF4Tmkwd09BPT0gNTQxNzU0IDIwMTYtMDgtMDMgMTg6NTE6NTEKfE1qQXhOaTB3T0E9PSA1NDE3NTcgMjAxNi0wOC0wMyAxODo1MzowMQp8TWpBeE5pMHdPQT09IDU0MTc2MCAyMDE2LTA4LTAzIDE4OjU0OjAxCnxNakF4Tmkwd09BPT0gNTQxNzYyIDIwMTYtMDgtMDMgMTg6NTU6MDEKfE1qQXhOaTB3T0E9PSA1NDE3NjUgMjAxNi0wOC0wMyAxODo1NjowMQp8TWpBeE5pMHdPQT09IDU0MTc3MSAyMDE2LTA4LTAzIDE4OjU4OjAxCnxNakF4Tmkwd09BPT0gNTQxNzc2IDIwMTYtMDgtMDMgMTk6MDA6MDEKfE1qQXhOaTB3T0E9PSA1NDE3NzggMjAxNi0wOC0wMyAxOTowMDozMQp8TWpBeE5pMHdPQT09IDU0MTc4MCAyMDE2LTA4LTAzIDE5OjAxOjM0CnxNakF4Tmkwd09BPT0gNTQxNzgzIDIwMTYtMDgtMDMgMTk6MDI6MzEKfE1qQXhOaTB3T0E9PSA1NDE3ODggMjAxNi0wOC0wMyAxOTowNDozMQp8TWpBeE5pMHdPQT09IDU0MTc5NCAyMDE2LTA4LTAzIDE5OjA2OjMyCnxNakF4Tmkwd09BPT0gNTQxNzk5IDIwMTYtMDgtMDMgMTk6MDg6MzEKfE1qQXhOaTB3T0E9PSA1NDE4MDQgMjAxNi0wOC0wMyAxOToxMDozMQp8TWpBeE5pMHdPQT09IDU0MTgxMCAyMDE2LTA4LTAzIDE5OjEyOjMxCnxNakF4Tmkwd09BPT0gNTQxODE1IDIwMTYtMDgtMDMgMTk6MTQ6MzEKfE1qQXhOaTB3T0E9PSA1NDE4MjEgMjAxNi0wOC0wMyAxOToxNjozNAp8TWpBeE5pMHdPQT09IDU0MTgyNiAyMDE2LTA4LTAzIDE5OjE4OjMxCnxNakF4Tmkwd09BPT0gNTQxODMxIDIwMTYtMDgtMDMgMTk6MjA6MzEKfE1qQXhOaTB3T0E9PSA1NDE4MzcgMjAxNi0wOC0wMyAxOToyMjozMQp8TWpBeE5pMHdPQT09IDU0MTg0MiAyMDE2LTA4LTAzIDE5OjI0OjMxCnxNakF4Tmkwd09BPT0gNTQxODQ4IDIwMTYtMDgtMDMgMTk6MjY6MzEKfE1qQXhOaTB3T0E9PSA1NDE4NTMgMjAxNi0wOC0wMyAxOToyODozMQp8TWpBeE5pMHdPQT09IDU0MTg1OSAyMDE2LTA4LTAzIDE5OjMwOjMxCnxNakF4Tmkwd09BPT0gNTQxODY0IDIwMTYtMDgtMDMgMTk6MzI6MzEKfE1qQXhOaTB3T0E9PSA1NDE4NjkgMjAxNi0wOC0wMyAxOTozNDozMQp8TWpBeE5pMHdPQT09IDU0MTg3NSAyMDE2LTA4LTAzIDE5OjM2OjM1CnxNakF4Tmkwd09BPT0gNTQxODgwIDIwMTYtMDgtMDMgMTk6Mzg6MzEKfE1qQXhOaTB3T0E9PSA1NDE4ODYgMjAxNi0wOC0wMyAxOTo0MDozMQp8TWpBeE5pMHdPQT09IDU0MTg5MSAyMDE2LTA4LTAzIDE5OjQyOjMxCnxNakF4Tmkwd09BPT0gNTQxODk3IDIwMTYtMDgtMDMgMTk6NDQ6MzEKfE1qQXhOaTB3T0E9PSA1NDE5MDIgMjAxNi0wOC0wMyAxOTo0NjozNAp8TWpBeE5pMHdPQT09IDU0MTkwOCAyMDE2LTA4LTAzIDE5OjQ4OjMxCnxNakF4Tmkwd09BPT0gNTQxOTEzIDIwMTYtMDgtMDMgMTk6NTA6MzEKfE1qQXhOaTB3T0E9PSA1NDE5MTkgMjAxNi0wOC0wMyAxOTo1MjozMQp8TWpBeE5pMHdPQT09IDU0MTkyNCAyMDE2LTA4LTAzIDE5OjU0OjMxCnxNakF4Tmkwd09BPT0gNTQxOTMwIDIwMTYtMDgtMDMgMTk6NTY6MzQKfE1qQXhOaTB3T0E9PSA1NDE5MzYgMjAxNi0wOC0wMyAxOTo1ODozMQp8TWpBeE5pMHdPQT09IDU0MTkzOSAyMDE2LTA4LTAzIDIwOjAwOjMxCnxNakF4Tmkwd09BPT0gNTQxOTQwIDIwMTYtMDgtMDMgMjA6MDI6MzEKfE1qQXhOaTB3T0E9PSA1NDE5NDEgMjAxNi0wOC0wMyAyMDowNjozNAp8TWpBeE5pMHdPQT09IDU0MTk0MiAyMDE2LTA4LTAzIDIwOjEyOjMxCnxNakF4Tmkwd09BPT0gNTQxOTQzIDIwMTYtMDgtMDMgMjA6MTY6MzQKfE1qQXhOaTB3T0E9PSA1NDE5NDQgMjAxNi0wOC0wMyAyMDoyMDozMQp8TWpBeE5pMHdPQT09IDU0MTk0NSAyMDE2LTA4LTAzIDIwOjI0OjMxCnxNakF4Tmkwd09BPT0gNTQxOTQ2IDIwMTYtMDgtMDMgMjA6Mjg6MzEKfE1qQXhOaTB3T0E9PSA1NDE5NDcgMjAxNi0wOC0wMyAyMDozMjozMQp8TWpBeE5pMHdPQT09IDU0MTk0OCAyMDE2LTA4LTAzIDIwOjM2OjMxCnxNakF4Tmkwd09BPT0gNTQxOTQ5IDIwMTYtMDgtMDMgMjA6NDA6MzEKfE1qQXhOaTB3T0E9PSA1NDE5NTAgMjAxNi0wOC0wMyAyMDo0NDozMQp8TWpBeE5pMHdPQT09IDU0MTk1MSAyMDE2LTA4LTAzIDIwOjQ4OjMxCnxNakF4Tmkwd09BPT0gNTQxOTUyIDIwMTYtMDgtMDMgMjA6NTI6MzEKfE1qQXhOaTB3T0E9PSA1NDE5NTMgMjAxNi0wOC0wMyAyMDo1ODozMQp8TWpBeE5pMHdPQT09IDU0MTk1NCAyMDE2LTA4LTAzIDIxOjAyOjMxCnxNakF4Tmkwd09BPT0gNTQxOTU1IDIwMTYtMDgtMDMgMjE6MDY6MzEKfE1qQXhOaTB3T0E9PSA1NDE5NTYgMjAxNi0wOC0wMyAyMToxMDozMQp8TWpBeE5pMHdPQT09IDU0MTk1NyAyMDE2LTA4LTAzIDIxOjE2OjMxCnxNakF4Tmkwd09BPT0gNTQxOTU4IDIwMTYtMDgtMDMgMjE6MjA6MzEKfE1qQXhOaTB3T0E9PSA1NDE5NTkgMjAxNi0wOC0wMyAyMToyNDozMQp8TWpBeE5pMHdPQT09IDU0MTk2MCAyMDE2LTA4LTAzIDIxOjI4OjMxCnxNakF4Tmkwd09BPT0gNTQxOTYxIDIwMTYtMDgtMDMgMjE6MzI6MzEKfE1qQXhOaTB3T0E9PSA1NDE5NjIgMjAxNi0wOC0wMyAyMTozNjozMgp8TWpBeE5pMHdPQT09IDU0MTk2NCAyMDE2LTA4LTAzIDIxOjQ2OjMxCnxNakF4Tmkwd09BPT0gNTQxOTY1IDIwMTYtMDgtMDMgMjE6NTI6MzEKfE1qQXhOaTB3T1E9PSAwIDIwMTYtMDktMDEKfE1qQXhOaTB4TUE9PSAwIDIwMTYtMTAtMDEKfE1qQXhOaTB4TVE9PSAwIDIwMTYtMTEtMDEKfE1qQXhOaTB4TWc9PSAwIDIwMTYtMTItMDEK|FBDECT_fritz.box.AHA.Wohnzimmer_17|energy|0.020194|0')}

Nachtrag: Die Größe das Logfiles ist dabei innerhalb weniger Minuten auf 144 MB angewachsen.
« Letzte Änderung: 03 August 2016, 22:24:56 von DerFrickler »

Offline DerFrickler

  • Sr. Member
  • ****
  • Beiträge: 587
nun noch mal zu meinem Vorhaben...

die Zahlenwerte für den Hausanschluss gebe ich aktuell manuell ein über
setreading Hauptzähler energy <Wert>
Die Unterschiedlichen Formate (Wh und kWh) gleiche ich wie folgt aus:
valueFormat {
     if ($VALUE ne "-") {
          if ($DEVICE eq "DbRep.elektrische.Energie.Hauptzaehler") {
               sprintf("%.2f",$VALUE);
          } else {
               sprintf("%.2f",$VALUE/1000);
          }
     } else {
          sprintf("-");
     }
 }

was besseres ist mir da spontan nicht eingefallen, hat aber leider den Nachteil dass der Gesamtbedarf für den Hausanschluss "$sum($ROW:1..$COLUMN-1)" auch noch mal durch 1000 dividiert wird.

DbRep.elektrische.Energie.Hauptzaehler:.*-01,.*-02,.*-03,.*-04,.*-05,.*-06,.*-07,.*-08,.*-09,.*-10,.*-11,.*-12,$sum($ROW:1..$COLUMN-1),<100%>
möglicherweise sind die userReadings in kWh pro device doch die bessere Variante.

Hat jemand eine Idee wie man jetzt anhand der vorliegenden Daten an die prozentualen Werte kommen kann?

zur Vollständigkeit noch mal die Definition:
<%measure_power>,<Januar>,<Februar>,<März>,<April>,<Mai>,<Juni>,<Juli>,<August>,<September>,<Oktober>,<November>,<Dezember>,<Gesamtbedarf>,<[%]>
DbRep.elektrische.Energie.Hauptzaehler:.*-01,.*-02,.*-03,.*-04,.*-05,.*-06,.*-07,.*-08,.*-09,.*-10,.*-11,.*-12,$sum($ROW:1..$COLUMN-1),<100%>
<hr>
<hr>
DbRep.elektrische.Energie.FBDECT_fritz.box.*:.*-01,.*-02,.*-03,.*-04,.*-05,.*-06,.*-07,.*-08,.*-09,.*-10,.*-11,.*-12,$sum($ROW:1..$COLUMN-1),<100%>
DbRep.elektrische.Energie.switchable.socket.*:.*-01,.*-02,.*-03,.*-04,.*-05,.*-06,.*-07,.*-08,.*-09,.*-10,.*-11,.*-12,$sum($ROW:1..$COLUMN-1),<100%>
<hr>
report.electricalEnergy:$sum(2..$ROW),$sum(2..$ROW),$sum(2..$ROW),$sum(2..$ROW),$sum(2..$ROW),$sum(2..$ROW),$sum(2..$ROW),$sum(2..$ROW),$sum(2..$ROW),$sum(2..$ROW),$sum(2..$ROW),$sum(2..$ROW),$sum(2..$ROW),<100%>

und wie es dann aussehen kann im Anhang....

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 7829
Hallo Frickler,

was hast du für Attribute für das DbRep-Device gesetzt ? Mach am Besten mal ein "list Device".
Auf den ersten Blick sieht es für mich so aus als ob das Feld "Value" welches du mit der Funktion "diffValue" auswertest keinen numerischen Wert enthält.

Diesen langen String den du erhälst ("TWpBeE5pMHdNUT09IDAgMjAxNi0wMS0wMQp8TWpBeE5p.....") ist der verschlüsselte Ergebnisstring der Abfrage.

Was gibt denn die Funktion "countEntries" aus ohne das du die Attribute sowie die Zeitgrenzen änderst ?

Grüße
Heiko

PS: Habe heute Abend das Modul erweitert um eine manuelle Eingabemöglichkeit (insert). Wenn ich dazu komme  ;) stelle ich die Version nachher noch hier ein.


ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf VM
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline DerFrickler

  • Sr. Member
  • ****
  • Beiträge: 587
mit den nicht numerischen Werten könntest Du recht haben, da die FDDECT Geräte die Einheit "Wh" mit ausgeben

so schaut es in der DB aus:
2016-08-03 22:59:56: FBDECT_fritz.box.AHA.Wohnzimmer_17, FBDECT, energy: 541982 Wh, energy, 541982, W
so in den Readings des FBDECT:
     2016-08-03 22:59:56   energy          541982 Wh
hier das List
Internals:
   CFGFN
   DEF        Dblog
   NAME       DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17
   NR         336
   STATE      done &raquo; ProcTime: 0.0204 sec
   TYPE       DbRep
   Helper:
     DBLOGDEVICE Dblog
     Cv:
       aggregation month
       aggsec     2678400
       destr      2016-12-31
       dsstr      2016-01-01
       epoch_seconds_end 1483225199
       mestr      12
       msstr      01
       testr      23:59:59
       tsstr      00:00:00
       wdadd      259200
       yestr      2016
       ysstr      2016
   Readings:
     2016-08-03 22:56:36   2016-01-01__elektrische.Energie__2016-01 -
     2016-08-03 22:56:36   2016-02-01__elektrische.Energie__2016-02 -
     2016-08-03 22:56:36   2016-03-01__elektrische.Energie__2016-03 -
     2016-08-03 22:56:36   2016-04-01__elektrische.Energie__2016-04 -
     2016-08-03 22:56:36   2016-05-01__elektrische.Energie__2016-05 -
     2016-08-03 22:56:36   2016-06-01__elektrische.Energie__2016-06 -
     2016-08-03 22:56:36   2016-07-31_23-59-59__elektrische.Energie__2016-07 29.0000
     2016-08-03 22:56:36   2016-08-03_22-52-31__elektrische.Energie__2016-08 3785.0000
     2016-08-03 22:56:36   2016-09-01__elektrische.Energie__2016-09 -
     2016-08-03 22:56:36   2016-10-01__elektrische.Energie__2016-10 -
     2016-08-03 22:56:36   2016-11-01__elektrische.Energie__2016-11 -
     2016-08-03 22:56:36   2016-12-01__elektrische.Energie__2016-12 -
     2016-08-03 22:56:36   sql_processing_time 0.0204
     2016-08-03 22:56:36   state           done
   Dbloghash:
     CFGFN
     CONFIGURATION /opt/fhem/DBlog.conf
     DBMODEL    SQLITE
     DEF        /opt/fhem/DBlog.conf .*:.*
     NAME       Dblog
     NR         17
     NTFY_ORDER 50-Dblog
     PID        10953
     REGEXP     .*:.*
     STATE      connected
     TYPE       DbLog
     dbconn     SQLite:dbname=/opt/fhem/DBlog.db
     dbuser
     Readings:
       2016-08-03 00:00:00   lastRowsDeleted 0E0
       2016-08-03 22:51:27   state           connected
   Helper:
Attributes:
   DbLogExclude .*
   aggregation month
   alias      Schaltsteckdose - Wohnzimmer (TV/Video)
   device     FBDECT_fritz.box.AHA.Wohnzimmer_17
   event-on-change-reading .*
   group      TEST - Energie Meter
   reading    energy
   readingNameMap elektrische.Energie
   room       Test
   showproctime 1
   stateFormat state &raquo; ProcTime: sql_processing_time sec
   timeout    10
   timestamp_begin 2016-01-01 00:00:00
   timestamp_end 2016-12-31 23:59:59
   verbose    0

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 7829
Ja, sieht so aus. Grenze mal bitte die Zeitgrenzen so ein dass eine Abfrage nur wenige Ergebnisse generieren kann (wenige Datensätze) und führe die Funktion "fetchrows" aus. Dann schauen wir uns mal die Readings an die ausgegeben werden.
Wenn sich unsere Vermutung bestätigt kann man mit diffValue als mathematische Funktion an dieser Stelle nicht viel anfangen.
 
ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf VM
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline DerFrickler

  • Sr. Member
  • ****
  • Beiträge: 587
Was gibt denn die Funktion "countEntries" aus ohne das du die Attribute sowie die Zeitgrenzen änderst ?

   Readings:
     2016-08-03 23:08:27   2016-01-01__elektrische.Energie__2016-01 -
     2016-08-03 23:08:27   2016-02-01__elektrische.Energie__2016-02 -
     2016-08-03 23:08:27   2016-03-01__elektrische.Energie__2016-03 -
     2016-08-03 23:08:27   2016-04-01__elektrische.Energie__2016-04 -
     2016-08-03 23:08:27   2016-05-01__elektrische.Energie__2016-05 -
     2016-08-03 23:08:27   2016-06-01__elektrische.Energie__2016-06 -
     2016-08-03 23:08:27   2016-07-01__elektrische.Energie__2016-07 31
     2016-08-03 23:08:27   2016-08-01__elektrische.Energie__2016-08 774
     2016-08-03 23:08:27   2016-09-01__elektrische.Energie__2016-09 -
     2016-08-03 23:08:27   2016-10-01__elektrische.Energie__2016-10 -
     2016-08-03 23:08:27   2016-11-01__elektrische.Energie__2016-11 -
     2016-08-03 23:08:27   2016-12-01__elektrische.Energie__2016-12 -
     2016-08-03 23:08:27   sql_processing_time 0.0048
     2016-08-03 23:08:27   state           done

Offline DerFrickler

  • Sr. Member
  • ****
  • Beiträge: 587
...und führe die Funktion "fetchrows" aus. Dann schauen wir uns mal die Readings an die ausgegeben werden.

     2016-08-03 23:10:47   2016-08-03_22-32-54__elektrische.Energie 541975

     2016-08-03 23:10:47   2016-08-03_22-36-31__elektrische.Energie 541976

     2016-08-03 23:10:47   2016-08-03_22-40-31__elektrische.Energie 541977

     2016-08-03 23:10:47   2016-08-03_22-46-31__elektrische.Energie 541978

     2016-08-03 23:10:47   2016-08-03_22-48-31__elektrische.Energie 541979

     2016-08-03 23:10:47   2016-08-03_22-52-31__elektrische.Energie 541980

     2016-08-03 23:10:47   2016-08-03_22-56-33__elektrische.Energie 541981

     2016-08-03 23:10:47   2016-08-03_22-59-56__elektrische.Energie 541982

     2016-08-03 23:10:47   sql_processing_time 0.0227
     2016-08-03 23:10:47   state           done

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 7829
Das sieht doch aber garnicht schlecht aus. Kann das realistisch dass immer genau 1W Unterschied zwischen den einzelnen Datensätzen sind ?
Jetzt können wir es auch wagen ein verbose 4 einzuschalten, nochmal "fetchrows" auszuführen und den Logausschnitt zu posten.
Dann sehen wir sicher noch mehr.

ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf VM
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline DerFrickler

  • Sr. Member
  • ****
  • Beiträge: 587
Das sieht doch aber garnicht schlecht aus. Kann das realistisch dass immer genau 1W Unterschied zwischen den einzelnen Datensätzen sind ?
Jetzt können wir es auch wagen ein verbose 4 einzuschalten, nochmal "fetchrows" auszuführen und den Logausschnitt zu posten.
Dann sehen wir sicher noch mehr.
Das mit den 1 W Unterschied passt, es handelt sich hier um einen Ausschnitt und die Geräte sollten sich alle im StandBy Modus befinden... aktuell durch die Schaltsteckdose sogar komplett ausgeschaltet. Dann kommt noch die Einstellung event-on-change-reading hinzu.

2016.08.03 23:29:05 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - -------- New selection ---------
2016.08.03 23:29:05 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - Aggregation: month
2016.08.03 23:29:05 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - Timestamp begin human readable: 2016-01-01 00:00:00
2016.08.03 23:29:05 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - Timestamp end human readable: 2016-12-31 23:59:59
2016.08.03 23:29:05 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> Start BlockingCall fetchrows_DoParse
2016.08.03 23:29:05 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT DEVICE,READING,TIMESTAMP,VALUE FROM history where DEVICE = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND READING = 'energy' AND TIMESTAMP BETWEEN 2016-01-01 00:00:00 AND 2016-12-31 23:59:59 ORDER BY TIMESTAMP;
2016.08.03 23:29:05 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> BlockingCall fetchrows_DoParse finished
2016.08.03 23:29:06 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> Start BlockingCall fetchrows_ParseDone
2016.08.03 23:29:07 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> BlockingCall fetchrows_ParseDone finished
2016.08.03 23:30:02 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - -------- New selection ---------
2016.08.03 23:30:02 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - Aggregation: month
2016.08.03 23:30:02 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - Timestamp begin human readable: 2016-01-01 00:00:00
2016.08.03 23:30:02 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - Timestamp end human readable: 2016-12-31 23:59:59
2016.08.03 23:30:02 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> Start BlockingCall fetchrows_DoParse
2016.08.03 23:30:02 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT DEVICE,READING,TIMESTAMP,VALUE FROM history where DEVICE = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND READING = 'energy' AND TIMESTAMP BETWEEN 2016-01-01 00:00:00 AND 2016-12-31 23:59:59 ORDER BY TIMESTAMP;
2016.08.03 23:30:02 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> BlockingCall fetchrows_DoParse finished
2016.08.03 23:30:02 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> Start BlockingCall fetchrows_ParseDone
2016.08.03 23:30:03 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> BlockingCall fetchrows_ParseDone finished
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 821) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "" isn't numeric in division (/) at (eval 825) line 6.
2016.08.03 23:30:07 1: PERL WARNING: Argument "" isn't numeric in division (/) at (eval 828) line 6.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 854) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "" isn't numeric in division (/) at (eval 858) line 6.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 884) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 911) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 915) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 919) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 923) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 927) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 931) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 935) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 939) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 947) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 951) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 955) line 1.
2016.08.03 23:30:07 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 959) line 1.
2016.08.03 23:31:05 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1050) line 1.
2016.08.03 23:31:05 1: PERL WARNING: Argument "" isn't numeric in division (/) at (eval 1054) line 6.
2016.08.03 23:31:05 1: PERL WARNING: Argument "" isn't numeric in division (/) at (eval 1057) line 6.
2016.08.03 23:31:05 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1083) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "" isn't numeric in division (/) at (eval 1087) line 6.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1113) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1140) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1144) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1148) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1152) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1156) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1160) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1164) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1168) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1176) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1180) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1184) line 1.
2016.08.03 23:31:06 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1188) line 1.
2016.08.03 23:31:25 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - -------- New selection ---------
2016.08.03 23:31:25 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - Aggregation: month
2016.08.03 23:31:25 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - Timestamp begin human readable: 2016-01-01 00:00:00
2016.08.03 23:31:25 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - Timestamp end human readable: 2016-12-31 23:59:59
2016.08.03 23:31:25 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> Start BlockingCall fetchrows_DoParse
2016.08.03 23:31:25 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT DEVICE,READING,TIMESTAMP,VALUE FROM history where DEVICE = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND READING = 'energy' AND TIMESTAMP BETWEEN 2016-01-01 00:00:00 AND 2016-12-31 23:59:59 ORDER BY TIMESTAMP;
2016.08.03 23:31:25 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> BlockingCall fetchrows_DoParse finished
2016.08.03 23:31:25 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> Start BlockingCall fetchrows_ParseDone
2016.08.03 23:31:26 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> BlockingCall fetchrows_ParseDone finished
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - -------- New selection ---------
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - Aggregation: month
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - Timestamp begin human readable: 2016-01-01 00:00:00
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - Timestamp end human readable: 2016-12-31 23:59:59
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> Start BlockingCall diffval_DoParse
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT VALUE,TIMESTAMP FROM `history` where `DEVICE` = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND `READING` = 'energy' AND TIMESTAMP BETWEEN '2016-01-01 00:00:00' AND '2016-02-01' ORDER BY TIMESTAMP;
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT VALUE,TIMESTAMP FROM `history` where `DEVICE` = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND `READING` = 'energy' AND TIMESTAMP BETWEEN '2016-02-01' AND '2016-03-01' ORDER BY TIMESTAMP;
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT VALUE,TIMESTAMP FROM `history` where `DEVICE` = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND `READING` = 'energy' AND TIMESTAMP BETWEEN '2016-03-01' AND '2016-04-01' ORDER BY TIMESTAMP;
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT VALUE,TIMESTAMP FROM `history` where `DEVICE` = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND `READING` = 'energy' AND TIMESTAMP BETWEEN '2016-04-01' AND '2016-05-01' ORDER BY TIMESTAMP;
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT VALUE,TIMESTAMP FROM `history` where `DEVICE` = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND `READING` = 'energy' AND TIMESTAMP BETWEEN '2016-05-01' AND '2016-06-01' ORDER BY TIMESTAMP;
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT VALUE,TIMESTAMP FROM `history` where `DEVICE` = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND `READING` = 'energy' AND TIMESTAMP BETWEEN '2016-06-01' AND '2016-07-01' ORDER BY TIMESTAMP;
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT VALUE,TIMESTAMP FROM `history` where `DEVICE` = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND `READING` = 'energy' AND TIMESTAMP BETWEEN '2016-07-01' AND '2016-08-01' ORDER BY TIMESTAMP;
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT VALUE,TIMESTAMP FROM `history` where `DEVICE` = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND `READING` = 'energy' AND TIMESTAMP BETWEEN '2016-08-01' AND '2016-09-01' ORDER BY TIMESTAMP;
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT VALUE,TIMESTAMP FROM `history` where `DEVICE` = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND `READING` = 'energy' AND TIMESTAMP BETWEEN '2016-09-01' AND '2016-10-01' ORDER BY TIMESTAMP;
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT VALUE,TIMESTAMP FROM `history` where `DEVICE` = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND `READING` = 'energy' AND TIMESTAMP BETWEEN '2016-10-01' AND '2016-11-01' ORDER BY TIMESTAMP;
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT VALUE,TIMESTAMP FROM `history` where `DEVICE` = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND `READING` = 'energy' AND TIMESTAMP BETWEEN '2016-11-01' AND '2016-12-01' ORDER BY TIMESTAMP;
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - SQL to execute: SELECT VALUE,TIMESTAMP FROM `history` where `DEVICE` = 'FBDECT_fritz.box.AHA.Wohnzimmer_17' AND `READING` = 'energy' AND TIMESTAMP BETWEEN '2016-12-01' AND '2016-12-31 23:59:59' ORDER BY TIMESTAMP;
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> BlockingCall diffval_DoParse finished
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> Start BlockingCall diffval_ParseDone
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - runtimestring Key: 2016-01, value: 2016-01|0|2016-01-01
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - runtimestring Key: 2016-02, value: 2016-02|0|2016-02-01
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - runtimestring Key: 2016-03, value: 2016-03|0|2016-03-01
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - runtimestring Key: 2016-04, value: 2016-04|0|2016-04-01
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - runtimestring Key: 2016-05, value: 2016-05|0|2016-05-01
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - runtimestring Key: 2016-06, value: 2016-06|0|2016-06-01
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - runtimestring Key: 2016-07, value: 2016-07|29|2016-07-31_23-59-59
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - runtimestring Key: 2016-08, value: 2016-08|3787|2016-08-03_22-59-56
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - runtimestring Key: 2016-09, value: 2016-09|0|2016-09-01
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - runtimestring Key: 2016-10, value: 2016-10|0|2016-10-01
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - runtimestring Key: 2016-11, value: 2016-11|0|2016-11-01
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 - runtimestring Key: 2016-12, value: 2016-12|0|2016-12-01
2016.08.03 23:31:49 4: DbRep DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 -> BlockingCall diffval_ParseDone finished
2016.08.03 23:31:54 1: PERL WARNING: Argument "49261,2" isn't numeric in numeric ge (>=) at ./FHEM/93_DbRep.pm line 1230.
2016.08.03 23:31:54 1: PERL WARNING: Argument "49261,2" isn't numeric in subtraction (-) at ./FHEM/93_DbRep.pm line 1232.
2016.08.03 23:31:54 1: PERL WARNING: Argument "49261,3" isn't numeric in numeric ge (>=) at ./FHEM/93_DbRep.pm line 1217.
2016.08.03 23:31:54 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1286) line 1.
2016.08.03 23:31:54 3: eval: {diffval_ParseDone('DbRep.elektrische.Energie.Hauptzaehler|TWp<gekürzt>0wMQo=|Hauptzaehler|energy|0.005401|0')}
2016.08.03 23:31:54 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 1366) line 1.

da kommen jetzt mehrere von diesen Einträgen und dann etwas, was meine Einheiten Theorie durcheinander bringt... das folgende Device schreibt nur Zahlenwerte in die DB

2016.08.03 23:31:57 1: PERL WARNING: Argument "-" isn't numeric in subroutine entry at (eval 3307) line 1.
2016.08.03 23:31:57 3: eval: {diffval_ParseDone('DbRep.elektrische.Energie.switchable.socket.Wohnkeller_Pwr|<gekürzt>ItMDEK|switchable.socket.Wohnkeller_Pwr|energy|0.032254|0')}


Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 7829
Ich denke wir kommen der Sache näher.
Die Zeilen

PERL WARNING: Argument "-" isn't numeric in subroutine entry at
rühren ziemlich sicher daher dass ich im Code "-" setze wenn keine Werte geliefert wurden (Ist z.B. wichtig für Readingsgroup). Allerdings bekomme ich diese Logeinträge bei mir mit der Standardeinstellung global verbose = 3 überhaupt nicht. Aber das kann ich sicherlich korrigieren.

Aber die Einträge

Zitat
PERL WARNING: Argument "49261,2" isn't numeric in subtraction

rühren m.M. nach  daher dass  "49261,2" wegen dem Komma kein numerischer Wert ist -> müßte  "49261.2" heißen.

Kopfzerbrechen nacht mir noch woher die eval Einträge:

Zitat
eval: {diffval_ParseDone('DbRep.elektrische.Energie.Hauptzaehler|TW....

stammen. Im Modul selbst habe ich die nicht (zumindest nicht an diesen momentan zur Diskussion stehenden Stellen).
EDIT: Auch diese Einträge bekomme ich bei mir, auch bei bewußt falscher Anwendung der Selektion, nicht auf den Schirm.



« Letzte Änderung: 04 August 2016, 00:10:53 von DS_Starter »
ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf VM
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline DerFrickler

  • Sr. Member
  • ****
  • Beiträge: 587
rühren m.M. nach  daher dass  "49261,2" wegen dem Komma kein numerischer Wert ist -> müßte  "49261.2" heißen.
Da hatte ich zwei oder drei Werte manuell fehlerhaft eingegeben.

Offline DerFrickler

  • Sr. Member
  • ****
  • Beiträge: 587
Kopfzerbrechen nacht mir noch woher die eval Einträge:

stammen. Im Modul selbst habe ich die nicht (zumindest nicht an diesen momentan zur Diskussion stehenden Stellen).
EDIT: Auch diese Einträge bekomme ich bei mir, auch bei bewußt falscher Anwendung der Selektion, nicht auf den Schirm.
kann man durch Log Einstellungen herausfinden wer diese Fehlereinträge generiert? Möglicherweise ist es am Ende nicht mal das DbRep Modul.

Die Werte lasse ich automatisch mit
+*00:05 set DbRep.elektrische.Energie.FBDECT_fritz.box.AHA.Wohnzimmer_17 diffValue
erstellen. Ich würde die Automatik aber über nacht auch gerne weiter inaktiv lassen, damit morgen nicht meine komplette HD vollgeschrieben wurde. Ansonsten kann ich es morgen kontrolliert noch mal aktivieren.

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 7829
Zitat
rühren ziemlich sicher daher dass ich im Code "-" setze wenn keine Werte geliefert wurden

Kommando zurück, "-" setze ich tatsächlich in der eingecheckten Version erst wenn die Readings generiert werden. Haben also bei der Berechnung keinen Einfluß.

Du hast doch sicher die aktuell eingecheckte Version im Einsatz ?

-> Dann lösche doch bitte die falschen Einträge oder korrigiere sie. Dann schauen wir nochmal.
ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf VM
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

Offline DS_Starter

  • Developer
  • Hero Member
  • ****
  • Beiträge: 7829
Zitat
kann man durch Log Einstellungen herausfinden wer diese Fehlereinträge generiert

stacktrace fällt mir da ein, zu setzen im global device.
ESXi 6.5 @NUC6i5SYH mit FHEM auf Debian 10, DbLog/DbRep mit MariaDB auf VM
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter