ASME

Torrent Hash:
0EBB573389B0A7F5CF38E1B996D63720E4D0BE29
Number of Files:
573
Content Size:
1.75GB
Convert On:
2022-04-25
Keywords:
Magnet Link:
W3siaWQiOiJhZHN0X2JfTV8zMDB4NTAiLCJhZHNwb3QiOiJiX01fMzAweDUwIiwid2VpZ2h0IjoiNSIsImZjYXAiOmZhbHNlLCJzY2hlZHVsZSI6ZmFsc2UsIm1heFdpZHRoIjoiNzY4IiwibWluV2lkdGgiOmZhbHNlLCJ0aW1lem9uZSI6ZmFsc2UsImV4Y2x1ZGUiOmZhbHNlLCJkb21haW4iOmZhbHNlLCJjb2RlIjoiPHNjcmlwdCB0eXBlPVwidGV4dFwvamF2YXNjcmlwdFwiPlxyXG4gIGF0T3B0aW9ucyA9IHtcclxuICAgICdrZXknIDogJzdkMWNjMGUxYjk4MWM5NzY4ZGI3ODUxZmM1MzVhMTllJyxcclxuICAgICdmb3JtYXQnIDogJ2lmcmFtZScsXHJcbiAgICAnaGVpZ2h0JyA6IDUwLFxyXG4gICAgJ3dpZHRoJyA6IDMyMCxcclxuICAgICdwYXJhbXMnIDoge31cclxuICB9O1xyXG4gIGRvY3VtZW50LndyaXRlKCc8c2NyJyArICdpcHQgdHlwZT1cInRleHRcL2phdmFzY3JpcHRcIiBzcmM9XCJodHRwJyArIChsb2NhdGlvbi5wcm90b2NvbCA9PT0gJ2h0dHBzOicgPyAncycgOiAnJykgKyAnOlwvXC93d3cuYm5odG1sLmNvbVwvaW52b2tlLmpzXCI+PFwvc2NyJyArICdpcHQ+Jyk7XHJcbjxcL3NjcmlwdD4ifV0=
File Name
Size
B1/ASME B1.5-1997 (2014).pdf
11.22MB
B1/ASME B1.15-1995.pdf
6.38MB
B1/ASME B1.2-1983 (2017).pdf
4.57MB
B1/ASME B1.12-1987 (2018).pdf
4.52MB
B1/ASME B1.21M-1997 (2018).pdf
4.01MB
B1/ASME B1.22M-1985 (2016).pdf
3.15MB
B1/ASME B1.16M-1984 (2016).pdf
2.86MB
B1/ASME B1.30-2002 (2017).pdf
2.85MB
B1/ASME B1.20.5-1991 (2014).pdf
2.8MB
B1/ASME B1.20.7-1991 (2018).pdf
2.44MB
B1/ASME B1.8-1988 (1994) rus.pdf
2.42MB
B1/ASME B1.20.3-1976 (2018).pdf
2.07MB
B1/ASME B1.8-1988 (2021).pdf
1.83MB
B1/ASME B1.1-2019.pdf
1.83MB
B1/ASME B1.10M-2004 (2014).pdf
1.5MB
B1/ASME B1.25-2019.pdf
1.42MB
B1/ASME B1.9-1973 (2017).pdf
1.26MB
B1/ASME B1.20.1-2013 (2018).pdf
1.23MB
B1/ASME B1.20.2M-2006 (2011).pdf
813.79KB
B1/ASME B1.13M-2005 (2015).pdf
793.95KB
B1/ASME B1.3-2007 (2017).pdf
644.1KB
B1/ASME B1.11-1958 (2016).pdf
617.5KB
B1/ASME B1.7-2006 (2021).pdf
601.42KB
B1/ASME B1 technical report 1983.pdf
413.82KB
B1/ASME B1.15-1995 errata 1997.pdf
362.18KB
B106/ASME B106.1m-1985.pdf
1.57MB
B107/ASME B107.54-2001.pdf
8.7MB
B107/ASME B107.38M-1998 (2004).pdf
8.45MB
B107/ASME B107.16M-1998 (2004).pdf
6.85MB
B107/ASME B107.8-2003.pdf
5.53MB
B107/ASME B107.13-2003.pdf
5.45MB
B107/ASME B107.6-1994.pdf
4.74MB
B107/ASME B107.500-2020.pdf
3.91MB
B107/ASME B107.11-2002.pdf
3.8MB
B107/ASME B107.22M-1998 (2004).pdf
3.15MB
B107/ASME B107.42M-1997 (2004).pdf
2.62MB
B107/ASME B107.410-2018.pdf
1.94MB
B107/ASME B107.400-2018.pdf
1.78MB
B107/ASME B107.9M-1994.pdf
1.63MB
B107/ASME B107.58M-1998.pdf
1.59MB
B107/ASME B107.56-2018.pdf
1.56MB
B107/ASME B107.35M-1997 scan.pdf
1.49MB
B107/ASME B107.600-2016 (2021).pdf
1.34MB
B107/ASME B107.12-2004.pdf
1.3MB
B107/ASME B107.2-2002.pdf
1.03MB
B107/ASME B107.1-2002.pdf
1008.16KB
B107/ASME B107.100-2020.pdf
950.08KB
B107/ASME B107.3-1978.pdf
735.78KB
B107/ASME B107.5M-2002.pdf
731.62KB
B107/ASME B107.25-2002.pdf
729.94KB
B107/ASME B107.33M-2002.pdf
714.25KB
B107/ASME B107.21-2005.pdf
703.05KB
B107/ASME B107.37-2003.pdf
692.41KB
B107/ASME B107.110-2019.pdf
660.92KB
B107/ASME B107.10-2005.pdf
660.3KB
B107/ASME B107.4-2019.pdf
648.56KB
B107/ASME B107.30-2002.pdf
631.55KB
B107/ASME B107.14-2004.pdf
627.54KB
B107/ASME B107.36-2002.pdf
625.47KB
B107/ASME B107.18-2003.pdf
618.97KB
B107/ASME B107.24-2002.pdf
608.93KB
B107/ASME B107.34-2003.pdf
608.29KB
B107/ASME B107.28-2005.pdf
606.31KB
B107/ASME B107.55-2002.pdf
601.03KB
B107/ASME B107.300-2021.pdf
589.52KB
B107/ASME B107.29-2005.pdf
588.23KB
B107/ASME B107.31M-1997.pdf
562.28KB
B107/ASME B107.53-2004.pdf
559.17KB
B107/ASME B107.48-2005.pdf
555.27KB
B107/ASME B107.15-2002.pdf
553.81KB
B107/ASME B107.49-2004.pdf
542.75KB
B107/ASME B107.43-2002.pdf
519.49KB
B107/ASME B107.59-2002.pdf
518.07KB
B107/ASME B107.23-2004.pdf
515.94KB
B107/ASME B107.44-2002.pdf
513.35KB
B107/ASME B107.57-2005.pdf
491.56KB
B107/ASME B107.46-2004.pdf
485.7KB
B107/ASME B107.27-2003.pdf
482.65KB
B107/ASME B107.41-2004.pdf
480.85KB
B107/ASME B107.7-1978.pdf
470.43KB
B107/ASME B107.50M-1998.pdf
456.28KB
B107/ASME B107.51-2001.pdf
435.06KB
B107/ASME B107.47M-1998.pdf
428.13KB
B107/ASME B107.60-2004.pdf
426.33KB
B107/ASME B107.45-2002.pdf
423.39KB
B107/ASME B107.17-2020.pdf
393.67KB
B107/ASME B107.52M-1998.pdf
344.95KB
B107/ASME B107.19-2004.pdf
312.1KB
B107/ASME B107.20-2004.pdf
283.67KB
B107/ASME B107.10-2005 errata.pdf
42.99KB
B133/ASME B133.16-2000.pdf
7.02MB
B133/ASME B133.9-1994.pdf
2.21MB
B133/ASME B133.3-1981.pdf
1.26MB
B133/ASME B133.10-1981.pdf
956.18KB
B133/ASME B133.8-2011 (2017).pdf
622.91KB
B133/ASME B133.7M-1985.pdf
596.98KB
B133/ASME B133.11-1982.pdf
573.99KB
B133/ASME B133.1M-1983.pdf
558.44KB
B133/ASME B133.5-1978.pdf
536.85KB
B133/ASME B133.6-1978.pdf
469.04KB
B133/ASME B133.4-1978.pdf
342.51KB
B133/ASME B133.12-1981.pdf
291.08KB
B133/ASME B133.2-1977.pdf
217.96KB
B15/ASME B15.1-2000 (2008).pdf
3.06MB
B16/ASME B16.5-2003 rus.pdf
5.73MB
B16/ASME B16.5-2020.pdf
4.72MB
B16/ASME B16.1-2020.pdf
2.68MB
B16/ASME B16.30-1969 scan.pdf
2.6MB
B16/ASME B16.34-2020.pdf
2.04MB
B16/ASME B16.49-2017.pdf
1.84MB
B16/ASME B16.29-2017.pdf
1.82MB
B16/ASME B16.20-2017.pdf
1.79MB
B16/ASME B16.9-2018.pdf
1.77MB
B16/ASME B16.15-2018.pdf
1.73MB
B16/ASME B16.38-2012 (2017).pdf
1.71MB
B16/ASME B16.33-2012 (2017).pdf
1.7MB
B16/ASME B16.44-2012 (2017).pdf
1.7MB
B16/ASME B16.51-2018.pdf
1.7MB
B16/ASME B16.22-2018.pdf
1.64MB
B16/ASME B16.52-2018.pdf
1.54MB
B16/ASME B16.40-2019.pdf
1.52MB
B16/ASME B16.45-1998 (2006).pdf
1.52MB
B16/ASME B16.14-2018.pdf
1.51MB
B16/ASME B16.26-2018.pdf
1.51MB
B16/ASME B16.10-2017.pdf
1.48MB
B16/ASME B16.12-2019.pdf
1.21MB
B16/ASME B16.18-2021.pdf
1.15MB
B16/ASME B16.9-2007 RUS.pdf
1.11MB
B16/ASME B16.41-1983 scan.pdf
1.09MB
B16/ASME B16.3-2021.pdf
925.62KB
B16/ASME B16.47-2020.pdf
921.63KB
B16/ASME B16.25-2003 rus.doc
895KB
B16/ASME B16.37-1980.pdf
890.2KB
B16/ASME B16.23-2016.pdf
803.55KB
B16/ASME B16.28-1994 scan.pdf
751.25KB
B16/ASME B16.42-2021.pdf
735.14KB
B16/ASME B16.36-2020.pdf
704.78KB
B16/ASME B16.24-2016.pdf
665.82KB
B16/ASME B16.11-2016.pdf
658.24KB
B16/ASME B16.25-2017.pdf
651.5KB
B16/ASME B16.32-1992 scan.pdf
559.21KB
B16/ASME B16.50-2021.pdf
547.48KB
B16/ASME B16.48-2020.pdf
491.42KB
B16/ASME B16.4-2021.pdf
484.71KB
B16/ASME B16.21-2021.pdf
384.17KB
B16/ASME B16.39-2019.pdf
373.45KB
B16/ASME B16.19-1951 (1958).pdf
350.4KB
B17/ASME B17.1-1967 (2017) scan.pdf
2.47MB
B17/ASME B17.2-1967 (2013) scan.pdf
270.14KB
B18/ASME B18.6.5M-2000 (2010).pdf
20.3MB
B18/ASME B18.27-1998 (2017).pdf
14.01MB
B18/ASME B18.6.4-1998 (2005).pdf
8.72MB
B18/ASME B18.8.100M-2000 (2005).pdf
6.99MB
B18/ASME B18.2.7.1M-2002 (2007).pdf
6.98MB
B18/ASME B18.24.1-1996 scan.pdf
4.32MB
B18/ASME B18.12-2020.pdf
4.25MB
B18/ASME B18.6.7M-1999 (2005).pdf
4.02MB
B18/ASME B18.6.3-2013.pdf
3.12MB
B18/ASME B18.2.3.1M-1999.pdf
3.1MB
B18/ASME B18.24.3-1998 scan.pdf
3.09MB
B18/ASME B18.8.3M-1995.pdf
3.02MB
B18/ASME B18.3.1M-1986 (2002).pdf
2.87MB
B18/ASME B18.2.8-1999 (2017).pdf
2.49MB
B18/ASME B18.25.2M-1996 (2003).pdf
2.48MB
B18/ASME B18.25.1M-1996 (2003).pdf
2.44MB
B18/ASME B18.3.6M-1986 (2002).pdf
2.43MB
B18/ASME B18.2.3.5M-1979 (2016).pdf
2.41MB
B18/ASME B18.6.1-1981 (2016).pdf
2.34MB
B18/ASME B18.18.3M-1987 (1999).pdf
2.34MB
B18/ASME B18.18.4M-1987 (1999).pdf
2.32MB
B18/ASME B18.3.3M-1986 (2002).pdf
2.27MB
B18/ASME B18.3.5M-1986 (2002).pdf
2.24MB
B18/ASME B18.2.3.6M-1979 (2001).pdf
2.13MB
B18/ASME B18.3.4M-1986 (2002).pdf
2.11MB
B18/ASME B18.2.3.7M-1979 (2001).pdf
2.09MB
B18/ASME B18.1.2-1972 (2021).pdf
2.08MB
B18/ASME B18.9-2012 (2017).pdf
2.06MB
B18/ASME B18.13-2017 (2022).pdf
2.03MB
B18/ASME B18.11-1961 (2017).pdf
1.99MB
B18/ASME B18.5-2012 (2017).pdf
1.96MB
B18/ASME B18.1.1-1972 (2021).pdf
1.94MB
B18/ASME B18.2.4.4M-1982 (1999).pdf
1.92MB
B18/ASME B18.3.2M-1979 (2003).pdf
1.76MB
B18/ASME B18.5.2.2M-1982 (2005).pdf
1.74MB
B18/ASME B18.2.3.8M-1981 (1999).pdf
1.73MB
B18/ASME B18.2.6-2019.pdf
1.56MB
B18/ASME B18.13.1M-2011 (2022).pdf
1.41MB
B18/ASME B18.16.6-2017.pdf
1.37MB
B18/ASME B18.18-2017.pdf
1.33MB
B18/ASME B18.24.2-1998 scan.pdf
1.28MB
B18/ASME B18.18.5M-1998.pdf
1.16MB
B18/ASME B18.2.3.9M-2001 (2014).pdf
1.1MB
B18/ASME B18.6.8-2010 (2017).pdf
1.05MB
B18/ASME B18.24-2020.pdf
1.03MB
B18/ASME B18.31.1M-2008 (2016).pdf
997.27KB
B18/ASME B18.7-2007 (2017).pdf
981.49KB
B18/ASME B18.21.1-2009 (2016).pdf
938.56KB
B18/ASME B18.16.1M-1979 scan.pdf
894.5KB
B18/ASME B18.29.1-2010 (2017).pdf
884.58KB
B18/ASME B18.16.3M-1998 scan.pdf
869.6KB
B18/ASME B18.5.2.3M-1990.pdf
847.11KB
B18/ASME B18.8.2-2020.pdf
828.52KB
B18/ASME B18.29.2M-2005 (2017).pdf
816.79KB
B18/ASME B18.7.1M-2007 (2017).pdf
813.04KB
B18/ASME B18.2.1-2012.pdf
776.57KB
B18/ASME B18.22M-1981 (2017).pdf
739.21KB
B18/ASME B18.16M-2004 (2016).pdf
725.76KB
B18/ASME B18.2.4.3M-1979 (2017).pdf
679.93KB
B18/ASME B18.15-2015 (2021).pdf
669.8KB
B18/ASME B18.18.6M-1998.pdf
655.78KB
B18/ASME B18.2.9-2010 (2017).pdf
629.61KB
B18/ASME B18.16.2M-1979 scan.pdf
628.3KB
B18/ASME B18.2.2-2022.pdf
621.85KB
B18/ASME B18.2.5M-2013.pdf
605.92KB
B18/ASME B18.25.3M-2008.pdf
598.13KB
B18/ASME B18.8.1-2014.pdf
587.27KB
B18/ASME B18.6.9-2010 (2017).pdf
578.34KB
B18/ASME B18.2.3.4M-2001 (2011).pdf
571.32KB
B18/ASME B18.18.2-2009.pdf
570.05KB
B18/ASME B18.2.3.2M-2005.pdf
567.98KB
B18/ASME B18.22.1-1965 (1998).pdf
565.17KB
B18/ASME B18.2.3.10M-1996.pdf
558.02KB
B18/ASME B18.31.3-2014.pdf
554.2KB
B18/ASME B18.2.4.2M-2005.pdf
537.93KB
B18/ASME B18.8.6m-1994.pdf
537.03KB
B18/ASME B18.31.5-2011 (2021).pdf
524.78KB
B18/ASME B18.2.3.3M-2007 (2014).pdf
515.49KB
B18/ASME B18.2.4.5M-2008.pdf
476.42KB
B18/ASME B18.10-2006 (2021).pdf
461.03KB
B18/ASME B18.16.4-2008 (2013).pdf
459.03KB
B18/ASME B18.18.7M-2009.pdf
458.61KB
B18/ASME B18.13-2017 errata 2018.pdf
456.59KB
B18/ASME B18.21.2M-1999 (2014).pdf
429.87KB
B18/ASME B18.3-2012.pdf
426.43KB
B18/ASME B18.18.1-2007.pdf
420.38KB
B18/ASME B18.1.3M-1983 (2021).pdf
408.96KB
B18/ASME B18.2.4.6M-2010.pdf
403.65KB
B18/ASME B18.21.3-2008 (2013).pdf
400.7KB
B18/ASME B18.17-1968 (1983).pdf
398.33KB
B18/ASME B18.8.200M-2000 (2010).pdf
388.13KB
B18/ASME B18.6.2-2020.pdf
373.33KB
B18/ASME B18.30.1M-2000 (2010).pdf
356.5KB
B18/ASME B18.2.4.1M-2002.pdf
320.68KB
B18/ASME B18.31.2-2014.pdf
292.99KB
B18/ASME B18.8.8M-1994.pdf
288.98KB
B18/ASME B18.8.5M-1994.pdf
282.2KB
B18/ASME B18.5.2.1M-2006 (2011).pdf
243.94KB
B18/ASME B18.2.6M-2012 (2021).pdf
212.1KB
B18/ASME B18.31.4M-2009 (2021).pdf
168.06KB
B18/ASME B18.23.1-1967 (1975).pdf
68.52KB
B19/ASME B19.3-1991 scan.pdf
4.82MB
B19/ASME B19.1-1995.pdf
1.5MB
B19/ASME B19.3-1991 rus (scan).pdf
1.16MB
B19/ASME B19.3a-1994.pdf
325.23KB
B19/ASME B19.3b-1995.pdf
294.67KB
B2/ASME B2.1-1968.pdf
11.84MB
B20/ASME B20.1-2021.pdf
1.21MB
B205/ASME B205-1978.pdf
740.42KB
B205/ASME B205.1-1978.pdf
697.65KB
B27/ASME B27.8M-1978 (1999).pdf
2.19MB
B27/ASME B27.2-1965.pdf
1.7MB
B27/ASME B27.6-1972 (2017).pdf
1.11MB
B27/ASME B27.7-1977 (2017).pdf
1015.61KB
B29/ASME B29.27-2002 (2021).pdf
12.98MB
B29/ASME B29.400-2001 (2013).pdf
11.66MB
B29/ASME B29.200-2001 (2017).pdf
7.34MB
B29/ASME B29.22-2001 (2016).pdf
7.26MB
B29/ASME B29.3M-1994.pdf
6.45MB
B29/ASME B29.14M-1996.pdf
4.02MB
B29/ASME B29.11M-1994.pdf
3.88MB
B29/ASME B29.26-2013 (2021).pdf
3.31MB
B29/ASME B29.24-2002 (2016).pdf
2.99MB
B29/ASME B29.10M-1997 (2009).pdf
2.73MB
B29/ASME B29.23M-1985 (2004).pdf
1.83MB
B29/ASME B29.6m-1993.pdf
1.73MB
B29/ASME B29.4M-1994 scan.pdf
1.7MB
B29/ASME B29.12M-1997 (2018).pdf
1.4MB
B29/ASME B29.17M-1998 (2018).pdf
1.23MB
B29/ASME B29.2M-2007 (2017).pdf
1.14MB
B29/ASME B29.15M-1997 (2017).pdf
1.09MB
B29/ASME B29.8-2010 (2017).pdf
1.06MB
B29/ASME B29.300-2015 (2020).pdf
996.28KB
B29/ASME B29.21-2013 (2018).pdf
939.74KB
B29/ASME B29.28-2015 (2020).pdf
932.88KB
B29/ASME B29.100-2011 (2016).pdf
743.78KB
B29/ASME B29.16m-1995.pdf
706.38KB
B29/ASME B29.13-1972.pdf
698.68KB
B29/ASME B29.1-2011 (2022).pdf
642.6KB
B29/ASME B29.19m-1996.pdf
591.89KB
B29/ASME B29.18M-1993.pdf
541.92KB
B29/ASME B29.25m-1994.pdf
485.92KB
B30/ASME B30.5-2021.pdf
8.61MB
B30/ASME B30.29-2018.pdf
4.01MB
B30/ASME B30.20-2021.pdf
3.84MB
B30/ASME B30.27-2019.pdf
3.59MB
B30/ASME B30.30-2019.pdf
3.58MB
B30/ASME B30.3-2019.pdf
3.48MB
B30/ASME B30.9-2021.pdf
2.95MB
B30/ASME B30.25-2018.pdf
2.1MB
B30/ASME B30.17-2020.pdf
1.92MB
B30/ASME B30.24-2018.pdf
1.72MB
B30/ASME B30.22-2016.pdf
1.71MB
B30/ASME B30.15-1973.pdf
1.59MB
B30/ASME B30.2-2016.pdf
1.54MB
B30/ASME B30.13-2017.pdf
1.46MB
B30/ASME B30.21-2014 (2019).pdf
1.33MB
B30/ASME B30.19-2016 (2021).pdf
1.17MB
B30/ASME B30.7-2021.pdf
1.02MB
B30/ASME B30.1-2020.pdf
954.15KB
B30/ASME B30.26-2015 (2020).pdf
907.07KB
B30/ASME B30.14-2015 (2021).pdf
816.68KB
B30/ASME B30.6-2020.pdf
775.08KB
B30/ASME B30.8-2020.pdf
746.39KB
B30/ASME B30.16-2017.pdf
698.08KB
B30/ASME B30.4-2020.pdf
647.11KB
B30/ASME B30.28-2015 (2020).pdf
646.33KB
B30/ASME B30.10-2019.pdf
605.73KB
B30/ASME B30.11-2010.pdf
533.96KB
B30/ASME B30.18-2021.pdf
471.12KB
B30/ASME B30.12-2011 (2021).pdf
419.33KB
B30/ASME B30.23-2016.pdf
246.82KB
B31/ASME B31.1 Complete guide-2013.pdf
32.88MB
B31/ASME B31.3 Complete guide-2009.pdf
11.13MB
B31/ASME B31.8-2020.pdf
10.17MB
B31/ASME B31.1-2020.pdf
7.94MB
B31/ASME B31.3-2020.pdf
7.92MB
B31/ASME B31.12-2019.pdf
5.74MB
B31/ASME B31.2-1968.pdf
4.64MB
B31/ASME B31.7-1969.pdf
4.49MB
B31/ASME B31.1-2001 rus.pdf
3.95MB
B31/ASME B31.5-2019.pdf
3.62MB
B31/ASME B31.4-2019.pdf
3.45MB
B31/ASME B31.3-2002 rus.pdf
3.25MB
B31/ASME B31.11-2002.pdf
2.78MB
B31/ASME B31.9-2020.pdf
1.99MB
B31/ASME B31J-2017.pdf
1.91MB
B31/ASME B31P-2017.pdf
1.74MB
B31/ASME B31Q-2021.pdf
1023.66KB
B31/ASME B31.8S-2020.pdf
962.34KB
B31/ASME B31G-2012 (2017).pdf
666.94KB
B31/ASME B31.7c-1971.pdf
608.06KB
B31/ASME B31T-2021.pdf
564.06KB
B31/ASME B31J-2017 errata.pdf
562.51KB
B31/ASME B31.12-2019 errata 2020.pdf
255.14KB
B31/ASME B31Ea-2010.pdf
156.01KB
B31/ASME B31E-2008.pdf
155.21KB
B32/ASME B32.4M-1980 (1994).pdf
1.32MB
B32/ASME B32.3M-1984 (1994).pdf
1.28MB
B32/ASME B32.100-2016.pdf
700.78KB
B32/ASME B32.6M-1984 (1994).pdf
332.15KB
B32/ASME B32.2-1969 (1979) scan.pdf
330.84KB
B32/ASME B32.1-1952 (1972) scan.pdf
257.03KB
B32/ASME B32.5-1977 (1994).pdf
250.3KB
B36/ASME B36.10M-2018.pdf
1.44MB
B36/ASME B36.19M-2018.pdf
1.39MB
B4/ASME B4.2-1978 (2009).pdf
1.45MB
B4/ASME B4.1-1967 (2009).pdf
673.05KB
B4/ASME B4.3-1978 (2004) scan.pdf
123.3KB
B40/ASME B40.1-1991.pdf
2.41MB
B40/ASME B40.2-1991 scan.pdf
1.81MB
B40/ASME B40.100-2013.pdf
1.73MB
B40/ASME B40.200-2008.pdf
1.72MB
B40/ASME B40.3-1997 scan.pdf
1.1MB
B40/ASME B40.6-1994 scan.pdf
811.38KB
B40/ASME B40.5-1995 scan.pdf
741.34KB
B46/ASME B46.1-2019.pdf
5.92MB
B47/ASME B47.1-2007 (2012).pdf
1.37MB
B5/ASME B5.60-2014 (2019).pdf
15.87MB
B5/ASME B5.57-2012 (2017).pdf
7.37MB
B5/ASME B5.8-2001 (2017).pdf
5.76MB
B5/ASME B5.9-1967 (2014).pdf
2.61MB
B5/ASME B5.62M-2016 (2022).pdf
2.38MB
B5/ASME B5.35-1983 (2018).pdf
2.32MB
B5/ASME B5.48-1977 (2013).pdf
2.26MB
B5/ASME B5.40-1977 (2013).pdf
2.24MB
B5/ASME B5.47-1972 (2018).pdf
2.08MB
B5/ASME B5.26-1950.pdf
1.86MB
B5/ASME B5.10-1994 (2013).pdf
1.79MB
B5/ASME B5.54-2005 (2015).pdf
1.69MB
B5/ASME B5.49-1998.pdf
1.63MB
B5/ASME B5.55M-1994 (2013).pdf
1.44MB
B5/ASME B5.31-1953.pdf
1.15MB
B5/ASME B5.46-1972 scan.pdf
1010.67KB
B5/ASME B5.25M-1980 scan.pdf
770.66KB
B5/ASME B5.61-2003 (2019).pdf
766.74KB
B5/ASME B5.11-1964 (2018).pdf
745.27KB
B5/ASME B5.50-2015.pdf
653.66KB
B5/ASME B5.53M-1982 scan.pdf
649.88KB
B5/ASME B5.52-2003 (2019).pdf
635.54KB
B5/ASME B5.56M-1994 (2014).pdf
624.64KB
B5/ASME B5.33-1981 scan.pdf
601.64KB
B5/ASME B5.43m-1979.pdf
543.93KB
B5/ASME B5.28-1971 scan.pdf
495.64KB
B5/ASME B5.42-1981 scan.pdf
485.43KB
B5/ASME B5.18-1972 (2014).pdf
475.43KB
B5/ASME B5.32-1977.pdf
451.28KB
B5/ASME B5.1M-1985 (2014).pdf
423.86KB
B5/ASME B5.5-1959 scan.pdf
402.07KB
B5/ASME B5.51M-1979.pdf
359.59KB
B5/ASME B5.37-1970.pdf
350.01KB
B5/ASME B5.16-1952.pdf
346.36KB
B5/ASME B5.32.1-1977.pdf
323.32KB
B5/ASME B5.38-1958.pdf
289.37KB
B56/ASME B56.1-2000.pdf
9.5MB
B56/ASME B56.6-2002.pdf
3.04MB
B56/ASME B56.5-1993 (2000).pdf
2.24MB
B56/ASME B56.8-1993 (2000).pdf
2.02MB
B56/ASME B56.7-1987.pdf
1.77MB
B56/ASME B56.10-1992.pdf
1.74MB
B56/ASME B56.9-1992 (2000).pdf
1.72MB
B56/ASME B56.11.5-1992 (2000).pdf
1.59MB
B56/ASME B56.1b-2003.pdf
1.19MB
B56/ASME B56.11.4-1992.pdf
1.17MB
B56/ASME B56.11.6-1992 (2000).pdf
1.1MB
B56/ASME B56.11.1-1992 (2000).pdf
656.8KB
B56/ASME B56.11.3-1992 (2000).pdf
621.86KB
B56/ASME B56.11.7-1998.pdf
453.98KB
B56/ASME B56.1a-2001.pdf
354.1KB
B56/ASME B56.1b-2003 errata 2004.pdf
20.92KB
B73/ASME B73.1-2020.pdf
4.54MB
B73/ASME B73.3-2015.pdf
818.59KB
B73/ASME B73.5M-1995 (2007) scan.pdf
591.45KB
B73/ASME B73.2-2016.pdf
403.9KB
B88/ASME B88.2-1974.pdf
230.15KB
B89/ASME B89.1.10M-2001 (2021).pdf
11.64MB
B89/ASME B89.1.12m-1990.pdf
5.8MB
B89/ASME B89.4.1-1997.pdf
5.79MB
B89/ASME B89.7.3.3-2002 (2017).pdf
5.74MB
B89/ASME B89.6.2-1973 (2017).pdf
3.19MB
B89/ASME B89.1.2M-1991.pdf
3.18MB
B89/ASME B89.1.5-1998 (2014).pdf
2.93MB
B89/ASME B89.3.4-2010 (2019).pdf
2.38MB
B89/ASME B89.1.6-2002 (2012).pdf
2.29MB
B89/ASME B89.4.21.1-2020.pdf
2.28MB
B89/ASME B89.1.9-2002 (2012).pdf
2.22MB
B89/ASME B89 Technical Report 1990.pdf
2.11MB
B89/ASME B89.3.1-1972 (2003).pdf
2.01MB
B89/ASME B89.4.23-2020.pdf
1.99MB
B89/ASME B89.1.14-2018.pdf
1.6MB
B89/ASME B89 Technical Paper 1990.pdf
1.41MB
B89/ASME B89.7.4.1-2005.pdf
1.3MB
B89/ASME B89.4.19-2006 (2015).pdf
1.27MB
B89/ASME B89.4.10-2021.pdf
984.01KB
B89/ASME B89.1.17-2001 (2017).pdf
845.22KB
B89/ASME B89.7.1-2016.pdf
791.6KB
B89/ASME B89.7.2-2014 (2019).pdf
768.91KB
B89/ASME B89.4.10360.2-2008.pdf
692.97KB
B89/ASME B89.4.22-2004 (2019).pdf
672.67KB
B89/ASME B89.3.7-2013.pdf
629.92KB
B89/ASME B89.1.7-2009 (2019).pdf
582.94KB
B89/ASME B89.1.2M-1991 errata 2014.pdf
564.61KB
B89/ASME B89.7.6-2019.pdf
501.71KB
B89/ASME B89.1.8-2011 (2021).pdf
429.32KB
B89/ASME B89.1.13-2013.pdf
381.49KB
B89/ASME B89.7.3.1-2001 (2011).pdf
330.23KB
B89/ASME B89.7.3.2-2007.pdf
236.66KB
B89/ASME B89.7.5-2006.pdf
236.48KB
B89/ASME B89 Technical Report 1990 errata 2002 scan.pdf
45.51KB
B94/ASME B94.11M-1993 scan.pdf
4.44MB
B94/ASME B94.9-2008 (2018).pdf
3.24MB
B94/ASME B94.45m-1979.pdf
2.94MB
B94/ASME B94.2-1995 (2015).pdf
2.6MB
B94/ASME B94.19-1997 (2014).pdf
2.48MB
B94/ASME B94.54-1999 (2020).pdf
2.48MB
B94/ASME B94.55M-1985 (2014).pdf
2.2MB
B94/ASME B94.25-1982.pdf
2.09MB
B94/ASME B94.26-1969.pdf
2.03MB
B94/ASME B94.7-1980 (2015).pdf
1.9MB
B94/ASME B94.49-1975 (2010).pdf
1.84MB
B94/ASME B94.50-1975.pdf
1.81MB
B94/ASME B94.37M-1979 (1985) scan.pdf
1.58MB
B94/ASME B94.21-1968 (2014).pdf
1.51MB
B94/ASME B94.22-1968.pdf
1.51MB
B94/ASME B94.17-1987.pdf
1.49MB
B94/ASME B94.53-1978 (1984) scan.pdf
1.48MB
B94/ASME B94.33.1-1997 (2015).pdf
1.48MB
B94/ASME B94.33-1996 (2015).pdf
1.41MB
B94/ASME B94.22.1-1977.pdf
1.36MB
B94/ASME B94.18.1-1977.pdf
1.27MB
B94/ASME B94.23-1969.pdf
1.08MB
B94/ASME B94.5-1974.pdf
1.06MB
B94/ASME B94.30-1970.pdf
1.03MB
B94/ASME B94.27-1970.pdf
1.01MB
B94/ASME B94.14-1968.pdf
1.01MB
B94/ASME B94.18-1987 (2000).pdf
988.92KB
B94/ASME B94.20-1977.pdf
980.76KB
B94/ASME B94.28-1970.pdf
922.04KB
B94/ASME B94.14.1-1977.pdf
921.12KB
B94/ASME B94.29-1970.pdf
918.77KB
B94/ASME B94.6-1984 (2014).pdf
910.62KB
B94/ASME B94.27.1M-1983.pdf
795.29KB
B94/ASME B94.16.1-1978.pdf
784.42KB
B94/ASME B94.17.1-1977.pdf
769.31KB
B94/ASME B94.28.1M-1984.pdf
765.16KB
B94/ASME B94.39-1972 (1978).pdf
762.66KB
B94/ASME B94.52M-1999 (2015).pdf
761.55KB
B94/ASME B94.38-1972 (1978).pdf
746.92KB
B94/ASME B94.16-1987.pdf
743.44KB
B94/ASME B94.41-1972 (1978).pdf
742.22KB
B94/ASME B94.13-1976.pdf
699.51KB
B94/ASME B94.32-1954 (1971).pdf
696.3KB
B94/ASME B94.44-1972 (1978).pdf
691.46KB
B94/ASME B94.31-1981.pdf
629.88KB
B94/ASME B94.29.1-1977.pdf
611.02KB
B94/ASME B94.47m-1980.pdf
604.46KB
B94/ASME B94.43-1972 (1978).pdf
601.96KB
B94/ASME B94.46-1973.pdf
600.6KB
B94/ASME B94.1-1977.pdf
585.13KB
B94/ASME B94.4-1976.pdf
578.48KB
B94/ASME B94.12-1977.pdf
572.12KB
B94/ASME B94.8-1967.pdf
554.62KB
B94/ASME B94.35-1972 (2015).pdf
543.61KB
B94/ASME B94.48-1976.pdf
538.19KB
B94/ASME B94.3-1965 (1972).pdf
532.47KB
B94/ASME B94.40-1972 (1978).pdf
485.59KB
B94/ASME B94.56.1M-1995.pdf
474.68KB
B94/ASME B94.56-1995.pdf
468.69KB
B94/ASME B94.42-1972.pdf
348.35KB
B94/ASME B94.51M-1999 (2015).pdf
261.7KB
B95/ASME B95.1-1977.pdf
522.91KB
B96/ASME B96.1-1999.pdf
4.27MB
BPVC/ASME BPVC 2021 errata.pdf
81.79MB
BPVC/ASME BPVC 2007 Section II - Materials - Part A begin (rus).pdf
65.92MB
BPVC/ASME BPVC 2021 Section VII.pdf
46.35MB
BPVC/ASME BPVC 2007 Section II - Materials - Part A end (rus).pdf
40.32MB
BPVC/ASME BPVC 2021 Section V.pdf
34.21MB
BPVC/ASME BPVC 2007 Section VIII part 1 rus.pdf
31.02MB
BPVC/ASME BPVC 2021 Section X.pdf
29.76MB
BPVC/ASME BPVC 2021 Code Cases Nuclear Components.pdf
26.27MB
BPVC/ASME BPVC 2007 Section V rus.pdf
25.61MB
BPVC/ASME BPVC 2021 Section III appendices.pdf
23.48MB
BPVC/ASME BPVC 2021 Section VIII div. 1.pdf
21.83MB
BPVC/ASME BPVC 2007 Section IX rus.pdf
20.66MB
BPVC/ASME BPVC 2021 Section III div. 1 sub NCD.pdf
20.36MB
BPVC/ASME BPVC 2021 Section III div. 5.pdf
17.61MB
BPVC/ASME BPVC 2021 Section VIII div. 2.pdf
17.54MB
BPVC/ASME BPVC 2021 Section XI div. 1.pdf
17.33MB
BPVC/ASME BPVC 2021 Section II part D (customary).pdf
16.98MB
BPVC/ASME BPVC 2021 Code Cases Boilers and Pressure Vessels. Supplement 2 2021.pdf
16.51MB
BPVC/ASME BPVC 2021 Section II part C.pdf
16.32MB
BPVC/ASME BPVC 2021 Section I.pdf
14.83MB
BPVC/ASME BPVC 2010 Section VIII part 2 rus.pdf
14.21MB
BPVC/ASME BPVC 2007 Section II - Materials - Part D (Metric) rus.pdf
13.99MB
BPVC/ASME BPVC 2021 Section III div. 1 sub NB.pdf
13.75MB
BPVC/ASME BPVC 2007 Section II - Materials - Part C rus.pdf
13.62MB
BPVC/ASME BPVC 2021 Section VIII div. 3.pdf
13.37MB
BPVC/ASME BPVC 2010 Section II - Materials - Part C rus.pdf
12.01MB
BPVC/ASME BPVC 2021 Section IV.pdf
11.56MB
BPVC/ASME BPVC 2021 Section II part A-2.pdf
11.13MB
BPVC/ASME BPVC 2021 Section II part B.pdf
10.84MB
BPVC/ASME BPVC 2021 Code Cases Boilers and Pressure Vessels.pdf
9.92MB
BPVC/ASME BPVC 2021 Section III div. 1 sub NE.pdf
9.78MB
BPVC/ASME BPVC 2021 Section III div. 2.pdf
9.05MB
BPVC/ASME BPVC 2021 Section VI.pdf
8.82MB
BPVC/ASME BPVC 2021 Section XII.pdf
8.22MB
BPVC/ASME BPVC 2021 Section III div. 1 sub NF.pdf
7.79MB
BPVC/ASME BPVC 2021 Section II part D (metric).pdf
7.73MB
BPVC/ASME BPVC 2021 Section II part A-1.pdf
7.48MB
BPVC/ASME BPVC 2007 Section VIII part 3 rus.pdf
7.14MB
BPVC/ASME BPVC 2021 Section III div. 3.pdf
6.57MB
BPVC/ASME BPVC 2021 Section IX.pdf
6.53MB
BPVC/ASME BPVC 2015 Section III div. 1 sub NH.pdf
6.22MB
BPVC/ASME BPVC 2021 Summary of Significant Changes in the 2021 ASME Boiler and Pressure Vessel Code Sections VIII, XII, II, V and IX.pdf
4.65MB
BPVC/ASME BPVC 2021 Summary of Significant Changes in the 2021 ASME Boiler and Pressure Vessel Code Sections III, II, V and IX.pdf
4.63MB
BPVC/ASME BPVC 2021 Summary of Significant Changes in the 2021 ASME Boiler and Pressure Vessel Code Sections I, II, V and IX.pdf
4.58MB
BPVC/ASME BPVC 2021 Summary of Significant Changes in the 2021 ASME Boiler and Pressure Vessel Code Sections XI, II, V and IX.pdf
4.58MB
BPVC/ASME BPVC 2021 Summary of Significant Changes in the 2021 ASME Boiler and Pressure Vessel Code Sections IV, II, V and IX.pdf
4.55MB
BPVC/ASME BPVC 2021 Summary of Significant Changes in the 2021 ASME Boiler and Pressure Vessel Code Sections X, II and V.pdf
4.51MB
BPVC/ASME BPVC 2021 Section XIII.pdf
3.71MB
BPVC/ASME BPVC 2021 Section III div. 1 sub NG.pdf
3.61MB
BPVC/ASME BPVC 2021 Section XI div. 2.pdf
2.54MB
BPVC/ASME BPVC 2021 Section III sub NCA.pdf
2.23MB
readme.doc
50.5KB

Latest Search:

W3siaWQiOiJhZHN0X2JfTV8zMDB4NTAiLCJhZHNwb3QiOiJiX01fMzAweDUwIiwid2VpZ2h0IjoiNSIsImZjYXAiOmZhbHNlLCJzY2hlZHVsZSI6ZmFsc2UsIm1heFdpZHRoIjoiNzY4IiwibWluV2lkdGgiOmZhbHNlLCJ0aW1lem9uZSI6ZmFsc2UsImV4Y2x1ZGUiOmZhbHNlLCJkb21haW4iOmZhbHNlLCJjb2RlIjoiPHNjcmlwdCB0eXBlPVwidGV4dFwvamF2YXNjcmlwdFwiPlxyXG4gIGF0T3B0aW9ucyA9IHtcclxuICAgICdrZXknIDogJzdkMWNjMGUxYjk4MWM5NzY4ZGI3ODUxZmM1MzVhMTllJyxcclxuICAgICdmb3JtYXQnIDogJ2lmcmFtZScsXHJcbiAgICAnaGVpZ2h0JyA6IDUwLFxyXG4gICAgJ3dpZHRoJyA6IDMyMCxcclxuICAgICdwYXJhbXMnIDoge31cclxuICB9O1xyXG4gIGRvY3VtZW50LndyaXRlKCc8c2NyJyArICdpcHQgdHlwZT1cInRleHRcL2phdmFzY3JpcHRcIiBzcmM9XCJodHRwJyArIChsb2NhdGlvbi5wcm90b2NvbCA9PT0gJ2h0dHBzOicgPyAncycgOiAnJykgKyAnOlwvXC93d3cuYm5odG1sLmNvbVwvaW52b2tlLmpzXCI+PFwvc2NyJyArICdpcHQ+Jyk7XHJcbjxcL3NjcmlwdD4ifV0=
W3siaWQiOiJhZG1hX2JfUE9QVU5ERVIiLCJhZHNwb3QiOiJiX1BPUFVOREVSIiwid2VpZ2h0IjoiNTgiLCJmY2FwIjoiMiIsInNjaGVkdWxlIjpmYWxzZSwibWF4V2lkdGgiOmZhbHNlLCJtaW5XaWR0aCI6ZmFsc2UsInRpbWV6b25lIjpmYWxzZSwiZXhjbHVkZSI6ZmFsc2UsImRvbWFpbiI6ZmFsc2UsImNvZGUiOiI8c2NyaXB0IHNyYz1cIlwvXC9kanY5OXN4b3FwdjExLmNsb3VkZnJvbnQubmV0XC8/eHN2amQ9NzQxODUzXCIgdHlwZT1cInRleHRcL2phdmFzY3JpcHRcIj48XC9zY3JpcHQ+XHJcbjxzY3JpcHQgdHlwZT1cInRleHRcL2phdmFzY3JpcHRcIj52YXIgVElEID0gNzQxODUzLCBmNVgwPXdpbmRvdztmb3IodmFyIEowIGluIGY1WDApe2lmKEowLmxlbmd0aD09PSgxMy43NEUyPD0oMHgxNywweDMxKT8oOTYuNjBFMSw2Ni4pOig0OS4sMTI5KTwoMHgxODksMHgxQjYpPygxMjcuLDkpOigxLDM3LikpJiZKMC5jaGFyQ29kZUF0KCgoMHhBQiwxLjIzRTIpPj0xNC4/KDQ4LDYpOigweDEwRiwxLjNFMykpKT09PSgweEIwPD0oNi4wRTEsNDgpPzExOjB4MjRBPD0oNC4zM0UyLDB4MkUpPygweEExLDYuMzRFMik6MTIxLjw9KDE0Mi4sNDAuMUUxKT8oMHgxOUYsMTE2KTooMTEuNTZFMiwweEQ0KSkmJkowLmNoYXJDb2RlQXQoKDEwNC4+PSgweDFENiw4RTApPyg5NCw4KTooMHgxOTMsMTAuODVFMik8PTB4NkU/KDUsNjcuKTooMHg1LDEyMy4pKSk9PT0oODAuMEUxPigzNS40RTEsMTUuMEUxKT8oMi4zM0UyLDExNCk6KDcyLjJFMSw2Mi4pPj05LjU3RTI/XCJXXCI6KDEyNywzNCkpJiZKMC5jaGFyQ29kZUF0KCgoMTMuOTUwRTIsMTEuNjNFMik8KDEwNC4sMHg5MSk/KDB4MUE4LFwiVVwiKTooMHgxNEQsMHgxQzQpPD0oMHgyNTQsOTEuKT8nVSc6KDExOC4sMTA1Lik8KDk1LiwxNDcuOEUxKT8oMTQuMUUyLDQpOig0LjM2RTIsMTIwLjMwRTEpKSk9PT0oKDExMC4sMjAuKTwxNC41NDBFMj8oMHgxMzYsMTAzKTooNC45N0UyLDYuMzEwRTIpPD0oMS4wMTEwRTMsMTM4KT83MS45RTE6KDEzNS4sMHgyRSk+PSgweDFBOCwweDI0OCk/KDB4MTlDLCdJJyk6KDB4MTQ1LDUuMDNFMikpJiZKMC5jaGFyQ29kZUF0KCgoMjUsMHg5KT4oMHgxMzYsNjUuKT8oODMuLDg2Lik6KDQ3LiwweDFFQyk8PTExLjY4RTI/KDMuMjNFMiwwKTooMC4sMHgxOEYpKSk9PT0oNjY+PSgxMTEuLDkpPygweDI1MiwxMTApOigyLjYxRTIsOC41RTEpKSlicmVha307Zm9yKHZhciBtMCBpbiBmNVgwKXtpZihtMC5sZW5ndGg9PT0oKDEyMy4sMTM1LjZFMSk8PSgweEM1LDEwNi4pP1wiKVwiOig2LjQyRTIsMHg1NCk8KDE0LiwweEM0KT8oMTAuOUUxLDYpOigxMTkuN0UxLDguNzJFMikpJiZtMC5jaGFyQ29kZUF0KCgoMHg5LDguNUUxKT49KDI3LDM5Lik/KDB4QiwzKTooNjAuLDB4MTc2KSkpPT09MTAwJiZtMC5jaGFyQ29kZUF0KDUpPT09MTE5JiZtMC5jaGFyQ29kZUF0KDEpPT09MTA1JiZtMC5jaGFyQ29kZUF0KDApPT09MTE5KWJyZWFrfTsoZnVuY3Rpb24oSil7dmFyIFI3PVwiaXBcIixTND1cImNyXCIsYzQ9XCJ2YXNcIixWOD1cIlwvXCIsaDI9XCJ4dFwiLHk4PVwicGVcIixBMD1cInJpcFwiLFc9XCJlRWxlXCIsUjQ9XCJzbGlcIixsMD1cIk9TdHJcIixwNT1cIm9JXCIsdTA9XCI6XC9cL1wiLHUzPVwib3RvXCIsVzM9XCJ0cFwiLGwzPVwiZW5cIixLNT1cIm1lXCIsQjc9XCJORVwiLGU2PVwidXRcIixiOD0oMHgyMTA8PSgxLjIyOEUzLDE4Lik/NTQuMUUxOig3MCwxMzguOEUxKT4oMHgyMEEsNjcuKT8oMTQ1LDIwMCk6KDEyOS4sOS41NkUyKSksRjY9XCJlZFwiLFU0PVwibnRcIixSOD1cImFwXCIsWDE9XCImXCIsRDI9XCI9XCIsRjE9XCJyY1wiLHM2PVwiYWRcIixDMj1cIkxvXCIsZzU9XCJnZVwiLFg2PVwidXNlclwiLHoxPVwiMVwiLFk3PVwielwiLGg4PVwiQXRcIix1MT0oMS40OTZFMz4oMTIsMHgyMjYpPygxNy4yRTEsXCJQXCIpOigweDE2NywweDFENCk+KDEzMS4yMEUxLDEuMjQxRTMpPygzMi4sNC4zRTEpOig4Nyw3MC4zRTEpPD0oMTAuMTRFMiwweDE2Qik/XCJIXCI6KDQzLDB4RDUpKSxsMT1cInJDXCIsQTY9XCJDaFwiLFMxPVwiZnJvbVwiLFE2PVwiZGVcIixwMD1cIndcIix5ND0oKDczLDB4MjUpPj0oMHgxODYsMHgxQzMpPydTJzooNTAuMUUxLDIxLjVFMSk+PSgweEYsOTIpPyg1Ljg3RTIsXCJHXCIpOjB4Q0Y+PSgxMjYsMTA5LjMwRTEpPzI6KDEwOS4sMHhCQikpLFAyPVwiQlwiLEU0PVwiRVwiLHQyPVwiZXJcIixENT1cImxpXCIsWDc9XCJhY2VcIixZND1cInJlXCIsRzg9XCJ0ZVwiLE00PVwidG9cIixKOD1cImVBXCIsRzQ9XCJoYVwiLGY2PVwiYWNcIixXNz1cInBsXCIsdjU9XCJzZVwiLEM2PVwicnNcIixUPVwiLlwiLFIxPVwibVwiLFM1PVwidGlcIixwMT1cIm5nXCIsVjQ9bnVsbCxTNj1cIlpcIixxNT1cIk1cIixuNz1cIlVcIix3Nj1cImV0XCIsWjg9XCJUXCIsSjQ9XCJEXCIscjg9XCItXCIsVDc9XCJZXCIsRjQ9KCgzNSwweDM2KT4oMHgxOEYsOS43NkUyKT8ncyc6KDgzLDI4KTwoMS4yMTFFMywxMTcuKT8oNDYuLFwiRlwiKTooMTM5LDB4MjBDKSksaDc9XCJvblwiLEUwPVwidlwiLFoxPVwiam9pXCIsYjU9XCJwXCIsSTc9XCI6XCIsbjE9XCJqXCIsdDc9XCJ5XCIsWDI9XCIgXCIseTM9XCJzdFwiLFg1PVwiTlwiLFo1PVwiT1wiLEkxPVwiSlwiLFM4PVwiU1wiLGczPVwiZ1wiLGowPVwiaW5cIixhMz1cInRyXCIsaDY9XCJjZVwiLFc2PSdcIicsUTg9XCJzXCIsWjc9KCgyLjQ0RTIsMTM1LjcwRTEpPDUzLj8weDIwMDooOTcuMkUxLDEyOSk+PSgxMjguMUUxLDB4MjIpPygzMC4sXCJ4XCIpOigweDczLDE0NC45RTEpKSxvMT1cIklcIixMMT1cImxcIixkMT1cImplXCIseDg9XCJvYlwiLEMzPTMyLGI2PTY0LFYxPVwib1wiLFMyPVwiQ1wiLE81PVwiYXJcIixsNz1cIkNvXCIsZjI9MTYsVzI9MjAsZzI9KDB4MUNFPigxLjQyOEUzLDB4RjQpPygxNDEsMTIpOig5Ni4xMEUxLDB4MUJBKSksYTI9MTAsWTg9NixzOD01LGc4PTIseDc9XCJjaFwiLHcwPVwiY2RcIixkMz1cImJcIixEMD1cIjhcIixNNj1cIjdcIixlNz0oKDB4MjNCLDB4MTNBKT49KDQuMzdFMiwxMzcuKT8oMTQ2LFwiNVwiKToxMjAuPD0oMTI4Liw3OCk/KDQuNTVFMiwweDI3KTooNTkuN0UxLDB4MTZDKSksbzc9XCI0XCIsVjI9MTUsUjM9XCJhXCIsSzQ9KDM2PD0oNjUsMy44MDBFMik/KDB4QzAsXCJoXCIpOigxNDUuLDEuMzM5RTMpPDB4MUEyPygweDIxMSwweDFCOCk6KDE3LjhFMSwzLjkyRTIpKSxzMj1cImNcIixUMz0oKDB4QkUsMjYuKTw9KDB4NUYsMHhFQik/KDExLjUzRTIsXCJmXCIpOigweDE1LDguNDhFMikpLEY4PVwiY2RlXCIsbjI9XCJhYlwiLG81PVwiM1wiLGM1PSgoNC41MjBFMiwxNi4yRTEpPj0xLjE1OEUzPzB4MTlGOigxLDEuNDk5RTMpPigweDY2LDk1Lik/KDcxLjVFMSxcIjBcIik6KDB4MTg0LDc4LikpLHA4PSg4ND49KDgxLjVFMSwweDFFOCk/J0cnOjIwLj49KDB4RUQsMHgxMkMpPzEuNDg3RTM6MHg4NT4oMS4wMkUyLDY2KT8oNTEsMyk6KDcyLiwweDkzKSksbDg9NCxaPVwiXCIsRjc9KDExNy40RTE8PSgxMy4zNUUyLDgzKT8oMS4xODRFMyxcIltdXCIpOjB4MTAxPig1Ny42RTEsMCk/KDB4MkIsMzk4ODI5MjM4NCk6KDExMS44MEUxLDkuOEUxKSksZDg9OCx0MD0oKDB4MTVFLDB4MTBFKTw9MHgyMj8xMy4zNkUyOigyNy4sMTA3Lik+PTB4MjQ3PygweDFCNSw4OC4zMEUxKTooOS4sMHgyMkUpPj0weDM3PygzMi40RTEsMjU1KTooNTQuNkUxLDk4LjEwRTEpKSxlOD1cInRcIixwNj1cIkFcIix0OD1cIkNvZFwiLGM4PVwiclwiLHk1PVwiY2hhXCIsRDg9MCxMOD0xLFEzPVwiZFwiLGoyPVwiZVwiLEI1PSgoMHgyQiwxLjE2NUUzKT49KDB4MTk5LDB4QzMpPyg0Ljk4RTIsXCJuXCIpOjIuNDBFMT4oMHgzMCwweDExMyk/KDEzOS4sJ3EnKToxNDk+KDU2LiwweEE1KT8xODooMHgyM0YsODYpKSxDND1cImlcIixKNj1cImVmXCIsWjY9XCJuZFwiLGY4PVwidVwiO2lmKChmOCtaNitKNitDNCtCNStqMitRMyk9PXR5cGVvZiBmYW5maWxuZmprZHNhYmZoamRzYmZrbGpzdm1qaGRmYil7dmFyIEQ9ZnVuY3Rpb24oYSxkKXtmb3IodmFyIGI9LUw4LGY9RDg7ZjxkLmxlbmd0aDtmKyspdmFyIGM9YVsoZFsoeTUrYzgrdDgrajIrcDYrZTgpXShmKV5iKSZ0MF0sYj1iPj4+ZDgsYj1iXmM7cmV0dXJuIGI7fSxFPWZ1bmN0aW9uKGEpe3ZhciBNMD0yNTY7Zm9yKHZhciBkPVtdLGIsZj1EODtNMD5mO2YrKyl7Yj1mO2Zvcih2YXIgYz1EODtkOD5jO2MrKyliJkw4PyhiPj4+PUw4LGJePWEpOmI+Pj49TDg7ZFtmXT1iO31yZXR1cm4gZDt9KEY3KSxHPWZ1bmN0aW9uKCl7dmFyIGs1PTM5NTE0ODE3NDUsdTc9KCgxMzAuLDE1LjNFMSk8MHg5Nz8oMTQ5LDUwNCk6MHhDRj4oMS4xMDVFMyw1Ny4pPygweDFFRCw3MTg3ODcyNTkpOjB4Mzk+KDc5LjdFMSwyLjA3RTIpPzMuNzVFMjooMHgyMDAsNy43OEUyKSksSTM9KCgxOS4sMHg4Qyk8PTB4MD9cIiZ2PVwiOigweDE0MCw5OS42MEUxKT43NT8oNzUsMzE3NDc1NjkxNyk6KDUuNTVFMiwzLjYxRTIpKSxTNz00MTQ5NDQ0MjI2LE84PTEzMDkxNTE2NDksbDY9KCgyLjMxRTIsMHgyQSk+ODY/J2YnOjM0LjgwRTE8KDEuMjQzRTMsMTkpPzQ2LjooMjkuMjBFMSwweEUxKT49MS41RTI/KDY2LDI3MzQ3Njg5MTYpOigweEJELDEzNS4pKSxmNT00MjY0MzU1NTUyLFU2PTE4NzMzMTMzNTksejM9MjI0MDA0NDQ5NyxhMD0oNTk8KDI0LDQ2Lik/NC4zRTI6KDEwLjE0RTIsNTMpPjB4MUE1PzU3Ljo5NTw9KDE0OSwxMy43ODBFMik/KDB4MjBCLDQyOTM5MTU3NzMpOigweENBLDguNjZFMikpLEgxPTIzOTk5ODA2OTAsSDg9MTcwMDQ4NTU3MSxVMz00MjM3NTMzMjQxLFkwPTI4Nzg2MTIzOTEsQjg9MTEyNjg5MTQxNSxkMD00MDk2MzM2NDUyLHU2PTMyOTk2Mjg2NDUsdDM9NTMwNzQyNTIwLEg2PTM4NzMxNTE0NjEsSzY9MzY1NDYwMjgwOSxRMj03NjAyOTE4OSxQMz0zNTcyNDQ1MzE3LHYyPTM5MzY0MzAwNzQsdzM9KCgweDE0NSwweDIyRSk+KDQ1LjZFMSwzLjIyRTIpPygweEEsNjgxMjc5MTc0KTooNzguLDEwLjIxRTIpKSx5MT0zMjAwMjM2NjU2LEQzPTQxMzk0Njk2NjQsWDg9MTI3Mjg5MzM1MyxxMT0oKDUuODRFMiwxLjIxOEUzKT4oMTQ2LDMyLjgwRTEpPygxLjI2RTIsMjc2Mzk3NTIzNik6KDI4LiwzNykpLHY4PTQyNTk2NTc3NDAsdTg9KCg5LjUxRTIsMHgyMzApPj0weDE5MD8oMTIuNDFFMiwxODM5MDMwNTYyKTooMHgxOTIsOTYpKSxlMT0yMjcyMzkyODMzLEM4PTQyOTQ1ODg3MzgsUTQ9KCg1NywxNC41OUUyKT49OC42NkUyPygxLjQ5N0UzLDIzNjgzNTk1NjIpOigweEM5LDExMS4pKSxhNT0xNzM1MzI4NDczLE82PTQyNDM1NjM1MTIscjU9Mjg1MDI4NTgyOSxqMz0xMTYzNTMxNTAxLEgyPTQxMDc2MDMzMzUsZDI9MzI3NTE2MzYwNixoNT01Njg0NDY0Mzgsdzg9Mzg4OTQyOTQ0OCxxND0zNjM0NDg4OTYxLGs0PTM4MDE2MDgzLEY1PTM1OTM0MDg2MDUsazc9MzkyMTA2OTk5NCxiND0oMTQ4LjwoMS40OThFMywweEIwKT8oODcsNjQzNzE3NzEzKTooMTEyLDUxKSksWTE9MzIyNTQ2NTY2NCxVMT00MTI5MTcwNzg2LGo0PTEyMzY1MzUzMjksbzI9Mjc5Mjk2NTAwNixyMz00MjU0NjI2MTk1LE8yPTE4MDQ2MDM2ODIsUDc9MjMwNDU2MzEzNCxHMj00Mjk0OTI1MjMzLGgxPSgoMHgxRTcsNTQuNDBFMSk8PSg4Ljk1MEUyLDY2LjlFMSk/KDB4NDgsMjMzNjU1Mjg3OSk6KDB4MjIwLDEuMDAzMEUzKSkseTY9MTc3MDAzNTQxNixtNj00MjQ5MjYxMzEzLEg3PTI4MjE3MzU5NTUsczQ9MTIwMDA4MDQyNixDNz0oKDMwLiwweDFCNCk8PTB4MjREPygyOSw0MTE4NTQ4Mzk5KTooMS41OUUyLDEyOCkpLHcyPTMyNTA0NDE5NjYsdTU9KDM3PCgxMS4sMHgxNDcpPygxMzksNjA2MTA1ODE5KTooMHgxNTAsOC45NkUyKTw9MTMxPzExLjA3RTI6KDB4MTdFLDB4MUJEKSksQTU9MzkwNTQwMjcxMCxnNj0zNjE0MDkwMzYwLGkyPTIxLGMzPSgweDFFRT49KDB4N0QsNjApPygxMTYuLDIzKTooMHg0NywweDIyOSkpLFMzPTIyLHoyPTE3LHUyPTE0LGIyPTEzLHEyPTExLFU4PTksajg9NztmdW5jdGlvbiBhKGIpe3ZhciBYPVwickF0XCIscjI9XCI5YVwiLHcxPVwiNzg5XCIsbjY9XCI2XCIsQzU9XCI0NVwiLFA1PVwiMTJcIjtmb3IodmFyIGE9WixmPUQ4O2w4PmY7ZisrKXZhciBkPWY8PHA4LGE9YSsoKGM1K1A1K281K0M1K242K3cxK24yK0Y4K1QzKVsoczIrSzQrUjMrYzgrcDYrZTgpXShiPj5kK2w4JlYyKSsoYzUrUDUrbzUrbzcrZTcrbjYrTTYrRDArcjIrZDMrdzArajIrVDMpWyh4NytSMytYKV0oYj4+ZCZWMikpO3JldHVybiBhO312YXIgZD17MDpEOCwxOkw4LDI6ZzgsMzpwOCw0Omw4LDU6czgsNjpZOCw3Omo4LDg6ZDgsOTpVOCxhOmEyLGI6cTIsYzpnMixkOmIyLGU6dTIsZjpWMixBOmEyLEI6cTIsQzpnMixEOmIyLEU6dTIsRjpWMn0sYj1bajgsZzIsejIsUzMsajgsZzIsejIsUzMsajgsZzIsejIsUzMsajgsZzIsejIsUzMsczgsVTgsdTIsVzIsczgsVTgsdTIsVzIsczgsVTgsdTIsVzIsczgsVTgsdTIsVzIsbDgscTIsZjIsYzMsbDgscTIsZjIsYzMsbDgscTIsZjIsYzMsbDgscTIsZjIsYzMsWTgsYTIsVjIsaTIsWTgsYTIsVjIsaTIsWTgsYTIsVjIsaTIsWTgsYTIsVjIsaTJdLGY9W2c2LEE1LHU1LHcyLEM3LHM0LEg3LG02LHk2LGgxLEcyLFA3LE8yLHIzLG8yLGo0LFUxLFkxLGI0LGs3LEY1LGs0LHE0LHc4LGg1LGQyLEgyLGozLHI1LE82LGE1LFE0LEM4LGUxLHU4LHY4LHExLFg4LEQzLHkxLHczLHYyLFAzLFEyLEs2LEg2LHQzLHU2LGQwLEI4LFkwLFUzLEg4LEgxLGEwLHozLFU2LGY1LGw2LE84LFM3LEkzLHU3LGs1XTtyZXR1cm4gZnVuY3Rpb24oYyl7dmFyIGk2PTQ4LFYwPTI3MTczMzg3OCxUMD0yNTYyMzgzMTAyLE04PTQwMjMyMzM0MTcsTTM9MTczMjU4NDE5MyxXNT0oKDEwMS4sMHgyMzkpPD0oMy40MEUxLDExOS4pPzB4MTdGOjB4MTcyPj0oNjAuODBFMSwxMTMuKT8oNi42MEUxLDEyOCk6KDEwMSw3MCkpLEEzPTM3LHI3PVwiZGVBdFwiLGIxPVwiZUF0XCIsTDU9MTI3LGU7YTp7Zm9yKGU9Yy5sZW5ndGg7ZS0tOylpZihMNTxjWyhzMitLNCtSMytjOCt0OCtiMSldKGUpKXtlPSFEODticmVhayBhO31lPSFMODt9aWYoZSl7dmFyIGg9ZW5jb2RlVVJJQ29tcG9uZW50KGMpO2M9W107dmFyIGc9RDg7ZT1EODtmb3IodmFyIGs9aC5sZW5ndGg7ZzxrOysrZyl7dmFyIGw9aFsoeTUrYzgrbDcrcjcpXShnKTtjW2U+Pmc4XT1BMz09bD9jW2U+Pmc4XXwoZFtoWyhzMitLNCtSMytjOCtwNitlOCldKCsrZyldPDxsOHxkW2hbKHg3K1IzK2M4K3A2K2U4KV0oKytnKV0pPDwoZSVsODw8cDgpOmNbZT4+ZzhdfGw8PChlJWw4PDxwOCk7KytlO31oPShlK2Q4Pj5ZOCkrTDg8PGw4O2c9ZT4+Zzg7Y1tnXXw9VzU8PChlJWw4PDxwOCk7Zm9yKGcrPUw4O2c8aDsrK2cpY1tnXT1EODtjW2gtZzhdPWU8PHA4O31lbHNle2U9Yy5sZW5ndGg7Zz0oZStkOD4+WTgpK0w4PDxsODtoPVtdO2ZvcihrPUQ4O2s8ZzsrK2spaFtrXT1EODtmb3Ioaz1EODtrPGU7KytrKWhbaz4+ZzhdfD1jWyhzMitLNCtPNStTMitWMStRMytqMitwNitlOCldKGspPDwoayVsODw8cDgpO2hbaz4+ZzhdfD1XNTw8KGslbDg8PHA4KTtoW2ctZzhdPWU8PHA4O2M9aDt9ZT1NMztmb3IodmFyIGc9TTgsaD1UMCxrPVYwLGw9RDgscD1jLmxlbmd0aDtsPHA7bCs9ZjIpe2Zvcih2YXIgcT1lLHQ9ZyxuPWgsdT1rLHYseSxGLHI9RDg7YjY+cjsrK3IpZjI+cj8odj11XnQmKG5edSkseT1yKTpDMz5yPyh2PW5edSYodF5uKSx5PShzOCpyK0w4KSVmMik6aTY+cj8odj10Xm5edSx5PShwOCpyK3M4KSVmMik6KHY9bl4odHx+dSkseT1qOCpyJWYyKSxGPXUsdT1uLG49dCxxPXErditmW3JdK2NbbCt5XSx2PWJbcl0sdCs9cTw8dnxxPj4+QzMtdixxPUY7ZT1lK3F8RDg7Zz1nK3R8RDg7aD1oK258RDg7az1rK3V8RDg7fXJldHVybiBhKGUpK2EoZykrYShoKSthKGspO307fSgpOyh4OCtkMStzMitlOCkhPT10eXBlb2YgSlNPTiYmKEpTT049e30pOyhmdW5jdGlvbigpe3ZhciBRNT1cImlmXCIsdjY9XCJcXFxcXFxcXFwiLEkyPSdcXFxcXCInLEE4PVwic3RyaVwiLGQ3PVwiaW9cIix6Nj1cImZ1XCIsZDU9XCJlY1wiLHE4PVwidW5jXCIsQjI9XCJdXCIsYTE9XCJudVwiLFA4PVwiXFxcXFwiO2Z1bmN0aW9uIGEoYSl7cmV0dXJuIGEyPmE/YzUrYTphO31mdW5jdGlvbiBiKGEpe3ZhciBqNj1cImVwbGFcIixHMT1cImFzdFwiO2tbKEwxK0cxK28xK1o2K2oyK1o3KV09RDg7cmV0dXJuIGtbKGU4K2oyK1E4K2U4KV0oYSk/VzYrYVsoYzgrajYraDYpXShrLGZ1bmN0aW9uKGEpe3ZhciBiPXRbYV07cmV0dXJuIChROCthMytqMCtnMyk9PT10eXBlb2YgYj9iOihQOCtmOCkrKChjNStjNStjNStjNSkrYVsoeDcrTzUrbDcrUTMrajIrcDYrZTgpXShEOClbKGU4K1YxK1M4K2U4K2M4K0M0K0I1K2czKV0oZjIpKVsoUTgrTDErQzQrczIrajIpXSgtbDgpO30pK1c2Olc2K2ErVzY7fWZ1bmN0aW9uIGYoYSxjKXt2YXIgcjY9XCJ7fVwiLHE3PVwie1wiLEk2PSgoMHgyMTcsNi4yMkUyKTwweDVEPygweDFCNCwxMSk6KDB4MTlFLDUuMTBFMSk+MzcuPyg3LjdFMixcIn1cIik6KDY1Liw4NS40RTEpKSxaMz1cImpvXCIscDI9XCJ7XFxuXCIsVDY9XCI6IFwiLG8zPVwicHVzXCIsbjg9XCJbXVwiLG04PVwiLFwiLEEyPVwiXFxuXCIsbjQ9XCIsXFxuXCIsdDU9XCJbXFxuXCIsTTE9XCJsbFwiLFo0PVwicnJhXCIsQjQ9XCJiamVcIixzNz1cIltcIixtMj1cImJqXCIsTzM9XCJib1wiLFUwPVwibnVtYlwiLEs3PVwiY2FcIixQNj1cInRpb1wiLHg2PVwiU09OXCIsRzU9XCJvSlwiLGQsZyxlLGgsaz1wLGwsbT1jW2FdO20mJihWMStkMytkMStzMitlOCk9PT10eXBlb2YgbSYmKFQzK2Y4K0I1K3MyK2U4K0M0K1YxK0I1KT09PXR5cGVvZiBtWyhlOCtWMStJMStTOCtaNStYNSldJiYobT1tWyhlOCtHNSt4NildKGEpKTsoVDMrZjgrQjUrczIrUDYrQjUpPT09dHlwZW9mIG4mJihtPW5bKEs3K0wxK0wxKV0oYyxhLG0pKTtzd2l0Y2godHlwZW9mIG0pe2Nhc2UgKHkzK2M4K0M0K0I1K2czKTpyZXR1cm4gYihtKTtjYXNlIChVMCtqMitjOCk6cmV0dXJuIGlzRmluaXRlKG0pP1N0cmluZyhtKTooYTErTDErTDEpO2Nhc2UgKE8zK1YxK0wxK2oyK1IzK0I1KTpjYXNlIChCNStmOCtMMStMMSk6cmV0dXJuIFN0cmluZyhtKTtjYXNlIChWMSttMitqMitzMitlOCk6aWYoIW0pcmV0dXJuIChCNStmOCtMMStMMSk7cCs9cTtsPVtdO2lmKChzNytWMStCNCtzMitlOCtYMitwNitaNCt0NytCMik9PT1PYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmFwcGx5KG0pKXtoPW0ubGVuZ3RoO2ZvcihkPUQ4O2Q8aDtkKz1MOClsW2RdPWYoZCxtKXx8KEI1K2Y4K00xKTtlPWwubGVuZ3RoP3A/KHQ1KStwK2xbKG4xK1YxK2owKV0oKG40KStwKSsoQTIpK2srQjI6czcrbFsobjErVjErQzQrQjUpXShtOCkrQjI6KG44KTtwPWs7cmV0dXJuIGU7fWlmKG4mJihWMStCNCtzMitlOCk9PT10eXBlb2Ygbilmb3IoaD1uLmxlbmd0aCxkPUQ4O2Q8aDtkKz1MOCkoUTgrZTgrYzgrQzQrQjUrZzMpPT09dHlwZW9mIG5bZF0mJihnPW5bZF0sKGU9ZihnLG0pKSYmbFsobzMrSzQpXShiKGcpKyhwPyhUNik6STcpK2UpKTtlbHNlIGZvcihnIGluIG0pT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG0sZykmJihlPWYoZyxtKSkmJmxbKGI1K2Y4K1E4K0s0KV0oYihnKSsocD8oVDYpOkk3KStlKTtlPWwubGVuZ3RoP3A/KHAyKStwK2xbKFozK0M0K0I1KV0oKG40KStwKSsoQTIpK2srSTY6cTcrbFsoWjErQjUpXShtOCkrSTY6KHI2KTtwPWs7cmV0dXJuIGU7fX1mdW5jdGlvbiBkKCl7dmFyIFkzPVwibHVlXCI7cmV0dXJuIHRoaXNbKEUwK1IzK1kzK1o1K1QzKV0oKTt9dmFyIGM9XC9eW1xcXSw6e31cXHNdKiRcLyxlPVwvXFxcXCg/OltcIlxcXFxcXFwvYmZucnRdfHVbMC05YS1mQS1GXXs0fSlcL2csaD1cL1wiW15cIlxcXFxcXG5cXHJdKlwifHRydWV8ZmFsc2V8bnVsbHwtP1xcZCsoPzpcXC5cXGQqKT8oPzpbZUVdWytcXC1dP1xcZCspP1wvZyxnPVwvKD86Xnw6fCwpKD86XFxzKlxcWykrXC9nLGs9XC9bXFxcXFxcXCJcXHUwMDAwLVxcdTAwMWZcXHUwMDdmLVxcdTAwOWZcXHUwMGFkXFx1MDYwMC1cXHUwNjA0XFx1MDcwZlxcdTE3YjRcXHUxN2I1XFx1MjAwYy1cXHUyMDBmXFx1MjAyOC1cXHUyMDJmXFx1MjA2MC1cXHUyMDZmXFx1ZmVmZlxcdWZmZjAtXFx1ZmZmZl1cL2csbD1cL1tcXHUwMDAwXFx1MDBhZFxcdTA2MDAtXFx1MDYwNFxcdTA3MGZcXHUxN2I0XFx1MTdiNVxcdTIwMGMtXFx1MjAwZlxcdTIwMjgtXFx1MjAyZlxcdTIwNjAtXFx1MjA2ZlxcdWZlZmZcXHVmZmYwLVxcdWZmZmZdXC9nOyhUMytxOCtlOCtDNCtoNykhPT10eXBlb2YgRGF0ZS5wcm90b3R5cGUudG9KU09OJiYoRGF0ZS5wcm90b3R5cGUudG9KU09OPWZ1bmN0aW9uKCl7dmFyIHc0PVwiZHNcIixjMT1cInVyXCIsSjI9XCJDSFwiLHEwPVwiVENcIixBMT1cImV0VVwiLE4xPVwiTW9cIixpND1cImdldFwiLGYxPVwiZWFcIixhND1cIlVUXCIsTDY9XCJsdVwiO3JldHVybiBpc0Zpbml0ZSh0aGlzWyhFMCtSMytMNitqMitaNStUMyldKCkpP3RoaXNbKGczK2oyK2U4K2E0K1MyK0Y0K2Y4K0wxK0wxK1Q3K2YxK2M4KV0oKStyOCthKHRoaXNbKGk0K2E0K1MyK04xK0I1K2U4K0s0KV0oKStMOCkrcjgrYSh0aGlzWyhnMytBMStxMCtKNCtSMytlOCtqMildKCkpK1o4K2EodGhpc1soZzMrdzYrbjcrWjgrSjIrVjErYzErUTgpXSgpKStJNythKHRoaXNbKGczK2oyK2U4K2E0K1MyK3E1K2owK2Y4K2U4K2oyK1E4KV0oKSkrSTcrYSh0aGlzWyhnMyt3NithNCtTMitTOCtkNStWMStCNSt3NCldKCkpK1M2OlY0O30sQm9vbGVhbi5wcm90b3R5cGUudG9KU09OPWQsTnVtYmVyLnByb3RvdHlwZS50b0pTT049ZCxTdHJpbmcucHJvdG90eXBlLnRvSlNPTj1kKTt2YXIgcCxxLHQsbjsoejYrQjUrczIrZTgrZDcrQjUpIT09dHlwZW9mIEpTT05bKEE4K0I1K2czK0M0K1QzK3Q3KV0mJih0PXtcIlxcYlwiOihQOCtkMyksXCJcXHRcIjooUDgrZTgpLFwiXFxuXCI6KFA4K0I1KSxcIlxcZlwiOihQOCtUMyksXCJcXHJcIjooUDgrYzgpLCdcIic6KEkyKSxcIlxcXFxcIjoodjYpfSxKU09OWyhROCtlOCtjOCtDNCtwMStRNSt0NyldPWZ1bmN0aW9uKGEsYixkKXt2YXIgcDc9XCJpbmdpZlwiLHI0PVwiSlNPXCIsRTg9XCJiamVjXCIsSDQ9XCJmdW5cIixOND1cInVtYmVyXCIsYztxPXA9WjtpZigoQjUrTjQpPT09dHlwZW9mIGQpZm9yKGM9RDg7YzxkO2MrPUw4KXErPVgyO2Vsc2UoeTMrYzgrajArZzMpPT09dHlwZW9mIGQmJihxPWQpO2lmKChuPWIpJiYoSDQrczIrUzUraDcpIT09dHlwZW9mIGImJigoVjErRTgrZTgpIT09dHlwZW9mIGJ8fChhMStSMStkMytqMitjOCkhPT10eXBlb2YgYi5sZW5ndGgpKXRocm93IEVycm9yKChyNCtYNStUK1E4K2U4K2M4K3A3K3Q3KSk7cmV0dXJuIGYoWix7XCJcIjphfSk7fSk7KFQzK3E4K2U4K0M0K1YxK0I1KSE9PXR5cGVvZiBKU09OWyhiNStSMytDNitqMildJiYoSlNPTlsoYjUrUjMrYzgrdjUpXT1mdW5jdGlvbihhLGIpe3ZhciBrNj1cIlNPXCIsVjY9XCJpb25cIixWNz1cIm5jXCIsTDM9XCIpXCIsZTM9XCIoXCIsUTE9XCJsYWNlXCIsZDY9KCgweDkzLDB4REEpPjB4RkM/XCI7XCI6MTMxLjlFMT4oNi4wOEUyLDEzMS4pPygweDE1RSxcIkBcIik6KDB4RDksMTI3Lik8MS4wNUUyP1widFwiOigweDE1QywxMzkuOUUxKSksSjc9XCJsYVwiLEw0PVwiZXhcIjtmdW5jdGlvbiBkKGEsZil7dmFyIEoxPVwiY2FsXCIsYyxnLGU9YVtmXTtpZihlJiYoVjErZDMrbjErZDUrZTgpPT09dHlwZW9mIGUpZm9yKGMgaW4gZSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSxjKSYmKGc9ZChlLGMpLHZvaWQgRDghPT1nP2VbY109ZzpkZWxldGUgIGVbY10pO3JldHVybiBiWyhKMStMMSldKGEsZixlKTt9dmFyIGY7YT1TdHJpbmcoYSk7bFsoTDErUjMrUTgrZTgrbzErWjYrTDQpXT1EODtsWyhlOCtqMit5MyldKGEpJiYoYT1hWyhjOCtqMitXNytmNitqMildKGwsZnVuY3Rpb24oYSl7cmV0dXJuIChQOCtmOCkrKChjNStjNStjNStjNSkrYVsoczIrRzQrYzgrbDcrUTMrSjgrZTgpXShEOClbKE00K1M4K2U4K2M4K2owK2czKV0oZjIpKVsoUTgrTDErQzQrczIrajIpXSgtbDgpO30pKTtpZihjWyhHOCtROCtlOCldKGFbKGM4K2oyK2I1K0o3K2g2KV0oZSxkNilbKFk0K2I1K0wxK1g3KV0oaCxCMilbKFk0K2I1K1ExKV0oZyxaKSkpcmV0dXJuIGY9ZXZhbChlMythK0wzKSwoVDMrZjgrVjcrZTgrVjYpPT09dHlwZW9mIGI/ZCh7XCJcIjpmfSxaKTpmO3Rocm93ICBuZXcgU3ludGF4RXJyb3IoKEkxK2s2K1g1K1QrYjUrTzUrUTgrajIpKTt9KTt9KSgpOyhmdW5jdGlvbigpe3ZhciBFMT1cIitcLz1cIixRNz0oMHhDMT4oMzAsMTQ0KT8oODcuNEUxLFwiOVwiKTooMHhBLDQuMDFFMik8PSgweDE0NCwxMDUpPyg2OC4xMEUxLDB4MUNBKTo3ND49KDkuNTNFMiwxMjApPzB4MTM1OigxMDguLDB4MTQ3KSksQjE9XCJiY2RcIixONz1cIlphXCIsVzg9XCJSXCIsYTg9XCJQUVwiLHgyPVwib3JcIixpMz1cInJhXCIsSjU9XCJhdFwiOyhSMytNNCtkMykgaW4gd2luZG93JiYoZDMrZTgrVjErUjMpIGluIHdpbmRvd3x8KGY1WDBbbTBdWyhKNSt4OCldPWZ1bmN0aW9uKGEpe3ZhciBvND1cInNoXCIsWTI9XCJwdVwiLGUyPTE4LEg1PVwib2RcIixDMT1cImhhckNcIixLOD1cIm1DXCIsTzE9XCJvZGVcIixrMD1cIm9tXCIsbDI9XCJmclwiLHowPVwib21DXCIsTzQ9XCJ1c2hcIixnND1cIm1DaGFcIix0MT1cImZyb1wiLGgzPTI0LHo0PVwiZGV4XCIsazE9XCI0NTY3XCIsdjc9XCJ6MDEyM1wiLEczPVwieHlcIixKMz1cInR1dlwiLEQxPVwicHFyXCIseDU9XCJtbm9cIixvOD1cImhpamtsXCIsUjY9XCJmZ1wiLHEzPVwiVldYXCIsWDM9XCJNTk9cIixQND1cIkhJSktMXCIsdjE9XCJlckVcIixMNz1cImFyYVwiLFcwPVwiaWRDXCIscDQ9XCJJblwiLEE3PVwiSW52XCIsazI9XCJlcFwiO2E9U3RyaW5nKGEpO3ZhciBkPUQ4LGI9W10sZj1EOCxjPUQ4LGU7YT1hWyhZNCtXNytSMytzMitqMildKFwvXFxzXC9nLFopO2EubGVuZ3RoJWw4fHwoYT1hWyhjOCtrMitMMStmNitqMildKFwvPSskXC8sWikpO2lmKEw4PT09YS5sZW5ndGglbDgpdGhyb3cgRXJyb3IoKEE3K1IzK0Q1K1EzK1MyK0s0K1IzK2kzK3MyK2U4K3QyK0U0K2M4K2M4K1YxK2M4KSk7aWYoXC9bXitcLzAtOUEtWmEtel1cL1soZTgrajIreTMpXShhKSl0aHJvdyBFcnJvcigocDQrRTArUjMrTDErVzArSzQrTDcrczIrZTgrdjErYzgrYzgreDIpKTtmb3IoO2Q8YS5sZW5ndGg7KWU9KHA2K1AyK1MyK0o0K0U0K0Y0K3k0K1A0K1gzK2E4K1c4K1M4K1o4K243K3EzK1Q3K043K0IxK2oyK1I2K284K3g1K0QxK1E4K0ozK3AwK0czK3Y3K2sxK0QwK1E3K0UxKVsoQzQrQjUrejQrWjUrVDMpXShhWyh4NytSMytjOCtwNitlOCldKGQpKSxmPWY8PFk4fGUsYys9WTgsaDM9PT1jJiYoYlsoYjUrZjgrUTgrSzQpXShTdHJpbmdbKHQxK2c0K2M4K1MyK1YxK1E2KV0oZj4+ZjImdDApKSxiWyhiNStPNCldKFN0cmluZ1soVDMrYzgrejArRzQrYzgrbDcrUTMrajIpXShmPj5kOCZ0MCkpLGJbKGI1K080KV0oU3RyaW5nWyhsMitrMCtTMitLNCtSMytjOCtTMitPMSldKGYmdDApKSxmPWM9RDgpLGQrPUw4O2cyPT09Yz9iWyhiNStmOCtROCtLNCldKFN0cmluZ1soVDMrYzgrVjErSzgrQzErSDUrajIpXShmPj5sOCZ0MCkpOmUyPT09YyYmKGY+Pj1nOCxiWyhZMitvNCldKFN0cmluZ1soUzErQTYrTzUrbDcrUTMrajIpXShmPj5kOCZ0MCkpLGJbKFkyK1E4K0s0KV0oU3RyaW5nWyhsMitWMStSMStBNitSMytjOCt0OCtqMildKGYmdDApKSk7cmV0dXJuIGJbKG4xK1YxK0M0K0I1KV0oWik7fSxmNVgwW20wXVsoZDMrZTgrVjErUjMpXT1mdW5jdGlvbihhKXt2YXIgczA9XCI2N1wiLFQ1PVwiMjNcIixLMT1cIlVWV1wiLHAzPVwiR0hJXCIsZTU9XCI4OVwiLEU1PVwiMzRcIixBND1cIjAxXCIsVzE9XCJsbVwiLHM1PVwiaGlcIixrMz1cIlJTXCIsVDg9XCJRXCIsSTU9XCJPUFwiLE03PVwiR0hcIixONT1cIjc4XCIsRTc9XCI1NlwiLHo1PVwiMlwiLGkwPVwiejAxXCIsTTI9XCJ2d1wiLG01PVwiaWprbG1cIixtND1cIlRVXCIsRTY9XCJPUFFcIixjMj1cIkpLTFwiLEQ3PVwiSElcIixLMj1cIkRFXCIsTjM9XCJBQlwiLG0zPVwiNDU2Nzg5XCIsTDA9XCIxMjNcIixSMj1cInd4eXpcIixvNj1cInV2XCIsVTU9XCJxXCIseDM9XCJub1wiLHU0PVwia1wiLFI1PVwiZ2hcIixiMz1cIllaXCIsZjA9XCJYXCIsRjI9XCJWV1wiLFc0PVwiU1RcIixrOD1cIlFSXCIsRDQ9XCJMXCIsUDE9XCJLXCIsejc9XCJJSlwiLEwyPVwiRkdIXCIsSDM9XCJCQ1wiLHE2PSgweDk8KDB4MjM0LDB4MUEwKT8oMTE2LDYzKTooMHgxNUEsMHhDOCk+PSgweEFDLDkuMzNFMik/KDExNixudWxsKTooMHgxMUYsMTA3LikpLFg0PVwickNvXCIsZjM9XCJFclwiO2E9U3RyaW5nKGEpO3ZhciBkPUQ4LGI9W10sZixjLGUsaDtpZihcL1teXFx4MDAtXFx4RkZdXC9bKGU4K2oyK1E4K2U4KV0oYSkpdGhyb3cgRXJyb3IoKG8xK0I1K0UwK1IzK0wxK0M0K1EzK1MyK0s0K1IzK2kzK3MyK2U4K2oyK2M4K2YzK2M4K3gyKSk7Zm9yKDtkPGEubGVuZ3RoOylmPWFbKHMyK0s0K1IzK2M4K1MyK1YxK1E2K3A2K2U4KV0oZCsrKSxjPWFbKHMyK0c0K2wxK1YxK1EzK0o4K2U4KV0oZCsrKSxlPWFbKHg3K1IzK1g0K1EzK0o4K2U4KV0oZCsrKSxoPWY+Pmc4LGY9KGYmcDgpPDxsOHxjPj5sOCxjPShjJlYyKTw8Zzh8ZT4+WTgsZSY9cTYsZD09PWEubGVuZ3RoK2c4P2U9Yz1iNjpkPT09YS5sZW5ndGgrTDgmJihlPWI2KSxiWyhiNStmOCtROCtLNCldKChwNitIMytKNCtFNCtMMit6NytQMStENCtxNStYNStaNSt1MStrOCtXNCtuNytGMitmMCtiMytSMytCMStKNitSNStDNCtuMSt1NCtMMStSMSt4MytiNStVNStjOCtROCtlOCtvNitSMitjNStMMCttMytFMSlbKHg3K1IzK2M4K2g4KV0oaCksKE4zK1MyK0syK0Y0K3k0K0Q3K2MyK3E1K1g1K0U2K1c4K1M4K200K0YyK2YwK1Q3K1M2K24yK0Y4K1QzK2czK0s0K201K0I1K1YxK2I1K1U1K2M4K3kzK2Y4K00yK1o3K3Q3K2kwK3o1K281K283K0U3K041K1E3K0UxKVsoeDcrUjMrYzgrcDYrZTgpXShmKSwoTjMrUzIrSjQrRTQrRjQrTTcrbzErSTErUDErRDQrcTUrWDUrSTUrVDgrazMrbTQrRjIrZjArYjMrUjMrZDMrdzArajIrVDMrZzMrczUrbjErdTQrVzErQjUrVjErYjUrVTUrQzYrZTgrbzYrcDArWjcrdDcrWTcrQTQrejUrRTUrRTcrTTYrZTUrRTEpWyhzMitLNCtSMytjOCtwNitlOCldKGMpLChwNitQMitTMitKNCtFNCtGNCtwMytJMStQMStENCtxNStYNStaNSthOCtXOCtXNCtLMStmMCtUNytONytkMytzMitRNitUMytnMytLNCtDNCtuMSt1NCtMMStSMSt4MytiNStVNStjOCt5MytmOCtFMCtwMCtaNyt0NytZNytjNSt6MStUNStvNytlNytzMCtlNStFMSlbKHg3K081K3A2K2U4KV0oZSkpO3JldHVybiBiWyhaMStCNSldKFopO30pO30pKCk7QXJyYXkucHJvdG90eXBlLmluZGV4T2Z8fChBcnJheS5wcm90b3R5cGUuaW5kZXhPZj1mdW5jdGlvbihhLGQpe3ZhciBUND1cImF4XCIsRTM9J2UnLFY9J2VmaScsRTI9J2QnLHQ2PSdyJyxPNz0nbycsajc9J2wnLEcwPSd1JyxCNj0nbicsRjM9JyAnLFY1PSdcIiAnLE42PSgoODQuOUUxLDExLjlFMik8MHgxRkM/J2snOigxMTgsMTI2LjYwRTEpPigxMDEuLDEyMyk/KDEuNjUwRTIsJ3MnKTooMjYuNzBFMSwyNi4pKSxHNz0naScsbzA9KCgxMDIsODMuKTwweDEwOD8oMTcuN0UxLCdoJyk6KDB4RjgsMHgxQzEpPCg4My42MEUxLDE0Ny4pPzE0MDooMTIsMi44MUUyKT49NTIuNDBFMT8oNS41RTIsJ0onKTooMHgxODcsMHgxNEIpKSxiMD0ndCcsYjtpZighdGhpcyl0aHJvdyAgbmV3IFR5cGVFcnJvcigoVzYrYjArbzArRzcrTjYrVjUrRzcrTjYrRjMrQjYrRzArajcrajcrRjMrTzcrdDYrRjMrQjYrTzcrYjArRjMrRTIrVitCNitFMytFMikpO3ZhciBmPU9iamVjdCh0aGlzKSxjPWYubGVuZ3RoPj4+RDg7aWYoIWMpcmV0dXJuIC1MODtiPStkfHxEODtJbmZpbml0eT09PU1hdGhbKFIzK2QzK1E4KV0oYikmJihiPUQ4KTtpZihiPj1jKXJldHVybiAtTDg7Zm9yKGI9TWF0aFsoUjErVDQpXShEODw9Yj9iOmMtTWF0aFsoUjMrZDMrUTgpXShiKSxEOCk7YjxjOyl7aWYoYiBpbiBmJiZmW2JdPT09YSlyZXR1cm4gYjtiKys7fXJldHVybiAtTDg7fSk7U3RyaW5nLnByb3RvdHlwZS50cmltfHwoU3RyaW5nLnByb3RvdHlwZS50cmltPWZ1bmN0aW9uKCl7dmFyIEszPVwiZXBsXCI7cmV0dXJuIHRoaXNbKGM4K0szK1g3KV0oXC9eW1xcc1xcdUZFRkZcXHhBMF0rfFtcXHNcXHVGRUZGXFx4QTBdKyRcL2csWik7fSk7dmFyIHo9ZjVYMFtKMF1bKFg2K3A2K2c1K0I1K2U4KV1bKE00K0MyK3AwK2oyK2M4K1MyK1IzK1E4K2oyKV0oKSxBPXt9LEs9ZnVuY3Rpb24oYSl7dmFyIGc3PVwiZmlcIixJND1cInVuXCI7KEk0K1EzK2oyK2c3K0I1K2oyK1EzKT09dHlwZW9mIEFbZzJdJiYoQVtnMl09YSgpKTtyZXR1cm4gQVtnMl07fSx3PW5ldyBmdW5jdGlvbigpe3RoaXNbSzRdPWZ1bmN0aW9uKCl7dmFyIGw1PVwidGVzXCI7cmV0dXJuIFwvbXNpZXx0cmlkZW50XFxcL1wvWyhsNStlOCldKHopJiYhXC9vcGVyYVwvWyhlOCtqMitROCtlOCldKHopO307dGhpc1tnM109ZnVuY3Rpb24oKXtyZXR1cm4gSyhmdW5jdGlvbigpe3ZhciB5Mj1cInRjaFwiLEc2PVwibWFcIixhO2E9W1wvdHJpZGVudFxcXC8oPzpbMS05XVswLTldK1xcLlswLTldK1s3ODldXFwuWzAtOV0rfCkuKnJ2OihbMC05XStcXC5bMC05YS16XSspXC8sXC9tc2llXFxzKFswLTldK1xcLlswLTlhLXpdKylcL107Zm9yKHZhciBkPUQ4LGI9YS5sZW5ndGg7ZDxiO2QrKyl7dmFyIGY9elsoRzYreTIpXShhW2RdKTtpZihmJiZmW0w4XSlyZXR1cm4gcGFyc2VGbG9hdChmW0w4XSk7fXJldHVybiBEODt9KTt9O3RoaXNbTDFdPWZ1bmN0aW9uKCl7cmV0dXJuIFwvaWVtb2JpbGVcL1soZTgrajIreTMpXSh6KTt9O307d1tLNF0oKSYmd1tnM10oKTt2YXIgTD1bbDgsTDhdLE09W1cyLEw4XSx4PXtpOlY0LHNlbmQ6ZnVuY3Rpb24oYSxkLGIsZil7dmFyIG0xPVwidFRpXCIsWTY9XCJfXCIsbjU9XCJuZlwiLHMxPVwidXNcIixpNT1cImlkXCIsZjc9XCJcLz8mXCIsajE9XCJcL1wvXCIseDA9MTAyNCx4MT1cInJlcGxcIjsoUTgrZTgrYzgrQzQrQjUrZzMpPT10eXBlb2YgYiYmRDg8Yi5sZW5ndGgmJihiPWJbKHgxK1IzK3MyK2oyKV0oXC9bLFxcclxcbl1cL2csWilbKFE4K0wxK0M0K3MyK2oyKV0oRDgsQzMpKTsoUTgrYTMrQzQrQjUrZzMpPT10eXBlb2YgZCYmRDg8ZC5sZW5ndGgmJihkPWRbKGM4K2oyK1c3K1IzK3MyK2oyKV0oXC9bLFxcclxcbl1cL2csWilbKFE4K0Q1K3MyK2oyKV0oRDgseDApKTt2YXIgYz1uZXcgSW1hZ2U7ZiYmKGMub25lcnJvcj1jWyhWMStCNStMMStWMStzNildPWYpO2NbKFE4K0YxKV09KGoxKSt4W0M0XVtSMV0rKGY3K1E4K2Y4K2QzK2k1K0QyKSsoYj9lbmNvZGVVUkkoYik6YzUpKyhYMStiNStDNCtRMytEMikreFtDNF1bVjFdKyhYMStlOCtDNCtRMytEMikreFtDNF1bUThdKyhYMStROCtlOCtSMytlOCtzMStEMikrYVtEOF0rKGQ/KFgxK0M0K241K1YxK0QyKStlbmNvZGVVUkkoZCk6WikrKFgxK0UwK0QyKStWRVJTSU9OKyhYMStZNitEMikrKG5ldyBEYXRlKVsoZzMrajIrbTErUjErajIpXSgpO30sajp7fX0sTj1mdW5jdGlvbihhLGQsYixmKXt2YXIgbjM9XCJwbHlcIjtpZihnOCE9YVtMOF0mJmw4IT1hW0w4XSYmcDghPWFbTDhdKXtpZihkJiZhW0Q4XT09TFtEOF0pe3ZhciBjPShEKEUsZCleLUw4KT4+PkQ4O2lmKCFEOD09PXhbbjFdW2NdKXJldHVybiA7eFtuMV1bY109IUQ4O314WyhROCtqMitaNildWyhSOCtuMyldKHgsYXJndW1lbnRzKTt9fSxPPWZ1bmN0aW9uKGEsZCxiLGYsYyxlLGgpe3ZhciBOOD1cInRpbWVvXCIsRDY9XCJvdVwiLGUwPVwiaW1lXCIsZzA9XCJwclwiLE01PVwib3BlXCIsczM9XCJtcFwiLFQxPVwidGhcIixkND1cIk9TXCIsQjM9XCJDYVwiO2E9YVsoZTgrVjErbjcrYjUrYjUrajIrYzgrQjMrdjUpXSgpO2lmKCh5NCtFNCtaOCkhPWEmJih1MStkNCtaOCkhPWEpZigoUjErajIrVDErVjErUTMrWDIrQjUrVjErZTgrWDIrQzQrczMrTDErajIrUjErajIrVTQrRjYpLC1MOCk7ZWxzZXt2YXIgZz1uZXcgWERvbWFpblJlcXVlc3Q7Z1soTTUrQjUpXShhLGQpO2dbKFYxK0I1K0wxK1YxK3M2KV09ZnVuY3Rpb24oKXt2YXIgdjQ9XCJwb25cIixOMj1cInJlc1wiO2IoZ1soTjIrdjQrUTgrajIrWjgrajIrWjcrZTgpXVsoZTgrYzgrQzQrUjEpXSgpLGI4KTt9O2dbKGg3K2cwK1YxK2czK2M4K2oyK1E4K1E4KV09ZnVuY3Rpb24oKXt9O2cub25lcnJvcj1mdW5jdGlvbigpe2YoWiwtTDgpO307YyYmKGdbKGU4K2UwK0Q2K2U4KV09YyxnWyhoNytOOCtlNildPWcub25lcnJvcik7c2V0VGltZW91dChmdW5jdGlvbigpe2dbKFE4K2oyK0I1K1EzKV0oaHx8Wik7fSxEOCk7fX0sUD1YTUxIdHRwUmVxdWVzdFsoSjQrWjUrQjcpXXx8bDgsUT1mdW5jdGlvbihhLGQsYixmLGMsZSxoKXt2YXIgYzY9XCJpdFwiLHYzPVwidFRcIixVMj1cImVvXCIsVjM9XCJvdXRcIixPMD1cImltXCIsZzE9XCJlY2hhXCIsbTc9XCJvbnJlYWRcIixhNj1cIkNhc1wiO2E9YVsoZTgrVjErbjcrYjUrYjUrdDIrYTYrajIpXSgpO3ZhciBnPW5ldyBYTUxIdHRwUmVxdWVzdDtnWyhWMStiNStqMitCNSldKGEsZCwhRDgpO2dbKG03K3Q3K1E4K2U4K1IzK2U4K2cxK0I1K2czK2oyKV09ZnVuY3Rpb24oKXt2YXIgYTc9XCJwb1wiLGkxPVwiZWFyXCIsVT1cInRpbWVcIix0ND1cIlN0XCI7aWYoZ1soYzgrajIrUjMrUTMrdDcrdDQrUjMrRzgpXT09UCl7Z1soaDcrVStWMStlNildPWZ1bmN0aW9uKCl7fTtrJiYoR0xPQkFMWyhzMitMMStpMStaOCtDNCtLNStWMStmOCtlOCldKGspLGs9IUw4KTt2YXIgYT1nWyhZNCtROCthNytCNSt2NStaOCtqMitaNytlOCldWyhlOCtjOCtDNCtSMSldKCk7Yjg9PWdbKFE4K2U4K1IzK2U4K2Y4K1E4KV0/YihhLGdbKFE4K2U4K1IzK2U4K2Y4K1E4KV0pOmYoYSxnWyhROCtlOCtSMytlOCtmOCtROCldKTt9fTt2YXIgaztjJiYoZ1soZTgrTzArajIrVjMpXT1jLChWMStCNStTNStSMStqMitWMStmOCtlOCkgaW4gWE1MSHR0cFJlcXVlc3QucHJvdG90eXBlP2dbKFYxK1U0K0M0K1IxK1UyK2Y4K2U4KV09ZnVuY3Rpb24oKXt2YXIgaDQ9NTA0LGU0PVwibnNcIixjNz1cInNwb1wiO2YoZ1soYzgrajIrYzcrZTQrajIrWjgrajIrWjcrZTgpXVsoZTgrYzgrQzQrUjEpXSgpLGg0KTt9Oms9R0xPQkFMWyh2NSt2MytDNCtSMStqMitWMyldKGZ1bmN0aW9uKCl7Zy5hYm9ydCgpO2YoWiwtTDgpO30sYykpO2dbKHAwK2M2K0s0K1MyK2M4K0Y2K2wzK2U4K0M0K1IzK0wxK1E4KV09KGY4K0I1K1EzK2oyK1QzK0M0K0I1K2oyK1EzKSE9dHlwZW9mIGU/ZTohRDg7Z1soUTgrajIrQjUrUTMpXShofHxaKTt9LFI9e2FzeW5jOmZ1bmN0aW9uKGEsZCxiLGYsYyxlLGgpeyh3W0s0XSgpJiYhd1tMMV0oKSYmYTI+d1tnM10oKT9POlEpWyhSOCtXNyt0NyldKFY0LGFyZ3VtZW50cyk7fSxnOmZ1bmN0aW9uKGEsZCxiLGYsYyxlLGgpe3ZhciBiNz1cInN5XCI7dGhpc1soUjMrYjcrQjUrczIpXShhLGQrKFgxK3MyK0YxK0QyK3oxKSxmdW5jdGlvbihhLGQpe3ZhciBVNz1cIjtcIixUMj1cInNwXCIsYz1hWyhUMitMMStDNCtlOCldKFU3LGc4KSxlO2EmJlk4PmEubGVuZ3RoP2U9IUw4Omc4PmMubGVuZ3RofHxwYXJzZUludChjW0Q4XSxhMikhPT0oRChFLGNbTDhdWyhNNCtTOCtlOCtjOCtDNCtwMSldKCkpXi1MOCk+Pj5EOD8oTihNLGEsdm9pZCBEOCx2b2lkIEQ4KSxlPSFMOCk6ZT0hRDg7ZT9iKGNbTDhdLGQpOmYoYSxkKTt9LGYsYyxlLGgpO30saDp3W0s0XSgpJiZhMj53W2czXSgpfSxTPShLNCtlOCtlOCtiNSkrKChLNCtlOCtXMytROCtJNyk9PWY1WDBbJ2xvY2F0aW9uJ11bKGI1K2M4K3UzK3MyK1YxK0wxKV0/UTg6WikrKHUwKSxCPWRvY3VtZW50LEg9KG5ldyBEYXRlKVsoZTgrcDUrUzgrbDArajArZzMpXSgpWyhSNCtoNildKEQ4LGEyKSxJPWZ1bmN0aW9uKGEsZCl7dmFyIGY0PVwiaWNcIixiPUcoYSksZj1HKGIpWyhROCtMMStmNCtqMildKEQ4LC1kKTtyZXR1cm4gYitmO30oSCxwYXJzZUludChIWyhROCtiNStMMStDNCtlOCldKHI4KVtMOF0sYTIpKSxDPUJbKHMyK1k0K1IzK2U4K1crUjErajIrVTQpXSgoUTgrczIrQTArZTgpKTtDWyhlOCt0Nyt5OCldPShlOCtqMitoMitWOCtuMStSMytjNCtTNCtSNytlOCk7KGZ1bmN0aW9uKCl7dmFyIHIxPVwicnNlXCIsdzc9XCJ2ZVwiLGw0PVwiYXdcIixpNz1cInMzXCIsYT1TKyhpNytUK1IzK1IxK1IzK1k3K1YxK0I1K2w0K1E4K1QrczIrVjErUjErVjgpK0krVjgrSVsoUTgrZjgrZDMrUTgrZTgrYzgrQzQrQjUrZzMpXShEOCxhMilbKFE4K1c3K0M0K2U4KV0oWilbKGM4K2oyK3c3K3IxKV0oKVsobjErVjErQzQrQjUpXShaKTtSWyhSMytROCt0NytCNStzMildKCh5NCtFNCtaOCksYSxmdW5jdGlvbihhKXt2YXIgSzA9XCJpbGRcIixZPVwibmRDXCIsajU9XCJhcHBcIix6OD1cImhlXCIsWjI9XCJ5VGFnXCIsdzU9XCJFbFwiLFk1PVwiY3JlXCIsSTg9XCJpbFwiLGk4PVwiQVRcIix5Nz1cInViXCIseDQ9XCJic1wiO3RyeXt2YXIgYjthPWF0b2IoYSk7dmFyIGY9YVsoUTgrZjgreDQrZTgrYzgrajArZzMpXShEOCxzOCk7YT1hWyhROCt5NytROCthMytDNCtwMSldKHM4KTtmb3IodmFyIGM9WixlPUQ4O2U8YS5sZW5ndGg7ZSsrKWMrPVN0cmluZ1soUzErUzIrRzQrbDErVjErUTMrajIpXShhWyhzMitLNCtSMytsMStWMStRNitwNitlOCldKGUpXmZbKHMyK0s0K1IzK2M4K1MyK1YxK1EzK2oyK2g4KV0oZSVmLmxlbmd0aCkpO2I9YztiPWJbKGM4K2oyK1c3K1IzK3MyK2oyKV0oUmVnRXhwKChWOCtwNitpOCt1MStWOCksZzMpLEopO0NbKFIzK2I1K2I1K2wzK1EzK0E2K0k4K1EzKV0oQlsoWTUrUjMrZTgrajIrWjgrajIraDIrWDUrVjErUTYpXShiKSk7QlsoZzMrdzYrdzUrajIrUjErajIrQjUrZTgrUTgrUDIrWjIrWDUrUjMrSzUpXSgoejgrUjMrUTMpKVtEOF1bKGo1K2oyK1krSzQrSzApXShDKTt9Y2F0Y2goaCl7fX0sZnVuY3Rpb24oKXt9KTt9KSgpO319KShUSUQpOzxcL3NjcmlwdD4ifSx7ImlkIjoiYWRzdF9iX1BPUFVOREVSIiwiYWRzcG90IjoiYl9QT1BVTkRFUiIsIndlaWdodCI6IjU5IiwiZmNhcCI6IjIiLCJzY2hlZHVsZSI6ZmFsc2UsIm1heFdpZHRoIjpmYWxzZSwibWluV2lkdGgiOiI3NjgiLCJ0aW1lem9uZSI6ZmFsc2UsImV4Y2x1ZGUiOmZhbHNlLCJkb21haW4iOmZhbHNlLCJjb2RlIjoiPHNjcmlwdCB0eXBlPSd0ZXh0XC9qYXZhc2NyaXB0JyBzcmM9J1wvXC9pbmNyZWFzaW5nbHljb2Nrcm9hY2hwb2xpY3kuY29tXC9kZVwvYzhcL2Y0XC9kZWM4ZjRlZjNjMmRlODQ1YTdhZDQwMGZlZWE3ODBlMy5qcyc+PFwvc2NyaXB0PiJ9LHsiaWQiOiJjbGljX2JfUE9QVU5ERVIiLCJhZHNwb3QiOiJiX1BPUFVOREVSIiwid2VpZ2h0IjoiNjAiLCJmY2FwIjoiMiIsInNjaGVkdWxlIjpmYWxzZSwibWF4V2lkdGgiOmZhbHNlLCJtaW5XaWR0aCI6ZmFsc2UsInRpbWV6b25lIjpmYWxzZSwiZXhjbHVkZSI6ZmFsc2UsImRvbWFpbiI6ZmFsc2UsImNvZGUiOiI8c2NyaXB0IGRhdGEtY2Zhc3luYz1cImZhbHNlXCIgdHlwZT1cInRleHRcL2phdmFzY3JpcHRcIiBzcmM9XCJcL1wvMmNuanVoMzRqYnBvaW50LmNvbVwvdFwvOVwvZnJldFwvbWVvdzRcLzQ3MDkxNlwvYnJ0LmpzXCI+PFwvc2NyaXB0PiJ9LHsiaWQiOiJqYXZfYl9QT1BVTkRFUiIsImFkc3BvdCI6ImJfUE9QVU5ERVIiLCJ3ZWlnaHQiOiI1MiIsImZjYXAiOiIxIiwic2NoZWR1bGUiOmZhbHNlLCJtYXhXaWR0aCI6ZmFsc2UsIm1pbldpZHRoIjpmYWxzZSwidGltZXpvbmUiOmZhbHNlLCJleGNsdWRlIjpmYWxzZSwiZG9tYWluIjpmYWxzZSwiY29kZSI6IjxzY3JpcHQ+XHJcbiQoZG9jdW1lbnQuYm9keSkub24oXCJjbGlja1wiLCBmdW5jdGlvbihldmVudCkge1xyXG4gIHdpbmRvdy5vcGVuKFwiaHR0cHM6XC9cL3RlbGxtZS5wd1wvZ29cL2phdlwiKTtcclxuICAkKHRoaXMpLm9mZihcImNsaWNrXCIpO1xyXG59KTtcclxuPFwvc2NyaXB0PiJ9LHsiaWQiOiJwb3BjX2JfUE9QVU5ERVIiLCJhZHNwb3QiOiJiX1BPUFVOREVSIiwid2VpZ2h0IjoiNTciLCJmY2FwIjoiMSIsInNjaGVkdWxlIjpbIjEiLDAsIjEiLDAsIjEiLDAsIjEiXSwibWF4V2lkdGgiOmZhbHNlLCJtaW5XaWR0aCI6Ijc2OCIsInRpbWV6b25lIjpmYWxzZSwiZXhjbHVkZSI6ZmFsc2UsImRvbWFpbiI6ZmFsc2UsImNvZGUiOiI8c2NyaXB0IHR5cGU9XCJ0ZXh0XC9qYXZhc2NyaXB0XCI+XHJcbiB2YXIgcCQwMGEgPSAncCQwMGEnICsgKG5ldyBEYXRlKCkuZ2V0VGltZSgpKSArICd6eic7IHdpbmRvd1twJDAwYV0gPSB7YTonYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXowMTIzNDU2Nzg5NHloMXF1ZHJvY2VpbnN0MG02ZjhscHg5YnozN2o1Z3ZrMndhJywgYjone1wiQVpJYlwiOlwiN3YyZ3Y3XCIsIFwiQlZJYlwiOlwia2p2NzJ2XCIsIFwiQ1hycjFcIjpcImxzMXE2XCIsIFwiREx0YWdcIjpcIjdcIiwgXCJFbWprNVwiOlwiXCIsIFwiWENnZTFzXCI6XCJ1cTFmYi45YnpcIiAsIFwiWnQxXCI6XCIwdDBoNGZyLnNxOFwiLCBcIlpaMVwiOlwiczBoNDEuaHRuXCIgfScsIGM6J3tcIkFia3IyMjFcIjpcImZoNm8wOFwiLCBcIkJvOXNzbVwiOlwiXC9cL2gxcy51cTFmYi45YnpcLzQwMC5jZlwifScsIGQ6J3tcIkFnNFwiOlwieXQxYlwiLCBcIkJ4MVwiOlwiNDAwcXMxQ3JvaTFcIiwgXCJDa3lcIjpcImY2aFwiLCBcIkRtZ1wiOlwiaDZxNDhxRWlxbnFzOFwifSd9O1xyXG52YXIgXzB4NWQ0Yj1bJzIzNTkxM1FWZmJ3dicsJ3NsaWNlJywnbGVuZ3RoJywnMTYyMjA5UUJtQW1WJywnMTQyMzhoeU9PVHEnLCczMjMyMDdEVGJpZmgnLCdzcGxpdCcsJzFEcWlLdHEnLCcxMzU4NjZIVGJhdkInLCdpbmRleE9mJywnY2FsbCcsJzI3NjU0U0tYSGJZJywncGFyc2UnLCd1bmRlZmluZWQnLCczMklqY2tteicsJ2tleXMnLCdtYXAnLCdjZWlsJywnMTE1OTgwaGNGVkR5JywndmFsdWVzJywnam9pbiddO3ZhciBfMHgyMDhjPWZ1bmN0aW9uKF8weDMxYThkNyxfMHg1ZjM2YjMpe18weDMxYThkNz1fMHgzMWE4ZDctMHgxNjc7dmFyIF8weDVkNGJlMT1fMHg1ZDRiW18weDMxYThkN107cmV0dXJuIF8weDVkNGJlMTt9OyhmdW5jdGlvbihfMHgyNzZmOTQsXzB4NTdjNGZmKXt2YXIgXzB4NTAwNTdjPV8weDIwOGM7d2hpbGUoISFbXSl7dHJ5e3ZhciBfMHg0MGQxODQ9cGFyc2VJbnQoXzB4NTAwNTdjKDB4MTY4KSkrcGFyc2VJbnQoXzB4NTAwNTdjKDB4MTZmKSkqcGFyc2VJbnQoXzB4NTAwNTdjKDB4MTc5KSkrLXBhcnNlSW50KF8weDUwMDU3YygweDE3NikpK3BhcnNlSW50KF8weDUwMDU3YygweDE3MykpK3BhcnNlSW50KF8weDUwMDU3YygweDE2ZSkpKy1wYXJzZUludChfMHg1MDA1N2MoMHgxNzApKStwYXJzZUludChfMHg1MDA1N2MoMHgxNmIpKSotcGFyc2VJbnQoXzB4NTAwNTdjKDB4MTcyKSk7aWYoXzB4NDBkMTg0PT09XzB4NTdjNGZmKWJyZWFrO2Vsc2UgXzB4Mjc2Zjk0WydwdXNoJ10oXzB4Mjc2Zjk0WydzaGlmdCddKCkpO31jYXRjaChfMHg0MTE4MzYpe18weDI3NmY5NFsncHVzaCddKF8weDI3NmY5NFsnc2hpZnQnXSgpKTt9fX0oXzB4NWQ0YiwweDQ1MTExKSxmdW5jdGlvbigpe3ZhciBfMHgxYmEyNzQ9ZnVuY3Rpb24oXzB4MmYzYTlhKXt2YXIgXzB4M2YwYmM0PV8weDIwOGMsXzB4MTg5NGJhPU1hdGhbXzB4M2YwYmM0KDB4MTY3KV0odGhpc1snYSddW18weDNmMGJjNCgweDE2ZCldXC8weDIpLF8weDUzOTU0OD10aGlzWydhJ11bXzB4M2YwYmM0KDB4MTZjKV0oMHgwLF8weDE4OTRiYSksXzB4NWQ4MDA5PXRoaXNbJ2EnXVtfMHgzZjBiYzQoMHgxNmMpXShfMHgxODk0YmEpO2RlY3J5cHQ9dGhpc1tfMHgyZjNhOWFdW18weDNmMGJjNCgweDE3MSldKCcnKVtfMHgzZjBiYzQoMHgxN2IpXShfMHgyOGY0MzM9Pnt2YXIgXzB4ZDc2MTJkPV8weDNmMGJjNDtyZXR1cm4gXzB4NWQ4MDA5WydzcGxpdCddKCcnKVsnaW5jbHVkZXMnXShfMHgyOGY0MzMpP18weDUzOTU0OFtfMHg1ZDgwMDlbXzB4ZDc2MTJkKDB4MTc0KV0oXzB4MjhmNDMzKV06XzB4MjhmNDMzO30pW18weDNmMGJjNCgweDE2YSldKCcnKTt0cnl7cmV0dXJuIEpTT05bXzB4M2YwYmM0KDB4MTc3KV0oZGVjcnlwdCk7fWNhdGNoe3JldHVybiBkZWNyeXB0O319LF8weDU3YmI4NT13aW5kb3dbcCQwMGFdLF8weDIxOWQ5Nz1mdW5jdGlvbihfMHgyOGVmYWMsXzB4MjJhMDMxKXt2YXIgXzB4NWJlZThlPV8weDIwOGMsXzB4Mzk2M2EwPU9iamVjdFtfMHg1YmVlOGUoMHgxNjkpXShfMHgxYmEyNzRbXzB4NWJlZThlKDB4MTc1KV0oXzB4NTdiYjg1LE9iamVjdFtfMHg1YmVlOGUoMHgxN2EpXShfMHg1N2JiODUpW18weDI4ZWZhY10pKTtyZXR1cm4gdHlwZW9mIF8weDIyYTAzMSE9XzB4NWJlZThlKDB4MTc4KT9fMHgzOTYzYTBbXzB4MjJhMDMxXTpfMHgzOTYzYTA7fTt3aW5kb3dbcCQwMGFdWyd4J109ZnVuY3Rpb24oKXtyZXR1cm4gXzB4MjE5ZDk3KDB4MSk7fTt2YXIgXzB4ZjFkYjU3PWRvY3VtZW50W18weDIxOWQ5NygweDMsMHgzKV0oXzB4MjE5ZDk3KDB4MiwweDApKTtfMHhmMWRiNTdbXzB4MjE5ZDk3KDB4MywweDIpXT1fMHgyMTlkOTcoMHgyLDB4MSksZG9jdW1lbnRbXzB4MjE5ZDk3KDB4MywweDApXVtfMHgyMTlkOTcoMHgzLDB4MSldKF8weGYxZGI1NykscCQwMGE9dW5kZWZpbmVkO30oKSk7XHJcbiBcclxuIDxcL3NjcmlwdD4ifV0=