SHARE
TWEET

Untitled

a guest Oct 18th, 2019 101 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2.  
  3. <panel-form xmlns="http://www.davinti.com.br/vitruvio/form/panel" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.davinti.com.br/vitruvio/form/panel https://bitbucket.org/davinTI/vitruvio-xds/raw/master/vitruvio-panel-form.xsd">
  4.  
  5.     <form formKey="formPainelOrcamentoMensalExplosao" width="100%">
  6.         <name>Demonstração do Resultado do Exercício (DRE)</name>
  7.         <description>DRE Consolidada</description>
  8.         <initScript language="JavaScript">
  9.             <![CDATA[
  10.                                                                                
  11.                 var db = libService.loadScript('db');
  12.                 var vitruvio_db = new db('vitruvio');
  13.                  
  14.                 importClass(Packages.java.util.Calendar);
  15.                
  16.                 var getDataInicial = function() {
  17.                     var c = java.util.Calendar.getInstance();
  18.                     c.setTime(new java.util.Date());
  19.                     c.set(Calendar.YEAR, c.get(java.util.Calendar.YEAR) );
  20.                     c.set(Calendar.DAY_OF_YEAR, 1);
  21.                     var data = c.getTime();
  22.                    
  23.                     return data;
  24.                 }; 
  25.                
  26.                 var getDataFinal = function() {
  27.                     var c = java.util.Calendar.getInstance();
  28.                     c.setTime(new java.util.Date());
  29.                     c.set(Calendar.YEAR, c.get(java.util.Calendar.YEAR) );
  30.                     c.set(Calendar.MONTH, 11);
  31.                     c.set(Calendar.DAY_OF_MONTH, 31);                                                      
  32.                     var data = c.getTime();
  33.                    
  34.                     return data;
  35.                 };
  36.            
  37.                 var getDataInicialFormatada = function() {
  38.                     var c = java.util.Calendar.getInstance();
  39.                     c.setTime(new java.util.Date());
  40.                     c.set(Calendar.YEAR, c.get(java.util.Calendar.YEAR) );
  41.                     c.set(Calendar.DAY_OF_YEAR, 1);
  42.                     var data = c.getTime();
  43.  
  44.                     var formatter = new java.text.SimpleDateFormat("dd/MM/yyyy");
  45.                     return formatter.format(data);
  46.                 }; 
  47.                
  48.                 var getDataFinalFormatada = function() {
  49.                     var c = java.util.Calendar.getInstance();
  50.                     c.setTime(new java.util.Date());
  51.                     c.set(Calendar.YEAR, c.get(java.util.Calendar.YEAR) );
  52.                     c.set(Calendar.MONTH, 11);
  53.                     c.set(Calendar.DAY_OF_MONTH, 31);                                                      
  54.                     var data = c.getTime();
  55.                    
  56.                     var formatter = new java.text.SimpleDateFormat("dd/MM/yyyy");
  57.                     return formatter.format(data);
  58.                 };
  59.                
  60.                 var getDataFormatada = function(data) {
  61.                     var c = java.util.Calendar.getInstance();
  62.                     c.setTime(data);
  63.                     var data = c.getTime();
  64.  
  65.                     var formatter = new java.text.SimpleDateFormat("dd/MM/yyyy");
  66.                     return formatter.format(data);
  67.                 };
  68.  
  69.                 var getDataFormatadaAno = function(data) {
  70.                     var c = java.util.Calendar.getInstance();
  71.                     c.setTime(data);
  72.                     var data = c.getTime();
  73.  
  74.                     var formatter = new java.text.SimpleDateFormat("yyyy");
  75.                     return formatter.format(data);
  76.                 };
  77.                
  78.                 var getDataAno = function() {
  79.                     var c = java.util.Calendar.getInstance();
  80.                     c.setTime(new java.util.Date());
  81.                     c.set(Calendar.YEAR, c.get(java.util.Calendar.YEAR) );                 
  82.                     var data = c.getTime();
  83.                  
  84.                     return data;
  85.                 };
  86.  
  87.                 function run() {
  88.                                                        
  89.                     /*Publica Funcoes*/
  90.                    
  91.                     engine.setGlobalVariable('getDataFormatada', getDataFormatada);
  92.                     engine.setGlobalVariable('getDataFormatadaAno', getDataFormatadaAno);                  
  93.                                        
  94.                     var labelTitulo = engine.getLabel('idTitulo');                 
  95.                     labelTitulo.setValue('<span style="color: #34495E"><b>DRE – DEMONSTRATIVO DE RESULTADO DO EXERCÍCIO - CADASTRO DO ORÇAMENTO&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</b></span>');
  96.  
  97.                     engine.getField('AnoCompetencia').setValue(getDataAno());  
  98.                     engine.getField('filtroAnoCompetencia').setValue(getDataFormatadaAno(getDataAno()));
  99.                     engine.getField('empresa').setValue(0);                
  100.                 }
  101.                
  102.             ]]>
  103.         </initScript>
  104.         <components>
  105.             <VerticalLayout width="100%" spacing="true" margin="false">
  106.                 <TextField type="string" id="filtroDataPagtoIFormatada" visible="false" />
  107.                 <Panel id="pnFiltros" margin="false" width="100%">
  108.                     <VerticalLayout width="100%" margin="false" spacing="true">
  109.                         <HorizontalLayout width="100%" spacing="true">
  110.                             <ImageWidget id="img1" width="201px" height="80px" align="TOP_LEFT">
  111.                                 <image>
  112.                                     <base64 extension="png">
  113.                                         <![CDATA[
  114.                                             ,iVBORw0KGgoAAAANSUhEUgAAAWkAAACQCAYAAADKkZorAAAKsGlDQ1BEaXNwbGF5AABIx62Wd1DT2RbH7++X3iAQupTQm/QWQCChhyK92ghJgFBCTAgqdmVxBdeCiAgoK7AgouBaAFkLIoqFRcCCfYMsKuq6WLCh8n7IEnxv5v3xZt7JnHs/c+bec8/55d6ZLwDkPzkiUSZMBSBLmCOODPCmxyck0nGPABqQgSKwARQOVyJihYeHAMRm5u8MAuDdrakRgOtWU7nA/2ZKPL6Ei6QJRziZJ+FmIXwc8R6uSJwDAGodEjdcliOa4lqEVcRIgQi3TXHqNPdMcfI0y76tiY70QfgtAHgyhyNOBUgziNFzualIHjIdYVshTyBEeOpcT24ah4fwdoTnZmVlT/EphM2Sv8uT+m85k+U5OZxUOU/38s3wvgKJKJOzAvy/LStTOnOGIeLkNHFgJDJrTH23jOxgOQuT54fNsID3bf03TpMGxswwV+KTOMM8jm+wfG/m/JAZThH4s+V5ctjRMyzOjpTn50v8omaYI549S5oRw5Kfy2fLc+alRcfNcK4gdv4MSzKigmfX+MjjYmmkvOYUsb+8xyzJd30J2PL1OWnRgfIeObO18SXx8hp4fF8/eVwYI18jyvGW5xdlhsvX8zMD5HFJbpR8bw5y2Wb3hsu/TzonKHyGgS/wAyHIjw5igD1wAHbIGAhCc/jLc6Ya8MkWrRALUtNy6CzkBfHpbCHXei7d3taOAcDUe5z+u9/c/vbOIDX8bCxbHQDGX8i9fDAbS2oB4NgYAFTqbMyUAAANuS9nmVypOHc6hp4aMICIvHMVoAl0kftkBqyQypyBO2AiFQeBMBANEsBiwAVpIAuIwTKwCqwHBaAIbAe7QDmoAjXgADgMjoJWcAqcAxfBVdAHboJ7QAZGwHMwBt6BCQiCcBAFokGakB5kDFlC9hAD8oT8oBAoEkqAkqBUSAhJoVXQRqgIKobKof1QA/QrdBI6B12G+qE70BA0Cr2GPsEomAyrwDqwCWwDM2AWHAxHw4vgVHgpnAfnw1vhMrgaPgS3wOfgq/BNWAY/h8dRAEVCqaH0UVYoBsoHFYZKRKWgxKg1qEJUKaoa1YRqR3WjrqNkqBeoj2gsmoamo63Q7uhAdAyai16KXoPegi5HH0C3oLvQ19FD6DH0VwwFo42xxLhh2Jh4TCpmGaYAU4qpw5zAXMDcxIxg3mGxWDWsKdYFG4hNwKZjV2K3YPdim7Ed2H7sMHYch8Np4ixxHrgwHAeXgyvA7cEdwp3FDeBGcB/wJLwe3h7vj0/EC/Eb8KX4g/gz+AH8E/wEgUowJrgRwgg8wgrCNkItoZ1wjTBCmCAqEU2JHsRoYjpxPbGM2ES8QLxPfEMikQxIrqQIkoC0jlRGOkK6RBoifSQrky3IPuSFZCl5K7me3EG+Q35DoVBMKExKIiWHspXSQDlPeUj5oEBTsFZgK/AU1ipUKLQoDCi8VCQoGiuyFBcr5imWKh5TvKb4gkqgmlB9qBzqGmoF9SR1kDquRFOyUwpTylLaonRQ6bLSU2WcsomynzJPOV+5Rvm88jANRTOk+dC4tI20WtoF2ogKVsVUha2SrlKkclilV2VMVVnVUTVWdblqheppVZkaSs1Eja2WqbZN7ajaLbVP6jrqLHW++mb1JvUB9fcaczSYGnyNQo1mjZsanzTpmn6aGZo7NFs1H2ihtSy0IrSWae3TuqD1Yo7KHPc53DmFc47OuasNa1toR2qv1K7R7tEe19HVCdAR6ezROa/zQldNl6mbrluie0Z3VI+m56kn0CvRO6v3jK5KZ9Ez6WX0LvqYvrZ+oL5Uf79+r/6EgalBjMEGg2aDB4ZEQ4ZhimGJYafhmJGeUajRKqNGo7vGBGOGcZrxbuNu4/cmpiZxJptMWk2emmqYsk3zTBtN75tRzLzMlppVm90wx5ozzDPM95r3WcAWThZpFhUW1yxhS2dLgeVey/65mLmuc4Vzq+cOWpGtWFa5Vo1WQ9Zq1iHWG6xbrV/aGNkk2uyw6bb5autkm2lba3vPTtkuyG6DXbvda3sLe659hf0NB4qDv8NahzaHV46WjnzHfY63nWhOoU6bnDqdvji7OIudm5xHXYxcklwqXQYZKoxwxhbGJVeMq7frWtdTrh/dnN1y3I66/e1u5Z7hftD96TzTefx5tfOGPQw8OB77PWSedM8kz589ZV76Xhyvaq9HTEMmj1nHfMIyZ6WzDrFeett6i71PeL/3cfNZ7dPhi/IN8C307fVT9ovxK/d76G/gn+rf6D8W4BSwMqAjEBMYHLgjcJCtw+ayG9hjQS5Bq4O6gsnBUcHlwY9CLELEIe2hcGhQ6M7Q+/ON5wvnt4aBMHbYzrAH4abhS8N/i8BGhEdURDyOtItcFdkdRYtaEnUw6l20d/S26HsxZjHSmM5YxdiFsQ2x7+N844rjZPE28avjryZoJQgS2hJxibGJdYnjC/wW7FowstBpYcHCW4tMFy1fdHmx1uLMxaeXKC7hLDmWhEmKSzqY9JkTxqnmjCezkyuTx7g+3N3c5zwmr4Q3yvfgF/OfpHikFKc8TfVI3Zk6muaVVpr2QuAjKBe8Sg9Mr0p/nxGWUZ8xmRmX2ZyFz0rKOilUFmYIu7J1s5dn94ssRQUi2VK3pbuWjomDxXUSSLJI0pajggifHqmZ9AfpUK5nbkXuh2Wxy44tV1ouXN6zwmLF5hVP8vzzflmJXsld2blKf9X6VUOrWav3r4HWJK/pXGu4Nn/tyLqAdQfWE9dnrP99g+2G4g1vN8ZtbM/XyV+XP/xDwA+NBQoF4oLBTe6bqn5E/yj4sXezw+Y9m78W8gqvFNkWlRZ93sLdcuUnu5/KfprcmrK1d5vztn3bsduF22/t8NpxoFipOK94eGfozpYSeklhydtdS3ZdLnUsrdpN3C3dLSsLKWvbY7Rn+57P5WnlNyu8K5ortSs3V77fy9s7sI+5r6lKp6qo6tPPgp9v7w/Y31JtUl1ag63JrXlcG1vb/Qvjl4Y6rbqiui/1wnrZgcgDXQ0uDQ0HtQ9ua4QbpY2jhxYe6jvse7ityappf7Nac9ERcER65NmvSb/eOhp8tPMY41jTcePjlSdoJwpboJYVLWOtaa2ytoS2/pNBJzvb3dtP/Gb9W/0p/VMVp1VPbztDPJN/ZvJs3tnxDlHHi3Op54Y7l3TeOx9//kZXRFfvheALly76Xzzfzeo+e8nj0qnLbpdPXmFcab3qfLWlx6nnxO9Ov5/ode5tueZyra3Pta+9f17/mQGvgXPXfa9fvMG+cfXm/Jv9t2Ju3R5cOCi7zbv99E7mnVd3c+9O3Ft3H3O/8AH1QelD7YfVf5j/0Sxzlp0e8h3qeRT16N4wd/j5n5I/P4/kP6Y8Ln2i96Thqf3TU6P+o33PFjwbeS56PvGi4C+lvypfmr08/jfz756x+LGRV+JXk6+3vNF8U//W8W3nePj4w3dZ7ybeF37Q/HDgI+Nj96e4T08mln3GfS77Yv6l/Wvw1/uTWZOTIo6Y800KoBCHU1IAeF0PACUB0Qp9ABAXTOvlf3Q+NKv4/xtPa+pv5gxADROAaES/h3UAUIXMJogrIR4+FWcC2MFB7v+YJMXBfjoXqRWRJqWTk28QnYgzB+DL4OTkROvk5Jc6pNi7AHS8m9bpU0Y9BABT7BPIiuq1Mf78n3r5X4TsCL/WWiDgAAAACXBIWXMAAAsTAAALEwEAmpwYAADFNWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDAgNzkuMTYwNDUxLCAyMDE3LzA1LzA2LTAxOjA4OjIxICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIiB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIiB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDE4LTA3LTI3VDE4OjE1OjIyLTAzOjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDE4LTA3LTI3VDE4OjE1OjIyLTAzOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAxOC0wNy0yN1QxODoxNToyMi0wMzowMCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDphMmEwODAwNC0xMDg4LTRlYTUtODQ0Zi02ODYwY2NjMjJlNWMiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo0Y2I0YzVhNS01MTY0LWQxNGMtYjJmYS1lYjNlMGEyZmY0ZjEiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0OWMyNDA0ZS1iMmYzLTRhMzMtOTdjYS04ZjdhNDMyYmZlZDkiIHBob3Rvc2hvcDpDb2xvck1vZGU9IjMiIHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJEaXNwbGF5IiBkYzpmb3JtYXQ9ImltYWdlL3BuZyI+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNyZWF0ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6NDljMjQwNGUtYjJmMy00YTMzLTk3Y2EtOGY3YTQzMmJmZWQ5IiBzdEV2dDp3aGVuPSIyMDE4LTA3LTI3VDE4OjE1OjIyLTAzOjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgKE1hY2ludG9zaCkiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmEyYTA4MDA0LTEwODgtNGVhNS04NDRmLTY4NjBjY2MyMmU1YyIgc3RFdnQ6d2hlbj0iMjAxOC0wNy0yN1QxODoxNToyMi0wMzowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIENDIChNYWNpbnRvc2gpIiBzdEV2dDpjaGFuZ2VkPSIvIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8cGhvdG9zaG9wOkRvY3VtZW50QW5jZXN0b3JzPiA8cmRmOkJhZz4gPHJkZjpsaT4wMTI5QjZFRTJDOUM5RkUwOEMxMEQ5QkJGRTMxRjRENjwvcmRmOmxpPiA8cmRmOmxpPjA4MDM4MEYyQTAwOUNEMUE5MEI0NzY3ODlCN0NBREY2PC9yZGY6bGk+IDxyZGY6bGk+MDkxODFCMTUzQzgzQ0M1MzgxQThGNTQ0RkE2RkRCNjM8L3JkZjpsaT4gPHJkZjpsaT4xMDMyNDUxMzNFN0E2MUVBMjM3NDM3RThFOTg1NjUyMDwvcmRmOmxpPiA8cmRmOmxpPjJBMDYzODRENjlFNkJCQjAwODA3RkVBMDkyNUIwNkRFPC9yZGY6bGk+IDxyZGY6bGk+MkEwQTgyRjg0ODM3N0RERDcyMEQ1MUIwQUVDNTc1Rjc8L3JkZjpsaT4gPHJkZjpsaT40MjYxMUE1MzA2RDRBNTQ1QjEzODRDNDZDQkNEMDBEOTwvcmRmOmxpPiA8cmRmOmxpPjREQkQ2NjQxQjQ0RUI0Nzc5MjE5Q0FBRTgzNTk3MURBPC9yZGY6bGk+IDxyZGY6bGk+NTI5MkNCNjRERjEzRUI2QkIzQjg1NDlGQTQ5OEM1MUY8L3JkZjpsaT4gPHJkZjpsaT42MEI2QTcyMDVCQzc2OTdCQzNCMjJDQjUyMDlGMTBDRTwvcmRmOmxpPiA8cmRmOmxpPjZBNEU1NzYyQTlCNzQ5MEQwN0U3ODk1RkY5RjAyMEY5PC9yZGY6bGk+IDxyZGY6bGk+NkQ1Njc5NzQ3NUYyMTQ3QTQ2QkU3OURBN0NDRTQ2RkU8L3JkZjpsaT4gPHJkZjpsaT44REMyMTQxOUExRkM5REZERUE1Q0MwRDU1NDYxODE2NjwvcmRmOmxpPiA8cmRmOmxpPjhERTEwODdBRTY1MEM3MDcyMjA3MzY5NUYwODE5RjUyPC9yZGY6bGk+IDxyZGY6bGk+OEUyRjU0N0JFMDg5M0M1MzE4ODMzRjJEN0YyRUVFMjI8L3JkZjpsaT4gPHJkZjpsaT5BNjZEN0NDNUJENzNEQjFDNjBGQzBBNkJGNUVCM0NGNTwvcmRmOmxpPiA8cmRmOmxpPkE3MjFCRTBBREIxRjU2MjExMjk0RTZBMEMzMDE4RDY4PC9yZGY6bGk+IDxyZGY6bGk+QjhFNTBBMzVEQTc5NjIyNkIxNkI4N0ZGNThENjM3NkY8L3JkZjpsaT4gPHJkZjpsaT5COUMzNDg5OTg2ODM2QUY2M0E1OUZBQUVCRjEyOTQ3ODwvcmRmOmxpPiA8cmRmOmxpPkMyNjhCNEZDNDczODE3MjRDRTVCREY1RUIwODk0MDgwPC9yZGY6bGk+IDxyZGY6bGk+Q0E5MDlBQzgxQjgzM0E0OThCNUY2NEM1MzU4Qjc3RTA8L3JkZjpsaT4gPHJkZjpsaT5DQzhBMzFGNkRFNTlFRTIwRERFMTM5REFFOTI3N0RENTwvcmRmOmxpPiA8cmRmOmxpPkNGM0Y3RTdCQTc3RENBOTRBQzUwRTFDRjg1MTQ2Rjc2PC9yZGY6bGk+IDxyZGY6bGk+RDg4M0REQjI2NzUxRTg0MjQyRTU2NjdCNDVCMEJFODc8L3JkZjpsaT4gPHJkZjpsaT5FM0UyMzZFNjI1NTVBQjFGQ0Q5MTM1MDU2QjIzM0JBMDwvcmRmOmxpPiA8cmRmOmxpPkY0MDdCNjhGM0RBMTA3NzM0MjhCMTk1QTA3OERENjNBPC9yZGY6bGk+IDxyZGY6bGk+RjQ5NDczRDUwNEE0NDE3MTRBMzMxNEUxMzAzODUxRkE8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6MDY3MGIyOTMtYzM3ZS0xMWRiLWE1ZWQtYmMyZjM3MDdkMGVjPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjA4M2Q1YTU4LTNkMTYtMTFkYi1iYzY3LThiNjNjZDk4ZTgyODwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDowYzk3YjU1MC0wNDk1LTExZGItOTk5Ni1kNDE2MTM0NWYzYmQ8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6MGNiYWNiYTktMWIzNy0xMWRiLWI1ZGMtZGRkMmYyZWUyMWIxPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjBmNDYxMTcyLWMyOWItMTFkYi1iZjVkLWFiMTI3OTNhNjFhMzwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDoxMTBiMGNmNy04NGE1LTExZGItYTViZC05MmNhNDM0MmQzNTg8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6MTJkZmZiNzctM2QxMS0xMWRiLWJjNjctOGI2M2NkOThlODI4PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjE2ZjcwNmMzLWQ2MjQtMTFkZC1hM2IwLWQ3YTllOTJlMTUyNTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDoxODRhZjkzYi0zOTU0LTExZGMtYjE5YS1kNWFjNWZhODE3ZTg8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6MTg0YWY5NDAtMzk1NC0xMWRjLWIxOWEtZDVhYzVmYTgxN2U4PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjE4N2VlMmE0LTQ2YjAtMTFkYi05OGZhLWZlODhiMmJjZTFhYTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDoxYTBiYThjYi04NzY4LWZkNDMtYmY4Yi0wN2U5Y2ZlNTE3ZTI8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6MWE4ZTE1ZDMtYzRjNy0xMWRhLTgxZDUtYzQyYzRiYjdlY2VjPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjFlY2I2ZTgxLTgwYWUtMTFkYi05ODY0LWM0YzMyOTFiMTE4ZDwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDoyMDkxMDAxOS0xYjMyLTExZGItYjVkYy1kZGQyZjJlZTIxYjE8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6MjJhMzVjNjQtZDc5Ny0xMWRiLTgyODktYWEzZGEyYTM2ZDIxPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjJhOGRmMjRlLTRkYzMtMTFkYi04NDU0LWI2NWFhNGIyNzA0MTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDoyYWE5YzcwYS1mMmFlLTExZGItOWRmMy1iYjNiZjMwNjA5OTY8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6MmFlODU0ODUtYjIwNC0xMWRiLTliMDctYzQyMjlhMDNhZDliPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjJiZjg4MzgzLTUwMGYtMTFkYi04ZmM2LWEyZmE0YzRlZjEyNDwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDoyYzA1MDc4MC02NDI1LTExZGItOGU3Zi1mMDU2NmNhZTNjNDk8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6MmNmZDg0MzEtM2QwOC0xMWRiLWJjNjctOGI2M2NkOThlODI4PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjJlYTY1ZmJhLTRiOGUtMTFkYi05MjYwLWJiOTYyZTBmY2NkNjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDozMDYyMTgwYi00ZWUxLTExZTYtOTRlOC04N2Y5NzNlYzZiM2M8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6MzFjZmZlYTgtMmQ5My0xMWRiLTkyNDAtZmNjMGQ4ZTBlMjgzPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjMzZWYzNDFhLWYxMWYtMTFkYi05ODE4LTlkYWI3OTEwM2ViMjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDozYTFjZTA2NC0zY2NmLTExZGEtYjYzYS04ZmRlNDk4YjdkODU8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6M2I2Mjc1OWEtYzhmZi0xMWRhLTgwM2UtODRjNmU2NDk4ZmZjPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjNjNmM0NmUzLTA0YmEtMTFkYi05OTk2LWQ0MTYxMzQ1ZjNiZDwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDozYzdlYTdhMC00OGRjLTExZGItOTQ3Ni04M2E5ZWEwMmY5YjI8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6M2RkY2UyODUtM2QxMC0xMWRiLWJjNjctOGI2M2NkOThlODI4PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjNlMzQ0NmZhLWVlODEtMTFkYS04ZGE5LWQwNGQxYzlhN2MwYzwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDozZTM0NDZmZi1lZTgxLTExZGEtOGRhOS1kMDRkMWM5YTdjMGM8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6M2UzNDQ3MDQtZWU4MS0xMWRhLThkYTktZDA0ZDFjOWE3YzBjPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjNlOGY1NzVmLWQ3MjQtMTFkYi05YTAzLWMzOTAzMDYzMjcxZDwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDozZmE0ODQ3ZS1mMzRhLTExZGItYTI5Yi04NGViMzFlYjI1ZmI8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6NDI1OTk4MjItOGQzMi04YzQzLWEwYjQtMjc0ZmI1ZDA3MDgwPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjQ2MDAwMDUwLTNlY2ItMTFkYi05MWRiLWZjNjYxYWJjMDVhZDwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo0NjAwMDA1MS0zZWNiLTExZGItOTFkYi1mYzY2MWFiYzA1YWQ8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6NTZjMjBlNmEtMmJlNS0xMWRiLThjNGUtZjliYjBjMzlmOTVhPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjU4NWFiYWE0LTNkMWMtMTFkYi1iYzY3LThiNjNjZDk4ZTgyODwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo1OWQzNzkxMy01YjMxLTExZGUtOWM0Ni1mMWZjZDgyN2M0NWU8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6NWE4Mzk4YmEtN2I3MS0xMWRiLTlhMGMtYTIxNjFkM2ZlOWU1PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjVhOTcxOWE1LTQzNzUtMTFkYS1hMjIwLWUyYzZmODBlZmUyMDwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo2MDU1OTAzNS1kNzE4LTExZGItOWEwMy1jMzkwMzA2MzI3MWQ8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6NjIxMDliNDMtM2ViYS0xMWRiLTkxZGItZmM2NjFhYmMwNWFkPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjYyMjIyYTQ5LWMwOTctMTFkYi04ZGFhLWU4M2Y0MTVhNjMwYzwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo2MjUxM2I1NC0xNjc5LTExZGItYjlhZi1kYjQ3YjA5MTUyYWE8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6Njk3NTcyZjUtODBhZS0xMWRiLTk4NjQtYzRjMzI5MWIxMThkPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjZhNDliMjBiLTY0MjUtMTFkYi04ZTdmLWYwNTY2Y2FlM2M0OTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo2ZGRhNTBkZS0yMGNlLTExZGItOWZjYy1kYTJmNDExOGMwY2I8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6NmRlZTg1MGMtNDczNC0xMWRiLTgxMjktYzQ1OGRlYTk3ZDg0PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjZlZjllMmUzLWU5ZjItMTFkYy1hZDgzLThlNTkzMjJjNzVkZjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo2ZjZkYTFlZS0zZDE1LTExZGItYmM2Ny04YjYzY2Q5OGU4Mjg8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6NzAyMWUyMWItYWIyMy02MjRkLWI4YjMtZDkyNTRhMmVlOTQ1PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjcxYjFkZTQzLWMzN2ItMTFkYi1hNWVkLWJjMmYzNzA3ZDBlYzwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo3MmVjZDU2Ny1lZWMzLTExZGItODhlZC1mMzI0ZjRhNWFjNDg8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6NzMyOWEwNmUtZTU2Yy0xMWRhLTgwOWEtODgyZjk2MTkyYWEwPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjc3YmMzMWZiLTRlYzYtMTFkYi1hMDQxLTgzYTVkYjFhYzFlNDwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo3N2VhNDczNy0zY2UyLTExZGEtYWMxOS1jNzhiMWFjOGQ2ODI8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6NzgzMzJiYzYtNDhkYi0xMWRiLTk0NzYtODNhOWVhMDJmOWIyPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjc5YzJhMDk3LTUzZWEtMTFkYi1hYjdkLWNmYjA2YmFkOGNlYjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo3YTUwYTI4MS0zZDEwLTExZGItYmM2Ny04YjYzY2Q5OGU4Mjg8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6N2NiMDI2YzMtZTY0Mi0xMWRhLThkMGEtOGIwZTEwMjNjZWQxPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjdkOGQ0OTU2LTFmNGUtMTFkYy1iNDE2LTkzMzRjYjUzZDdjZTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo4MGYwNTk0MC0zZWFjLTExZGItOTFkYi1mYzY2MWFiYzA1YWQ8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ODMzOGFiZjItZjRjZS0xMWRiLTkxZDktZTU5ZjMxNTcwNmRiPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjg1YThmNjBlLTNkMGMtMTFkYi1iYzY3LThiNjNjZDk4ZTgyODwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo4NjQwNDNkNy0xY2ViLTExZGItOGVjZC1hMTdmN2ZjODAzNTc8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ODY0MDQzZGMtMWNlYi0xMWRiLThlY2QtYTE3ZjdmYzgwMzU3PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjhlZGJiZDEwLWQ4OGYtMTFkYi1iMzdmLWM1NzQyODk1OTFjNjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo5MDM2OTVlYS1lZTcxLTExZGEtOGRhOS1kMDRkMWM5YTdjMGM8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6OTE1MjA2MTEtYjU4ZS0xMWRhLWFjZjQtZmFiZjE2MDk2MmEyPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjk0NDljZWIwLTVlNTYtMTFkYi1hZWUwLWZkYmQ1ZTIyMDE2YTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo5NDYzZmExNy1lYjA4LTExZGYtYmM0Mi1lY2I5NDE0NDFmZmE8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6OTYxZTY0MmItNDZiOC0xMWRiLTk4ZmEtZmU4OGIyYmNlMWFhPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjk2M2EwN2VjLWMzNzktMTFkYi1hNWVkLWJjMmYzNzA3ZDBlYzwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo5NjhiNWQ2MS1jMDk1LTExZGItYjBjOS1lZGUzYzY5YjU0OTQ8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6OTY4YjVkNjYtYzA5NS0xMWRiLWIwYzktZWRlM2M2OWI1NDk0PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjk3MDdmOTIyLWVkMGItMTFkYS1iNTExLWQ2OGMxZjEyZWNlNjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDo5Nzg3MDBkNC1lZTgxLTExZGEtOGRhOS1kMDRkMWM5YTdjMGM8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6OWI0MTM3MzMtMWRjOC0xMWRiLWI4NzgtZWU0NjRhNGNiMTI2PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjllYmU4YjU4LWQ3OTUtMTFkYi04Mjg5LWFhM2RhMmEzNmQyMTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDphMDJmMGFjOC1kNzE3LTExZGItOWEwMy1jMzkwMzA2MzI3MWQ8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6YTA2M2VlM2QtNDhkZC0xMWRiLTk0NzYtODNhOWVhMDJmOWIyPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmExMGRiNGFkLWVlYzMtMTFkYi04OGVkLWYzMjRmNGE1YWM0ODwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDphMjExNTFiYS01NWRiLTExZGEtYWIxZi05OGMwOTc5NmRhN2M8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6YTIxNDYyOGEtY2MyOS0xMWQ4LWE0ZjYtYmEwYTA5NThiYjdjPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmE5NzIxY2E2LTNkMTMtMTFkYi1iYzY3LThiNjNjZDk4ZTgyODwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDphOTcyMWNhNy0zZDEzLTExZGItYmM2Ny04YjYzY2Q5OGU4Mjg8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6YTljMmU4MDAtZWU3Mi0xMWRhLThkYTktZDA0ZDFjOWE3YzBjPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmFkODEyOWRlLTUzZWEtMTFkYi1hYjdkLWNmYjA2YmFkOGNlYjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDphZTRkMGRkNi0zOTU0LTExZGMtYjE5YS1kNWFjNWZhODE3ZTg8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6YWYzZGQwYzktNDZiMS0xMWRiLTk4ZmEtZmU4OGIyYmNlMWFhPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmIwMGRhNDM5LTZmOTYtMTFkYS1hMTgyLWNkYTRkNTk0MzEzNDwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpiMDgwYTRhYi1mZDdjLTExZGEtOWE2Ny1iNGNkZmJjZGRjZjI8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6YjFhMDAyNDMtY2YyNy0xMWRjLWFkZGMtYWY3ZjQ4MjRiNzM0PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmIyMTI4NWVmLWM4ZmYtMTFkYS04MDNlLTg0YzZlNjQ5OGZmYzwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpiNGU2NGI4Mi02NDIyLTExZGItOGU3Zi1mMDU2NmNhZTNjNDk8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6YjU2NTAwMWUtZDg4ZS0xMWRiLWIzN2YtYzU3NDI4OTU5MWM2PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmI2ZWQ4MTAyLWQ4OTEtMTFkYi1iMzdmLWM1NzQyODk1OTFjNjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpiNzI1NmJiMi0zNGYzLTExZGItODBlMi04OGQ1MjdmZTJlMmE8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6YjczMjRhMzUtNzc5Yi05NTQ3LWE0ODUtYjliMjdmNzJiNWQzPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmI3NTVmZjQ5LTVlMmMtMTFkYi05NjlkLTg2ZDc2YjRlZmY3ZjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpiNzc4NjdjMy00YmNjLTdlNDYtYWFmYy03YzlkMTEwNGEzYTc8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6Yjk2NGQ4YTEtNDIxZi0xMWRiLWI0MTQtOTlhYzE2OWJjMmM1PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmJhMTIwNDllLTQ4ZGEtMTFkYi05NDc2LTgzYTllYTAyZjliMjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpiYjg3ODJhZi1kNzE4LTExZGItOWEwMy1jMzkwMzA2MzI3MWQ8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6YmQ5NTQ5NzAtNWUyYi0xMWRiLTk2OWQtODZkNzZiNGVmZjdmPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmMwZTExNGE5LWNkYzUtMTFkYy05Yzc4LWM2NWZlNmU2NjhhMDwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpjMjQ4NjY1Ni01ZDhmLTExZGItYjYzNC1kM2Y2NjlmYjE1YmE8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6YzViODkwZjEtNWUyYS0xMWRiLTk2OWQtODZkNzZiNGVmZjdmPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmM2MjIwZTE5LWMwOTQtMTFkYi04NzA0LWZjOWNhNWY4MGIwMTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpjN2VlZDAyNC04OTMxLTExZGItYjI2Ny05M2IwOGNhYzIwZTM8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6YzkwNGRkNmUtODNkNC0xMWRiLWJlNTMtYzYxMDM5YjVmNTFjPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmNlZGYwMzkyLTA4MTUtMTFlNy04MWQ5LTg5MWU0MGNiOWM2NDwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpkMTM5ZjIxNS1kODkwLTExZGItYjM3Zi1jNTc0Mjg5NTkxYzY8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZDI0OWVhMmItZDc5NS0xMWRiLTgyODktYWEzZGEyYTM2ZDIxPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmQzNmU5NjQ3LTVlNTYtMTFkYi1hZWUwLWZkYmQ1ZTIyMDE2YTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpkNDBhMWE0NS0zZDFhLTExZGItYmM2Ny04YjYzY2Q5OGU4Mjg8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZDc0YzAxMWEtZTU3MC0xMWRhLTgwOWEtODgyZjk2MTkyYWEwPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmQ5NDkzYzg4LTFkZDQtMTFkYy04ODFkLWQxZGY1MmI3ODkzZDwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpkYTdlMmZhYS1lZTdlLTExZGEtOGRhOS1kMDRkMWM5YTdjMGM8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZGE5YzA5Y2MtNzViMy0xMWU2LTg3NWItZDFjZWY3ZGQzZjBjPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmRiZTU2NWY5LWMwOTMtMTFkYi04NzA0LWZjOWNhNWY4MGIwMTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpkYzM4Y2M4Ny0wMzJhLTExZGItYmY0Zi1kNzhmNjg3OTU1ZTE8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZGMzOGNjOGMtMDMyYS0xMWRiLWJmNGYtZDc4ZjY4Nzk1NWUxPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmRjNjkxZGQ3LTQ2YjEtMTFkYi05OGZhLWZlODhiMmJjZTFhYTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDplMGFjMDA0NS0wZmY3LTExZTctOWUzMC1lMjQyNGI5MjUyMDA8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZTEyMTYzZWEtM2I5NS0xMWRjLWI2MGMtZWY3NDAwODA3ZTc0PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmUxYjc5N2VhLWVlNzMtMTFkYS04ZGE5LWQwNGQxYzlhN2MwYzwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDplNDk4N2Y1OS02ZmUxLTExZGEtODY1Yy1hNDQ3ZGNhODFiNDI8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZTU3NThkNzMtY2RiZi0xMWRjLWI2OWQtYTViNTRjY2EzYWNmPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmU1NzU4ZDc0LWNkYmYtMTFkYy1iNjlkLWE1YjU0Y2NhM2FjZjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDplNjU3NjRjYS1kODkxLTExZGItYjM3Zi1jNTc0Mjg5NTkxYzY8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZThiOTBkMzQtMzk1NC0xMWRjLWIxOWEtZDVhYzVmYTgxN2U4PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmU4YjkwZDM5LTM5NTQtMTFkYy1iMTlhLWQ1YWM1ZmE4MTdlODwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDplYmM5OGZlNC0wMzFkLTExZGMtYWJjNC1iMGJhYzZmYmM5NWU8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZWJjOThmZWEtMDMxZC0xMWRjLWFiYzQtYjBiYWM2ZmJjOTVlPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmVjMjEzZjc1LTRkOTgtMTFkYi04ODczLWQxOWE0NjA4ZmZkNzwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDplY2VmYmQ4OC1jODQ3LTExZGEtOWQ5OS1hMDIyNzIxZTEzOGU8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZWUzNjQwYTYtYjEzYS0xMWRiLTk3OTItYWE3YjM0ODYzODk3PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmYwMmI0ODc2LTVkOGYtMTFkYi1iNjM0LWQzZjY2OWZiMTViYTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpmMDc4N2VhMS00YWM3LTExZGItYmRmNy04OGFmOGE2ZTY5N2Q8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZjA3OTkzODktNDM2Zi0xMWRhLWEyMjAtZTJjNmY4MGVmZTIwPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmYwOTlmNGU1LTNkMDYtMTFkYi1iYzY3LThiNjNjZDk4ZTgyODwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpmMWM0MDhlMy1kNzk2LTExZGItODI4OS1hYTNkYTJhMzZkMjE8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZjIxNTc3ZjQtZmNmNS0xMWRhLWI4NDAtZjVlNGRkNWQ0NjAzPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmYzYmI2MmQwLTQyMWYtMTFkYi1iNDE0LTk5YWMxNjliYzJjNTwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpmNDI4ZDdlNy1kNjc0LTExZGEtYjJkYy04ZmNhOGM0YTM5ZjE8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZjRlMzgzOTMtM2QxNi0xMWRiLWJjNjctOGI2M2NkOThlODI4PC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmY1ODZlYjQxLTM5NTgtMTFkYy1hNzUxLWIwODcyMzczZGMzYjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpmNjEzYTA5OS1lNTZiLTExZGEtODA5YS04ODJmOTYxOTJhYTA8L3JkZjpsaT4gPHJkZjpsaT5hZG9iZTpkb2NpZDpwaG90b3Nob3A6ZjYxM2EwOWUtZTU2Yi0xMWRhLTgwOWEtODgyZjk2MTkyYWEwPC9yZGY6bGk+IDxyZGY6bGk+YWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOmY3YjZiY2YwLTNiN2QtMTFkYS04M2EwLWRlNDk1YTJkYzZlODwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDpmZmYzODllMC0zZDFhLTExZGItYmM2Ny04YjYzY2Q5OGU4Mjg8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjAxMEFCODI0ODcxNERFMTE4NUE3OEJGQjU3NzAzNjEzPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDowMjhDMkVCQzBFRTlERjExOTUwQjg4N0U0NUVBQUZGNzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MDQ5MTIyRUU5NzM5REUxMUE2QkZGODk0QkNEQTBGNzI8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjA3MTNENDM3RTI3RERFMTFBNzE3Q0ZFRDIzNUVCRjE4PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDowN0IyMkI0MURGNTFERjExOTIzREY4NkIyMDY3MTIzQjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MDdFOTc0NzgxRDcwREMxMUI1QTFFRjdCNzg4MjFGMEE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjA4NzRDNTZDNDFGN0RGMTE4MkFERUNBQzQ1RjQxNEFEPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDowODc5NjJEMjVGODhERjExQkVBQURGQUU0MkIyQUYxMjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MDhENzMwMkZENDMxREYxMThDQkZEQkNENEIxODU2OUI8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjA5N0IyRDNBRDAyM0UwMTE4N0Q1RUZEMDkwNzExQUEyPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDowQTE4NTM5QUM1MjNFMDExODdENUVGRDA5MDcxMUFBMjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MEI4MkIxQTE2M0I0REYxMTlEOUZBNjg2Qjk2MkExNDQ8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjBCOUEzRDZCQURBM0RFMTE5OEVBRDQzMTBBMEI5N0VGPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDowQkNDQzE2QzVGMzBFMDExOEU2NERBQjRFNzc2RjVGMjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MENGQTYwQzhCQ0RBREYxMTg4RTlFQzVEQ0JDMkU2QUU8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjBFN0FGNzA1QjJFNURFMTE4ODNFRTRFQTlGNTUyRkQ5PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDoxMDMyQTQxNDJFMDVERjExQTlBREJBQzU3RTc4QjUzOTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MTEwNTZDNUFGNTVBRTAxMThERTk4MjEzQjZGQzhBQzE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjEzMERDRjcyQkJBNkREMTE5QTI2OTgyQjBCM0EwNTE2PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDoxNDJGRkFBQjQ3OUJERjExQURGM0IxODY4MjAzQUQyNTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MTQ1MENGQTE2MEY4REQxMTkyQjJDNEM2OTJENDFEQUM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjE1RDhCNDU1MTQwOERGMTFBNkYwQTE0RjZEMDRFODc3PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDoxNjRDNzA4RTk2RTBEQzExOTA5RkZBRkVGOTQ4OUIzRjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MTY5MDk3NzQ0RDZFREYxMThDNTlGMzY3QjA2NkNEMDI8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjE2RTdCM0JDMUZDOERGMTFCM0YzOEI4NkYzOEVDN0Y3PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDoxNzFDRDAyNUY3MERFMDExODkyNkYzREI2MzlGNjc3ODwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MTcyQjJCNDdDQ0VDREYxMTk3QjNCMjhENDA4RUYxQzk8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjFBOUFEOTg5QjUyRUUwMTFBREIwRUVBQzJBNkQ5MzY5PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDoxQkFBODlCN0Y5NTFERjExOUZCNEExQUE3OTk0NTJFNjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MUJCOTk3NEJFRjg2REMxMUExMUFCMDM3QTc4QzcxQjQ8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjFDMUFENTIyN0QwN0UwMTE4MURDQjFDMzdENkZFRTdBPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDoxQzY4MTgyQTQ4NzVERTExQTk5MkZEMkRDNkU5ODMwRDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MUNCMDMxNTRENjRCREYxMTlERTFENDdGOUREQUM0MTU8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjFDQjFGOEYxODkzMEUwMTE4RTY0REFCNEU3NzZGNUYyPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDoxRjRCOUJEMDQ1MDhFMDExODI1MkJBMDVCRTg5ODE0OTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MUY1QUYzQjY3MjI5REYxMTlGRkFCMjZFMjQwQzcxQkI8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjFkZDA3OWM2LWQ0NzYtMTFkYS05YTE5LTAwMDM5MzZmN2MzNjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MjA4QzQ0NTA3RTEzREYxMTg4MkZEMzU1MDQwODUzODM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjIyOEMzRUUyMTBCMkRGMTFBRDM3QkUwMDc3M0UxMERBPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDoyNDY5MkE3MkU5ODZEQzExQTExQUIwMzdBNzhDNzFCNDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MjU0MDlGRkE4OUEzREUxMTk4RUFENDMxMEEwQjk3RUY8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjI2MTg1QUQxQ0ZCN0REMTFBMjIzQkYwQzg0OTBBMkMzPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDoyNjI5RTAwRTM2RkJEQzExQjI4RkY1MEIwQTdBQkIxMDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MjZGMzUxQ0UxMDA5RTAxMTkzRDlGOTcxOThBNDBDREM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjI3RDI2MUU0RUYyQUUwMTFBMzgwQTUzNzMzODVDMzBGPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDoyODUwNDVDOUZCM0NERjExOEY3MEJFQjdCOTZBM0I3MDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MkQ1MUVEN0YzOTEwREYxMUE2OURBQkUxNThCMjE4QjY8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjJEODExRUUyNzk4M0RFMTE4QzYzODQzQUREN0I1NDM2PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDoyREJERDFCRkNFMURERjExOUFCRUMxNDkzMzFEMzE0RDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MkRCRjc0NTAzQzAxREUxMTlFREJBMTQ3NzkwNDBFMUE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjJGODJCREVDMDBBQURGMTE5MjYyQTk1QjQzMEIyMTlBPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDoyRjhCMTA0OEQyMTRERTExOUY3Q0Q3NDRBRkU1MzlGRTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MmNlYTdhNDgtYThlNi00Yjk0LTk1YmItYmI4ZTQ3MDkzNzYzPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDozMDc0REM0MEE3RTRERDExODU2RkMzNUVFRTcwMUY1NzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MzJBRDkwMUMxNTQwREYxMUJBMjJFQjgzOTBFNDI3RkE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjMzOTExREIyMjQwOERGMTFBNkYwQTE0RjZEMDRFODc3PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDozNDlGMjJFNkZGQTlERjExOTI2MkE5NUI0MzBCMjE5QTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MzRDMEYyMDg3MzU1REYxMUFDOTNGRUFERkU4RTBBMkI8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjM2NUNGMTU3QkIyRUUwMTFBREIwRUVBQzJBNkQ5MzY5PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDozNjlFNzI3RkIwNEZERTExOTc3N0EyNDFFMTEzMkI0MzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6MzcwQzlDM0YzRjE4RTAxMTlGMkZENEMzODExMUFGNjU8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjM4MjIyNzQxOTY1MERFMTE4MjhFQjc5QjdGRjg3QjQ2PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDozODk4MzdiNC0yNmJkLTRjNzUtODlmMC0yYjZjNWQ2NjBjYjE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjM4QUQwMUVEQTI5QURGMTE5NjA5QjBGNkEyNzZCQ0E2PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDozOEVDQTI5MkJCMjRFMDExOUM3Q0JFODczNjEwOEFDQTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6M0E0Njc3ODE1RTI5REYxMUEwQjA4N0RGODk3RjVDNTY8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjNCMjgwQTdDM0RFOERGMTE5OEFCQTZGMjNGOTQyNTY0PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDozQzBDOEYyMzUzRjREQzExQTg5QjlFNkVFOUUzRDRBRDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6M0M5RTcyQzZGMkU0REUxMTgzMjdDQzU0Rjg5RDlBQjM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjNFRjlBODAyRDhENkRGMTFCMEExRjc0OTBCMDhEQTUyPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDozRjAzMDEwNTZGNENERjExQjZFOThGM0JGMzUzMjdCQTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6M0YyNTEwQzYxN0E3REYxMUE5QTFERENGMzI5QzE0NUI8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjNGNDJBRjU3NjZGMkRGMTFCNTBDQzRFRjNEREIwMDM2PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDozRjU2RTI4NkVDODZEQzExQTExQUIwMzdBNzhDNzFCNDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6M0ZBQUIzMURDN0YzREUxMUJGQjNCQjYxQUUxQTE5OEI8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjQwNkEwM0ZEMDFFOERGMTFBNUJGRDZCMTg4QTJCNTQ0PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo0MUEyNDJDNTU0QzFERDExODMzNEYwMjUyMjBCOEExRDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NDM2NzBENkQ4RjlBREYxMUFCRjlCN0NDQzZBMTYxNjY8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjQ1N0QwMjk1NTA1NURGMTE4QjU5RDk1OUQ5RkNENTBCPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo0NTkzODZFRjE5QkRERjExQjZEQkZDQTAzNDZCMDQ0NDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NDdEMjBDODcxNDMxRTAxMThCRUM4NTUwM0Y1NzI5MEU8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjQ4OEU3RDIxNjQxN0RGMTFBQjMwOTZEQjU5QkU4Mjc4PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo0QkQ2NEUzRDU5MUFERjExOUE0NDgxNkU0MjZEMTRDQzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NEMzM0IxQzZFQTBERTAxMTg5MjZGM0RCNjM5RjY3Nzg8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjRDQkUyREUwMzEzQ0RGMTFBREZGODYzMzAwOTg2QUQyPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo0RDAwOTdGMkRDRThERTExOUQzN0Q3MjE2MDA1Q0VCRjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NEQxRkJGQUU0RTBGRTAxMTk4MzRFQzgxRDFGNEIzQTE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjRENDc1MzBEQkZCMURFMTE4MzhDQjc5QkIwMjlDNTMzPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo0RTYxMDY3NDY3MDhFMDExQTZGMkNFNUJDNUFGMDY2MzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NEU2QTdBMUM1QUZDREQxMTg0NDFBQjkyOTYyNkVCQ0Y8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjRFQjlGOTQxRkMyQUUwMTFBNzc1REI5NDE0MTY1N0MxPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo0RUU1MzU5MUE0RkNERjExOUVBOTk2REM3QzE3QTc3NjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NTA5NzBCOTFENzY4MTFEQUIwMTA5MUJDNEZFMjg2MDg8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjUyNEM1RkFGODYxNERFMTE4NUE3OEJGQjU3NzAzNjEzPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo1MjYxMTBCQzEwNzBEQzExQTk3MUUwQjAyNENCOENFNDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NTI2MzNFQTgwRTQ3REUxMUI2Q0E4MTczRkVGMzk3ODk8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjUyRTU2N0M1QkFBNkREMTE5QTI2OTgyQjBCM0EwNTE2PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo1M0EyRDc5RDBDOTdERTExODQ5MTlDOEQ1NkU4Mjk2MDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NTQxMDA1OTZDRjUzREYxMTgxMjlEREVCRDEzQUZGOEE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjU1OUM3NkE4MEExNkREMTE4OUYyQTI3Mzk1REFCQzZBPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo1NjVDMzBENDNBMDhERjExQTYxREIyMjdFRERGNTlGODwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NTcwQThFOEU4NjEzRTAxMTg4MjJFQzlCQUM4QjQzNjk8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjU5MTg0QjFDRTdGN0RGMTE5NjY0OTE5NzI5MTUwNEQ5PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo1OUQ3RDUyNjNGMDVERjExQTlBREJBQzU3RTc4QjUzOTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NTlGOUY5RUYwOEMwREYxMThEQTVCNTFDNTMyOEQwNzE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjVBNTlEODI1QzQ4NEREMTFBREE2RTNEQkU2MDk2MkZDPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo1QzNFRkE4RDA5MjZERjExOTYwM0NFNzc1QjE4NERDQzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NUUyQkU5ODc3RTA3RTAxMTgxRENCMUMzN0Q2RkVFN0E8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjVFODUzNDVGM0VERkRFMTE5NTJFOTcwRDdGQUE1NEE2PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo2N2QyNmJmZS0xZTE4LTRhNTEtYmViMy0wZmYzMWQwMzdiOWE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjY4RTZFQTMzODJFMkRGMTFBNTA4Q0E5ODU0OEY5RDEyPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo2OTY0QUJFOUM1MThFMDExODM3NkREMzM0MzVEQ0IwNTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NjlBNzdDOTc4NTY5REYxMUI5NjVDNzFFRkNCMjgzQTA8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjZBRUQ3MTY3QUQxQ0RGMTE4QkVCQkI4QzU0REM0QTIyPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo2QjFBMUJGQjc2OUNERTExQTdCODlEM0M3RUEwNTE1NzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NkJENkNBRkRDM0U3REMxMThEMTdDQ0M4NzQyRTJFNzg8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjZDMUNFRTk5RkYwQ0RFMTE4QjYwODA4Njg2RDFDREE2PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo2QzcwN0VCNTRDNEVERjExOUJGNjlGNUU3Q0MzODVENDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NkQ4OTVBRkM0MTEzRTAxMTg4MjJFQzlCQUM4QjQzNjk8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjZEREVGNzdDODJDRERGMTE5MzUxRkRENjI2N0Y1OTM5PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo2RTA5ODhBNzA2MzFERTExQTRDQkE0NzY4QUQ1Q0YzNzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6NzA4RENDN0YwRDJFREYxMTg2NTFFQzQ2QjQ0OUJFOTU8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjcxMDg1ODlDODQ4NERGMTFCOTM5RTZBMUI2M0VENDM2PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo3ODVFREVFOTg2MTRERTExODVBNzhCRkI1NzcwMzYxMzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6Nzg5QzE4NjQwRkNBREUxMUE5RkZDNDA4QzVGNzVDRjc8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjc5MTc5NjkzMEQ5MURGMTFCQjk1RTFFRjY1NDk4OTA0PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo3QzA0MDBCOUMyRTdEQzExOEQxN0NDQzg3NDJFMkU3ODwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6N0MyQ0VBRkVFNkFFREYxMUJBRTZFNzJDQkI3MTE1OTc8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjdEODJBNEQ5RjUzOERGMTE4OUFGQ0QyNzI5NDY2OTg1PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo3RTU3OEYyNDYyQzFERDExODMzNEYwMjUyMjBCOEExRDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6ODAyNzJDRkE0MjU1REUxMUE5QUVCNDExNzZCODVBNjY8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjgwNjAyOTcwMTU3MERDMTFCNUExRUY3Qjc4ODIxRjBBPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo4MTA5NDRERDE1MjZERjExOTYwM0NFNzc1QjE4NERDQzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6ODE4QjU5MTE3OENEREYxMTkzNTFGREQ2MjY3RjU5Mzk8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjgxQ0ZFQjc1QzYyM0UwMTE4N0Q1RUZEMDkwNzExQUEyPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo4M0MzMjVBM0EzMjFERjExOTVGN0Q3NzVERTU1Qjg2QjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6ODVFQ0REMzgwQUM1REQxMTkwMzY5RERFMUM4N0Y3NkM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjg2QTcxNTFDNTRFRURGMTFCMEVEQTkxMzFBRkJBQkQyPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo4NzUxNDZDNzkzRURERTExODNDQ0MwNzQ3OEY5NDMxOTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6ODg2M0FDMjg4RTkwREQxMThBMUZCNTVGOUU3RDZDM0Y8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjg4NjgyRUNGNUZERkRFMTFCMzY2RDlFRjc0REU0QjNFPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo4OEY4RDY4NURFNDZERDExQTNEQ0QwQTU5RjI5RTNDNDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6ODk2QzBGQ0JEQTMyREYxMUE0NzNCMjFDNDlEMTc1N0U8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjg5NzFGNDNDRUI5OUREMTE5MzI3RjQ2MTNFMzAzQjY5PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo4QTVDRjQ4RUY5MTRFMDExOUIzQzlBRTk4QTkyRTYzRjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6OEM4QjRGMzE3RTFBREYxMUJBQkNENzQ0NzJDRUUwQUU8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjhDRDU3QjlDNzEyMkUwMTFCMDExRjZGQzQ2MzZCNEIyPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo4RjM1MkQ5MkUyNjFERjExQTEzMEI4MzRBMDg2QzU5RDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6OTBCQTBBMjYyQzE0RTAxMThDMUNERTI5MTcyNDkxOTA8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjkxQzZCOUREN0QxQURGMTFCQUJDRDc0NDcyQ0VFMEFFPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo5MzI1NzVFNkIxMDFERDExOTBGOURCQUU4N0YwMDI3MDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6OTM5NEYwQjA5QTZBREYxMUFDNUFCRTY5MjcxMzYwQTc8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjkzQURGREEyOUU2OURGMTFCOTY1QzcxRUZDQjI4M0EwPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo5NjQzODI4MEIwNkNERjExODI3NEFFQzI0MkI4OTZDNTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6OTZEMzU0MzM4NzE0REUxMTg1QTc4QkZCNTc3MDM2MTM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjk3MjU3NUU2QjEwMUREMTE5MEY5REJBRTg3RjAwMjcwPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo5N2Q1ZDRhNy0yMDljLTQ5OWItOWI3Zi01ZWZiZGRlNjhlYzA8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjk5MkQ4MjJGRUM5OUREMTE5MzI3RjQ2MTNFMzAzQjY5PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo5QUQ4MDZBRDk2QzJERjExODEyMENDODk5OUQ2QTM2RDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6OUFFMjFCNkI0Rjg1REUxMTlGRTVEMzk4RjIxQTQ0MTM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjlDMkQ4MjJGRUM5OUREMTE5MzI3RjQ2MTNFMzAzQjY5PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo5Qzc5NTU1REU2MTRFMDExOUIzQzlBRTk4QTkyRTYzRjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6OUM3QTA2MDUxRDE2REQxMTg5RjJBMjczOTVEQUJDNkE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjlFM0M0RUMyN0U4M0RFMTE4QzYzODQzQUREN0I1NDM2PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDo5RjUzREY4QkZDMTVERDExODlGMkEyNzM5NURBQkM2QTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6OUY2QTc0NkJGM0JBREQxMUFFMzQ5ODA3QzJGNkFCNzU8L3JkZjpsaT4gPHJkZjpsaT51dWlkOjlGRTREQzQ1MTJGRURGMTE4MjY1Q0YxN0VBMjQ4MkU0PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpBMEYzRkRGQjMwOUZERjExQURCMEZGNkU3OTdEOERGNjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QTExMzVCM0VGRjIxREYxMUE1ODdDOUY3MTdBOUM2MDg8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkEyNzI0RUMwODc4RURGMTE4NDQyQThBMDUxQzU3RTNDPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpBMkMwMzNDRTAzQkFFMDExOUVFM0E4RTc4MDVGMTFFNTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QTUyQjJCRTJENTA0REUxMTg1MzJBNzUzNjI4RTk1ODc8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkE1NTJBQjFERjZFQ0RGMTE4RDMxRkVEOTRCMTZGMDAyPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpBNUIwRTlFNzg2MTRERTExODVBNzhCRkI1NzcwMzYxMzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QTY4RDAzNzVCRDExREYxMTg5RkY5MDhGQzg3OUMwRTk8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkE3RDgxRjc1NjU4OERGMTE5M0VFRDQyRDk0RkE3RkFBPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpBODE4RjNCQUI5MThFMDExODM3NkREMzM0MzVEQ0IwNTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QTg2ODA5NTJGN0M0REYxMThBNURFMjYzQzY1RjZDNDg8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkFBNjlCNTg0RDMyQUUwMTFBMzgwQTUzNzMzODVDMzBGPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpBQjAzNUFFQjE4RDNERjExODE0RTkzMEQxMDI0MDgzMzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QUJBNEU5Q0Y4NjE0REUxMTg1QTc4QkZCNTc3MDM2MTM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkFGNEZCNzU3NTkzMEUwMTE4RTY0REFCNEU3NzZGNUYyPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpCMEFDMjgyODlFQUNERjExOTYxMkMxMEE1NDBCODYxRTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QjE3ODYyNDBFNTJBRTAxMUEzODBBNTM3MzM4NUMzMEY8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkIxN0I2OEJGOTcwQUUwMTE5RkIwOTlENTkzRUEwMUI3PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpCMjdGNzE2MTMzNEZERTExODBCMEE2QTQ1REQxQTFDQjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QjQzQzIwQjE2OUY0REQxMTlGNEQ4QUFGMzJDMEQ5MEI8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkI0NUI3MUM0NTJGNERDMTFBODlCOUU2RUU5RTNENEFEPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpCNUVBREU4QzVCMDdERTExODIxNkJDRkEzMTIwM0I1RjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QjZFNzgwOTQ4MzIxREYxMTlFRjU5NTU1MTQ5NDIyMjU8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkI4NTlENjMwNjQ0NURFMTE5MjMzOEMwMUEyNzQzRTQxPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpCOEI4QjdBOTIxOUZERjExQURCMEZGNkU3OTdEOERGNjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6Qjk4MzUzMTM0NkREREYxMThBNkZCNUE5RDYxMEIzMDI8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkI5QkMxOEQ1N0IxRUUwMTE5MzBCQ0RFMjg0NjczNDc0PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpCQTc0Q0JFRjcyRENERjExOURGMUE5RjNGNkFGMTZDQzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QkI3QkU5MkZDRDIyREYxMTk4RTg4OTZDQUM0OUQyOTQ8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkJENjY0MDdBODcxNERFMTE4NUE3OEJGQjU3NzAzNjEzPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpCRTUxREY3MEQ1RDdERjExOUFFRjhEMkM1NkI2NjA4MDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QkYxOURENTkxNjBERTAxMUJBRUNFN0EzRjc0RDEzOEE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkJGNEIxQUNCQ0RCNURGMTE5REQyOEIxRkRENjJDNjdFPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpCRjg2NjBBNTM5RjNERjExQTNFRkY4M0E2MEQ2OEQ0MzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QkZGRTAzN0Q3QkFGREYxMUI1MUZBNUYxQTE4NDI4Qzk8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkMwNEYwMDkyRjEyQUUwMTFBMzgwQTUzNzMzODVDMzBGPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpDMEQ2OTJFQkIyMDFERDExOTBGOURCQUU4N0YwMDI3MDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QzM1NjQwN0JGMjA2RTAxMUIwQUVENjFENzkzN0FEQ0Q8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkMzNjVFNUQxNDQ3MkRGMTFBQ0YyODk3MEI2QUM3NjU5PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpDNDlDNDA5MzcwMTNFMDExODgyMkVDOUJBQzhCNDM2OTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6QzU4MEI5MTU4MTEzRTAxMTg4MjJFQzlCQUM4QjQzNjk8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkM2QjM5QzFGN0JEOERGMTE5QTlERDc4NDc5QjM1MEY2PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpDNzA3QjU0ODdCMkZERTExODM4REZBODFCMjI3MjQzQzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6Qzc1NDY2N0VFNTQyREQxMUIxNDFDNTI4MEJBQUZBQzM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkM5MjdEODczQTg2QURGMTFBQzVBQkU2OTI3MTM2MEE3PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpDQTRFMDM0RTdFMUFERjExQkFCQ0Q3NDQ3MkNFRTBBRTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6Q0E5QkYzMUExRDI2REYxMUFCNzRBODFBQzY1RUQzRjE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkNENDI2MjUyMkY5QkRGMTE5NkQ4OEFDMDZENTg2MzMwPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpDRDYwQ0VDREY5NDdERjExQjkzQ0I4MUQxODgzMjFFNDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6Q0UzRDQ3NEM2NzMwREYxMTk5MzVDQkE5M0I0MUJDMDc8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkQxQjNCOTUwNTIyMkUwMTFBQzNFQjc0RjdFNkNFQUZGPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpEMkI4RjA0Mjg3MTRERTExODVBNzhCRkI1NzcwMzYxMzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RDJFRkNGOEYxNTJDREQxMTlCMjdDMDZDNjYzODJFNjM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkQzMDIyN0I2N0I0M0REMTE5MzlCRjk2MEM5OTE5RDA1PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpEM0QwQjBFNTcwMjVFMDExOUUyNENGODQwQzJERkE2RTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RDQyMDdFQzkwNzJFRTAxMUFDN0Q5RjY3ODAyOUE1MTE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkQ0RkE4MjkwNjQwN0RGMTFCRDYyRTRBQTg3RjFEQTBGPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpENjIzRTJGQ0NCNDRERjExQTY1OTk5MDQ0Njc3OTY0MjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RDdBMkI5QzI4NjE0REUxMTg1QTc4QkZCNTc3MDM2MTM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkQ5NkNBNERGRDFDMkREMTFCMTEwRDk5MkVFNEVCOTU5PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpEQTBGODVFQTEyQ0FERTExQTlGRkM0MDhDNUY3NUNGNzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6REFDQjQyQUMwRDU3REYxMTlFNjE4M0E5MjFCNjBGNkQ8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkRDRkQ1NDJCRDkyQUUwMTFBMzgwQTUzNzMzODVDMzBGPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpERDM0OEI2NzJEMTRFMDExOEMxQ0RFMjkxNzI0OTE5MDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6REY3NkFCNDI0QzMxRTAxMTlEOTA4Qzg0NkIwMjgzRjI8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkRGOTQ4MUZBODM5QURGMTFBQkY5QjdDQ0M2QTE2MTY2PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpFMTFGOERFNjlCMjBERDExQjlGRDgyNkUwMkQ2MzQzODwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RTFFRkE4ODlCOUIyREUxMTlBREFGRkJFRDY0MUQwMDc8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkUyN0YwRDAwODcxNERFMTE4NUE3OEJGQjU3NzAzNjEzPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpFM0E3RDlFMzYxRTNERTExOURCRkJGQUMwN0Q4MEJDMjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RTREODlFQ0Y2NzA4RTAxMUE2RjJDRTVCQzVBRjA2NjM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkU1MjcxMDQ4MUQyRUUwMTFBQzdEOUY2NzgwMjlBNTExPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpFNTZCNDE2NjM5QjZERDExQjlGNjk0NjQ2NDNBMDY5QjwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RTZBNTRCREFENjE0RTAxMTkzNDhBMEY2ODZEQkIxMTc8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkU3MjZBQjY3QTFEN0RFMTFBMUFFOEEzODhCRjExRkRCPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpFODJDMURGOUM3N0ZERjExQUNDN0NEQ0Y4QjE2N0REQTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RThDMDhDNkFGMzE4RTAxMTlCRDBFRjY0MzMyODcxMUY8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkU5QTNFM0Q5QzA4RURGMTE4NDQyQThBMDUxQzU3RTNDPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpFOUI1QTRDMDg0QTRERjExQkM4MEJCNDQ1QzE0Mzk0OTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RUFCNDVEMUVGRTY4REYxMThCNkI4MTc2QzZCMjdCOUY8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkVCMDJBM0FGNTkzREREMTFCMTZCRjI2NkFFNThGRDE4PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpFQjA4OUM2NENCQUJERjExODgxREEwRTZGRjhGOEY1OTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RUI0RDVDRkU5NkI3REYxMUJFNkJDRTEyQkREODRERTM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkVCNjlCMTg4ODYwNkRFMTFCMzgwQzlERkZGNUVEQjZCPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpFQ0VGNzU3MjE2MTZERDExODlGMkEyNzM5NURBQkM2QTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RUQxMDUyQTcyOEREREYxMUJGMDFENEQxNDMzNkI5Mjc8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkVENzI5QkZEM0VFOERGMTE5OEFCQTZGMjNGOTQyNTY0PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpFRTk2OUQyNjUzMEZFMDExOTgzNEVDODFEMUY0QjNBMTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RUZFRDNFRkUyNzhDREUxMTkyN0NFODlCODk5NENENjI8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkYwOTY3ODg3OTlBRURFMTE5OTBDRjExNEYxOEIxQTNGPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpGMTE1RTI1MTJCNzJERTExODAxMkNFOUU5QThEMUExNDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RjE2QzhBNkU1QkQ4REYxMUE3OUY4NzEwMDdFODBCRjk8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkYyRDY2MkIxNkUxM0UwMTE4ODIyRUM5QkFDOEI0MzY5PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpGM0ZEQTE2NUI3MERFMDExQUI1QUQ2NDc1NDREREYwOTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RjQ0MTRBMDM4ODQyREYxMTlERTJCQUY4REZCNzM5Qzg8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkY1RTdCOTQ1MTI4NURGMTFCNDIwRjgwNDg3MDU3MUJEPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpGNkQzMjFEQTE5MThEQTExQjY4NDlCMjkzMzJDODI0MDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RjZEN0IzQjE4NzE0REUxMTg1QTc4QkZCNTc3MDM2MTM8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkY4MUMwNTMxNEYwRkUwMTE5ODM0RUM4MUQxRjRCM0ExPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpGOTc0ODZDMUUyNEZERjExODNDNzk5NjcxMEQwOTlEQzwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RjlEMjc4ODUzREI2REQxMUI5RjY5NDY0NjQzQTA2OUI8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkZBMDA3MENERjZDMkREMTFCOTQwOTc0RkMyMTQzOUZCPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpGQTdDNDZCQjI1QUFERjExOThBNUVGQTlGQjlFRjk3MDwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RkMwQzUxRDJEQ0I5REYxMTgyRkRFNDNFNjY2QUQ0MUE8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkZDMTNDRDlBNjkxM0UwMTE4ODIyRUM5QkFDOEI0MzY5PC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpGQzYyODQzOTVDREZERTExQjM2NkQ5RUY3NERFNEIzRTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RkQyQ0NBRTI4MjI4RTAxMTg0OUZFMUZBQ0Q1QkI2QkY8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkZEM0JENzEzREQxMERGMTFCRDI1OUQzQkE1RkFENzFEPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpGRDgzODIzMUJDQjZERTExOTAxMkQ0N0MyODNCNzU3MTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6RkRGOEFEMjk2QzRGREQxMTk0MDFDRjZFNzU2RjRBQ0Y8L3JkZjpsaT4gPHJkZjpsaT51dWlkOkZFMjdBQkJFQkMxQkRGMTE4NzcyREYyNDEyMjdCMTRGPC9yZGY6bGk+IDxyZGY6bGk+dXVpZDpGRjRCNEJBQTZENUNERjExODhFQUY4N0Y3Q0M3MkYwQTwvcmRmOmxpPiA8cmRmOmxpPnV1aWQ6ZmFmNWJkZDUtYmEzZC0xMWRhLWFkMzEtZDMzZDc1MTgyZjFiPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDowMDgwMTE3NDA3MjA2ODExODIyQTgyNUNGMTg1RERDODwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MDBBMUY3REUwRDIwNjgxMTgyMkE4MzQxOUM3MjI1RkQ8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjAxODAxMTc0MDcyMDY4MTE4MjJBQ0FEQTJBQTk5NDhDPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDowMUQzQkMwQTAzOThERjExOEUwREZCQ0MzOUYxRDcwQzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MDI0RjczM0M0Q0Q5REYxMTgxODU5MTU2RERCNTI3Qjc8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjAyODAxMTc0MDcyMDY4MTE4MDgzOEY4Q0Q2NzA5MDcxPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDowMjgwMTE3NDA3MjA2ODExODIyQTg0RTRERTVBRkZGNzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MDI4MDExNzQwNzIwNjgxMTgyMkFBNjcyRjJBMDBGRTk8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjAyODAxMTc0MDcyMDY4MTFBOTYxODE4QUIzNDc1RkUyPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDowMzgwMTE3NDA3MjA2ODExODIyQTkzNTI3OUUxNjkzRTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MDQzNTk1NDZGQjY3REYxMTg0MEJGOEY2RDVCRDVEQ0I8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjA0ODAxMTc0MDcyMDY4MTE4MDgzRjRDMzgwNEM3MTQzPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDowNDgwMTE3NDA3MjA2ODExODIyQUM2MjYzRkRFMDc0QTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MDQ4MDExNzQwNzIwNjgxMThDMTRFQjk3NkVDN0IwM0Q8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjA1ODAxMTc0MDcyMDY4MTE4MjJBODRFNERFNUFGRkY3PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDowNjI2ODVCMDcyNTIxMUUwQTI0NkRBOEVERTE0QkZCMzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MDY4MDExNzQwNzIwNjgxMTgwODM4QjYwNDMyRDJGMzE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjA2OTMzQUVFNjc1MjExRTA4MEE2REU1NTYxMjc5M0M4PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDowNkFDNjAxMTFEODlFMDExOTRFQUM4RDY3MjMwQzFGNjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MDZCNTUxNEMwOTIwNjgxMTgyMkFDMDZEM0NCQkRCOTY8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjA3MTlDMjFBOUJGNkUwMTFBQjMzRkFEODZFMkY1NkFCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDowNzgwMTE3NDA3MjA2ODExODA4M0I0NzYyMTI1RDg0MTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MDc4MDExNzQwNzIwNjgxMTgyMkFCNDg1ODkyOEFFNDQ8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjA3OWE3NDQ0LWM1OGEtNGI0MS1hODEyLTJjZDI2NzQ0MzRhODwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MDgwODQwNzNBRjYwRTAxMUFGQTc5RTNBNEYwMTE1OEU8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjA4ODAxMTc0MDcyMDY4MTE4MDgzODMwM0I2NUI1QURCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDowOTgwMTE3NDA3MjA2ODExODA4Mzg2NTdFRkNEN0MyNDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MDk4MDExNzQwNzIwNjgxMTgwODNCNDc2MjEyNUQ4NDE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjA5ODAxMTc0MDcyMDY4MTE4QzE0OUExNjkyOUFCNjUxPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDowOTgwMTE3NDA3MjA2ODExOEMxNEVCOTc2RUM3QjAzRDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MDk4MDExNzQwNzIwNjgxMTk3NEVGODMzNzE0M0QxRUY8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjBBODAxMTc0MDcyMDY4MTE4QzE0RUI5NzZFQzdCMDNEPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDowQURDNjVBNzEwREJFMDExQUZCRTlGNkNGNUUxNTNEMzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MEJDMDRFNzEwODIwNjgxMTgyMkFEODk0ODY3ODExQjk8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjBDNThCQTlGRDNFRERGMTFCRDNDQUY0NzZCNkYxNDFDPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoxMkRFRDEyMTBCMjA2ODExODIyQUFCRkI1QUI2RDhGNDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MTJFQ0RGQ0M2OTE4RTAxMTgzMTdBNTEyNkIxODRDOUM8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjEzMDY2OTBDMDQ1RERGMTFBNkI5RUE3OEFBMjI5QUExPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoxNTg4QUJBNjRCN0VERjExOEJCM0ZEM0ZGRkU1MEZCQzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MTVGMDEzNTJCODZBRTAxMUJENzZFNjAxMjFEQjJCQjQ8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjE4NDA3RUE0OUY3NERGMTFCOUFERjUwMUIxRkVFQzVCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoxOEE2QTVGQUI5MTNFMDExODBEQUNFQjFFNEIwODBGQzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MThEOUVGNzBCQTNERTAxMTg2MDBFN0VENjIwM0E0RTI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjE4RjExMDNFNTRDM0RGMTFBQUU0OUNEODhBQTY0NEFCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoxQTc5MjI2RjYyOUVFMDExOTZGREI3OUZGMzA3RDRBNDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MUE5NDZDQUQwQzIwNjgxMThDMTQ5QTE2OTI5QUI2NTE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjFBQjc3NzIyNzYyOUUwMTE5QUQxQjk0NUMxOTY0QkFFPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoxQjYyMDc4REQ5MEFFMDExQUU5OUU2RUY4NzQyREJFQzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MUQ1NDdDNzYwOTIwNjgxMThDMTQ5QTE2OTI5QUI2NTE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjFENkU0MzczQUM1RkRGMTFBNjhFRDI1MUZGMjNFQzM0PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoxREVEOENGRjU3QkJERjExODE4NUUxQkM5OEY5MTI1MTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MUUwREU4OTY0RTIzMTFFNDlDQzBGRTlEMzRCRkQ2QjI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjFFMkIzMUY2RTc5OEUwMTFCMDIzOEQ2RDNFOTZFQzA1PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoxRUVCNURERjBEOTJFMDExQUU3MzlCOEVDMDkyNEE1QzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MUZDNDczREMwNzIwNjgxMTgwODNDM0NGMTM5QTQzRUI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjIxNkVBMkM5NzFEMURGMTFBOUE5QUFGOTJBNDEzOENFPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoyMURDRTUwMjY3NTIxMUUwQkEwMENDREM2QkY5MkREMDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MjJDNDczREMwNzIwNjgxMTgwODNDM0NGMTM5QTQzRUI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjIzM0MxREU0QjI2Q0RGMTFBODFEQUI5MTAzOTFGMjkyPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoyNGRmOWFlZS01MmViLTNkNDEtYmMzNi1mNDAwY2Q5NmUyMWY8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjI1MEYzN0ZEQkU2NURGMTE5NkEyRTUzODZFQjdFRkJGPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoyNTJBNzI4RTY1QkJERjExQjcxNEYwQzZFOTRBQkQwMTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MjVDNDczREMwNzIwNjgxMTgwODNDM0NGMTM5QTQzRUI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjI2MTMxRTYyMEE1RERGMTE4MzBBRDI1N0ZFRDc1QjI0PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoyNzEzMUU2MjBBNURERjExODMwQUQyNTdGRUQ3NUIyNDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6Mjc0OURBQzE2OUUwREYxMUJBRTJBOUY0RkExQzczMEU8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjI4NzUyMDI1RDIzOUUwMTE4QzBBRjdCNUYyNEU1NkUyPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoyOEVFQTlCNzlBRDVERjExOTY0OEY4NTExQjc0MTdEMzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MjkzMzkwMTlBRTU1RTAxMTlDMDNBODYyQzdCRjZGODg8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjJCNDlEQUMxNjlFMERGMTFCQUUyQTlGNEZBMUM3MzBFPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoyQ0EwQTY3MjEyMjA2ODExOEMxNDlBMTY5MjlBQjY1MTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MkNDOTcxRDZEQ0UxREYxMTkzQjhBMTFBODBGNDYyMzY8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjJEQzc4RThBQzQ2QUUwMTFCRDc2RTYwMTIxREIyQkI0PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDoyRUU2MTJBMjJCOUNFMDExOUE2MEY0RjBBOUU4RjdFNzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MmZjMDMzYmItODI3Ni0xZTRmLWFhMWEtODRkY2ZlNDVlOTVjPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDozMDBGNzQyOEY2MzhFMDExQUNDQkVGRDQ4OEUxOTAzQjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MzE1RUM3QjI0Mjc3REYxMUEyOENEQjJFNkU4REVEOEY8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjMxODhCNzA5MDgyMDY4MTE4MjJBQzU4Qzk5NjRBNEQ5PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDozMUNFMTU4N0ZFNUNERjExQTZCOUVBNzhBQTIyOUFBMTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MzI2NUZDMzIxMDlERTAxMUI1MjM5QUE3QTcxNEMyNjI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjMzNUJFQTAxMEIyMDY4MTE4MDgzQzNDRjEzOUE0M0VCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDozNDVCRUEwMTBCMjA2ODExODA4M0MzQ0YxMzlBNDNFQjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MzQ5RTc3RTUxN0EzRTAxMThBOEZENjNCQTU4NTRCQTQ8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjM0RkY2MDE4NDAzQ0UwMTFBQjlEQzkxQjNDODg4QTJEPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDozNTc0NzBEMjA3MjA2ODExOEMxNDlBMTY5MjlBQjY1MTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6MzYyQTg5QjZCNERGRTAxMThDNEE4MTEwRkU0RkU1NUM8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjM2MkNBN0U5MDg1NkUwMTFCNTQ3ODc1NzNDRDY1RjRGPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDozOUNFMTU4N0ZFNUNERjExQTZCOUVBNzhBQTIyOUFBMTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6M0E2Q0FGMjcyQjE5RTAxMTg0REQ4RkJEMTEwMzQwMDg8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjNBNzY3ODNDRDBBOERGMTFCMkExOUQ1MEZGMjFCOEQ5PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDozQkM2Q0UxMkMzNzBERjExODUwQ0I3MkRCOUQyQ0I5MjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6M0QwMkU2MkFERjhDREYxMTgxRENDQjhFOEI3N0YzMUY8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjNEMDVEMEQ0RjBFREUwMTE4OTdBRUE2QTFCNDMyREQwPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDozRTE2NEY0QUI5OTVFMDExQUIwNDkwMUY2REZFNEJCNDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6M0YyODQwQkJEQUY0REYxMTlCOUZFRDY2QjY4NzVBNzc8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjNGQUYyQ0I4QzA1QUU0MTE5QkM3ODlDMTY4MkEwRkREPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo0MDE1NjE0OUQwNEJFMDExQkZEOEZCMEU0NjA0M0M5MjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NDI2MTE5MzNDNkU5REYxMTkzNjZEMjIyRjU5QjQ5MkM8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjQyNjk1NkE2M0M3RURGMTFBNUE0RTkwNjVGQUM3MDRDPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo0MzY3QjlENjRCMzRFMDExOTUyOEQ3NTUzREYzMzhDOTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NDNCQTdGNDYwRTkyRTAxMUIyNDdFRDVFRDdEMjMxMkE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjQ0QkE2MTBGRjcxNUUwMTE4NTBGQTkwMUI0QzFCNjc1PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo0NTkxREY3NzBFMjA2ODExOEMxNDlBMTY5MjlBQjY1MTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NDVDNUU5QUMwOTIwNjgxMThDMTQ5QTE2OTI5QUI2NTE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjQ1Qzg5NTJEMEI1RERGMTE4MzBBRDI1N0ZFRDc1QjI0PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo0Njk3N0NEMDIyNTJFMDExQkI4QkVBRjMyOUE2NDJCODwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NDgwQjdFNDZBRjc4REYxMUE4MjVDRjhERTVEOTFERjc8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjQ4OTdFMkIwRkFERURGMTE5RDA3QzZBRjQ1ODI1OTU3PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo0OEI3QkQwQkQxRjFERjExOTExREFFM0Y3N0E3MkMxMjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NDhCQThCQ0JFMzhFREYxMThBNTlGOTZDMzIxQjg3RDI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjQ4RkIxMDU1MDkyMDY4MTE4QzE0RUI5NzZFQzdCMDNEPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo0OTQ3RkZBRDU1RUUxMUUwOUU0Rjk3MDlDMDM5OEM0RjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NEEwREVCMzkwQjIwNjgxMTgyMkFCNjlCQzRCRkE2RTQ8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjRBRjhFRUU3MTcyMDY4MTE4MDgzRjQyODQ4ODJGRUVEPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo0QkZCMTA1NTA5MjA2ODExOEMxNEVCOTc2RUM3QjAzRDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NENBRDZFRDZFMUQzRTAxMUI0QjFFNTA0MzkxQUVGOTY8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjREQTBBRkM2RjQzNUUwMTE4RkVCRjgwRjAzQTNBNzhBPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo0REZCMTA1NTA5MjA2ODExOEMxNEVCOTc2RUM3QjAzRDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NEVGOUM5M0YwQzIwNjgxMTgwODNDM0NGMTM5QTQzRUI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjRFRkIxMDU1MDkyMDY4MTE4QzE0RUI5NzZFQzdCMDNEPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo1MDk0QUVCMDBBMjA2ODExOEMxNEVCOTc2RUM3QjAzRDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NTBGQjEwNTUwOTIwNjgxMThDMTRFQjk3NkVDN0IwM0Q8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjUxNEY2N0M1RTNBMERGMTE5OEY4QTdCOTMxNjk3MzU5PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo1MUQ3OUYwQUExRjlFMDExQkM0MkE1MDY3RkZENDU1RjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NTFGOUM5M0YwQzIwNjgxMTgwODNDM0NGMTM5QTQzRUI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjUzNEQ3MUY2RkQ1Q0RGMTFBNkI5RUE3OEFBMjI5QUExPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo1NDNBNzk4RjEzMDdFMDExODQ2RkU4QzA0RDNDOERFQzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NTRDM0Y5RjhCREFFREYxMUE1REM5NTlDODJBQkM5RTE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjU0RDc5RjBBQTFGOUUwMTFCQzQyQTUwNjdGRkQ0NTVGPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo1NTk5MjlBQTJGODlFMDExOTRFQUM4RDY3MjMwQzFGNjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NTU5RkNEM0I1MjdBREYxMTg5MTRERUIxMzUxNzYxRjE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjU3MTE5NkNBMUUyMDY4MTE4MDgzREFDOEM3NjMwNjNCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo1NzU4NjE3NjA5MjA2ODExODA4M0MzQ0YxMzlBNDNFQjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NTg1ODYxNzYwOTIwNjgxMTgwODNDM0NGMTM5QTQzRUI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjU5NTg2MTc2MDkyMDY4MTE4MDgzQzNDRjEzOUE0M0VCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo1OUE1NTU5NUM5NDRFMDExOTlFNEE3NUVGNUQ2REVDODwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NTlCMDgzRTYwNzVEREYxMUE2QjlFQTc4QUEyMjlBQTE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjVBNTg2MTc2MDkyMDY4MTE4MDgzQzNDRjEzOUE0M0VCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo1QjZERDJCNzQ1ODRERjExQjcyNDhCN0RERjc5NEExQTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NUQ1MTcwRkRENzk4RTAxMUIwMjM4RDZEM0U5NkVDMDU8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjVFQjA4M0U2MDc1RERGMTFBNkI5RUE3OEFBMjI5QUExPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo1RjNEODI4RjA5MjA2ODExODIyQUE2NzJGMkEwMEZFOTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NUZERTUwNTQ0Mjk3RTAxMTlGMTVEODI4NjQ1N0FCRDU8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjYwNjQwQTVDNTgyNkUwMTE4MkNBRDM4RUNFRENFMjY4PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo2MzRGRTEwNkZEQUFERjExOTZCRkFCMkFFQ0ZFMkZBMTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NjM5QjFERDI5N0Q1REYxMTk2NDhGODUxMUI3NDE3RDM8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjYzQUVGOTEwNTMwNUUwMTE4NjdGODlCMDIxMUU0RjdBPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo2NDMwODM2OTBCMjA2ODExOEMxNEVCOTc2RUM3QjAzRDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NjQ3NEM4M0M2ODdDREYxMThFMUY5OUQ2OUIzNTI1Q0M8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjY1NEE0RDIzMDkyMDY4MTE4QzE0OUExNjkyOUFCNjUxPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo2NjhBNzIwQTQ5RkFFMDExOThGNEU1QTcwMjI2OTE5NDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NjZDMzcwRjUwOTIwNjgxMThDMTQ5QTE2OTI5QUI2NTE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjY4OUIxREQyOTdENURGMTE5NjQ4Rjg1MTFCNzQxN0QzPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo2OTlFMDUwMTAxREJFMDExQUZCRTlGNkNGNUUxNTNEMzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NkE3MTcyRjNFQzM5RTAxMThDMEFGN0I1RjI0RTU2RTI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjZCOUFGRjY1MjBEQURGMTFBRDJCQ0JGMTlDMDJGOThDPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo2QzFENENGQkQ4QzhERjExODg0OUUyMTc2NDc5NkFFODwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NkM3QUVCNDkwQjIwNjgxMTgwODNDM0NGMTM5QTQzRUI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjZDRDcwRTQ1ODc3MkUwMTE4RDE4QURERDE2NEJEQjdGPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo2RDg5MDA1REYxN0FERjExODcwM0FBQTc3NDA5RTZCMDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NkUyODJEQ0E3RjE3RTAxMUIwNzM5ODY2RTlBRDBDODE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjcwNzZBMDE2MEEyMDY4MTE4MjJBRDg5NDg2NzgxMUI5PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo3MDk0M0JBOTE2MjA2ODExODA4M0E3RjY2MzZFMkJENDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6NzM1QUNEODE1NTVGREYxMUJFNTJBODQ0MzVGRjgzOEY8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjczOUQ3RTlGRUJBRERGMTFBQURFQURBMzU2MjIyMDgzPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo3NThBNTRFQkZBRjRERjExQUQ3QkQxNjQyOERENDhBMTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6Nzc0Q0RGNzM0MDIwNjgxMTgyMkFDMDZEM0NCQkRCOTY8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjc4ODIwMEIzMzI2MURGMTFCMzhGOTk4ODc1Q0M4NjU0PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo3ODhBRjU4Q0RDOUZERjExOEMwMEMzQzk2OEFCREMwNjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6N0E1NTRFMjYwQzIwNjgxMTgyMkFEODk0ODY3ODExQjk8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjdBODVDRkMyRDQyN0UwMTE4NzA4QjRBRDVFNTg2NzM1PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo3QkQyQTcxNzZDMzRFMDExODNDMTg4QzBCMERBNENBQTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6N0Q1RkFBNjIwQTIwNjgxMTgwODNDM0NGMTM5QTQzRUI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjdFMDgzQzZCREFDQ0RGMTE5RjVDRkNDODU5NjJCNDJEPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo3RTYwMTE5NENEOTFFMDExODRBNzgyRjFEOTczQUVERDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6ODE0NEM1QzUwRjIwNjgxMThDMTQ5QTE2OTI5QUI2NTE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjgyM0I3NDhDN0MzQkUwMTFBNDA4ODhFNzA4QUQxMjMwPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo4NDNCNzQ4QzdDM0JFMDExQTQwODg4RTcwOEFEMTIzMDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6ODRDNzZFNUNBNjFFRTAxMTlCNjJDMUE3MkNEREJCMkQ8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjg1QTVEREQzMEIyMDY4MTE4MjJBOThFQTRBNDgyQzFFPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo4NjFCMUIyQjdGNjdFMDExQTdCRjk5RUM4MTAwNzU0RTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6ODYxQ0IxMjkxMTZDREYxMUEwODFEQUM2NTU0OUZGRjg8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjg2M0I3NDhDN0MzQkUwMTFBNDA4ODhFNzA4QUQxMjMwPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo4NjQ0QzVDNTBGMjA2ODExOEMxNDlBMTY5MjlBQjY1MTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6ODZGNTc3NDFFNDgyRTAxMUFGM0ZBQTg2NzhBNjE0Rjg8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjg3MDIyNUQyMEU5NERGMTE5NUE1RkM1QzMxNkNDNDE4PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo4NzFFODgwOUE3QThFMDExODA4OUFGNjYzM0ExMzNCMDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6ODgzQjc0OEM3QzNCRTAxMUE0MDg4OEU3MDhBRDEyMzA8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjg4QTEyMzExNjRENzExREZBNjk3ODUyMUQ2MERGNDYwPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo4OTY4MkIxNzA5MjA2ODExODA4M0MzQ0YxMzlBNDNFQjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6OEEyMzBERTYwQTIwNjgxMTgyMkFEODk0ODY3ODExQjk8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjhCOTA4NThGQjU3M0RGMTFCRkJCRjAwNzU5QTNENDUyPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo4RDY4MkIxNzA5MjA2ODExODA4M0MzQ0YxMzlBNDNFQjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6OEZGNTc3NDFFNDgyRTAxMUFGM0ZBQTg2NzhBNjE0Rjg8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjkwQzVENTI2NjQ3OURGMTE4NjVDRUVGMDk4NTFGRDc5PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo5MUZGMDUxRTBGRDNERjExQjJEMUM1MUY1OUI1RkIyOTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6OTM5RjEzQzgwODIwNjgxMThDMTRDNDUwMjIzMEFENjM8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjk0MUYxOTk2NEJFNUUwMTE4NzQyOTkzOTExRTdBOUNFPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo5NTFGMTk5NjRCRTVFMDExODc0Mjk5MzkxMUU3QTlDRTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6OTYyNjE0QzMwODIwNjgxMTgyMkFBQkZCNUFCNkQ4RjQ8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjk2OUFDOTgzMDI4N0UwMTFBQTNDQzUyQTJCOTg3MTg0PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo5ODE0NzdENzU3OTNFMDExQTcxOUE4QUIxRTZGRTZEQjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6OTgxRjE5OTY0QkU1RTAxMTg3NDI5OTM5MTFFN0E5Q0U8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjk4Mjg3YzcyLTQwNzYtNGU0NC1iMWZiLTc0MThlOGRlZjhmYzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6OThGQkM3MDE4ODRFRTExMTlEMjE4N0MzQkMxQUM4OEU8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjlBMTQ3N0Q3NTc5M0UwMTFBNzE5QThBQjFFNkZFNkRCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo5QTIxNjcwQThBNkFFMDExQjBEN0RFOTVEQUFDMEY2ODwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6OUIwQkM5MEU3NkI0REYxMUEzNjVFRjUyNTc3NjIzODE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOjlDNEIzODI2Q0YyN0UxMTE5NkRFRDNGRURGN0VGMzYxPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDo5RUExQUYyQjkzNThERjExQkI3M0FGOTJERTY4NDZDQzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6OUVGN0Q5MkZDMzkyREYxMUFFRDZBNTlCMEVGNzExNDk8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkEwNEMyMEQ5MjA1RERGMTE5MTNFQjFEQzI3ODEwMUFGPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpBMjE5OEIwODkzQThFMDExODA4OUFGNjYzM0ExMzNCMDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QTI3QzE5MTkwNTlERTAxMUI5M0NGQjU2Qzc2RTE2RkY8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkEyREMwQjNDQkQzN0UxMTFBNjA2RUI1RTY0QjMyRUY4PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpBNEU5MEVGQjc4RjNFMDExOERFRERDOEVFREM4OEI3QjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QTVDRDU0RDE4MkUwRTAxMTkxQTZDOTFFN0I2NzMzMzA8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkE1RDc3MTFFMjI3M0UwMTE4NUZFRDhFNEY5QUQ5MjhEPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpBNzIxMzExRDBBMjA2ODExOEMxNEVCOTc2RUM3QjAzRDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QTdENzcxMUUyMjczRTAxMTg1RkVEOEU0RjlBRDkyOEQ8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkE4Mzc4QTEzMzZBM0RGMTE5RUU3OEQzOEUzMEFBRjYzPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpBQTUzRUIyNDBGMjA2ODExOEMxNDlBMTY5MjlBQjY1MTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QUFFNzY4RkY4RDZBREYxMTgyOTBDQkI5NEM1Q0Y0RjA8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkFFMDA3NkI2MEEyMDY4MTE4QzE0OUExNjkyOUFCNjUxPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpBRjYwMTk0MDY3NTExMUUwQjVCNEEwRjBBMzNGQUM5RjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QjA4MTk1NDM2NzdERTAxMUIxRDZEM0I0REM5MkY2NjA8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkIxMDJERjk3QTBDMERFMTFBOTIxQUQxQjg5RThEMzIzPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpCMTFEMzYwQzI1RjFERjExOTQ0NUE1RkQ4OTVENzgxRTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QjE4MTk1NDM2NzdERTAxMUIxRDZEM0I0REM5MkY2NjA8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkIxODU0REI2QUIzN0UwMTE4QjNEOUQ3NTk2NTZGOTQ4PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpCMjk5RkRCMTA5MjA2ODExODIyQUMwNkQzQ0JCREI5NjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QjM4MTk1NDM2NzdERTAxMUIxRDZEM0I0REM5MkY2NjA8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkI0OTQxRUVEMEEyMDY4MTE4MDgzODY1N0VGQ0Q3QzI0PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpCNTNEQTMxNzkzREZFMDExOEM0QTgxMTBGRTRGRTU1QzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QjY0MkMyQjYwNzIwNjgxMTgyMkFBQkZCNUFCNkQ4RjQ8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkI2QzgxMDM5MDgyMDY4MTE4QzE0OUExNjkyOUFCNjUxPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpCNkYyNzExQkJFQkJERjExOTZGNUI0NEQzQTlCRDZGNjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QjZGNEQ3MjRFRTM5RTAxMThDMEFGN0I1RjI0RTU2RTI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkI4ODkyNUNBMEQyMDY4MTE4QzE0OUExNjkyOUFCNjUxPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpCOEI1RDFGNDA3MjA2ODExOEMxNEVCOTc2RUM3QjAzRDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QjhDODEwMzkwODIwNjgxMThDMTQ5QTE2OTI5QUI2NTE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkJCQjVEMUY0MDcyMDY4MTE4QzE0RUI5NzZFQzdCMDNEPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpCQ0E3NkY5RDlCNjVFODExQTlEMEQzNzU2RDMxMDBGQzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QkQ2N0Q0QTMwMjhFRTAxMTg3M0NBNkNBNkZDREZCQzg8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkJEQjVEMUY0MDcyMDY4MTE4QzE0RUI5NzZFQzdCMDNEPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpCREQ3QkEwRjE1OUNFMDExOUE2MEY0RjBBOUU4RjdFNzwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QkUwREI1RjJEM0U1RTAxMUFDQ0RGRkMwNkE5MTMyMTE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkJFQjVEMUY0MDcyMDY4MTE4QzE0RUI5NzZFQzdCMDNEPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpDMDMwNDBCRkRGOTBERjExQUU4MkNCQTg4MEYxMzhGOTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QzBCNUQxRjQwNzIwNjgxMThDMTRFQjk3NkVDN0IwM0Q8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkMxQTlERjE0REU5Q0RGMTE4ODE3RUJFNkU4NjE0RDQ5PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpDMUM5Rjk2OTI5MjQxMUU4QTIxNzhGNzg1MzJCMzUxOTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6QzI2QzBENDk1MjY3REYxMUIyRTVDOENBMkEyMEI1MDE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkM2NkMwRDQ5NTI2N0RGMTFCMkU1QzhDQTJBMjBCNTAxPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpDNzExMEU1RjUwNzZERjExOEU2MUFDRDE3OUQwNjI0NDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6Qzg5QURCQTI2NzUxMTFFMDlDRTI4QTcxODAzOUI2NUI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkM4QzNBRDBGOTgxMEUwMTE5RTNFRUQ2REE1MkJCMDIwPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpDQUIyNkIzMzQ3QkZERjExQjIyN0YyMkFDREQzRjY5RTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6Q0MyQjY2NUMxODIwNjgxMTgwODNGNDI4NDg4MkZFRUQ8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkNDNEFCNTkxQTdEQ0RGMTFCRjc5RkE2MkI1MURGNkM3PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpDRDk0QTJCRUE3NTBFMDExOEVGMjk5OTA0RDc4NkQxNTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6Q0RFODhCQ0U0QjZGREYxMUIyMThCMDBEODQ3REMyOTc8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkNFMjE0MEY4QTZGNkUwMTFBQjMzRkFEODZFMkY1NkFCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpDRjAzMTU1OTQ0OThFMDExOTlDMkZBMzE0NEM4MkE1MjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6Q0Y5NEEyQkVBNzUwRTAxMThFRjI5OTkwNEQ3ODZEMTU8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkQxMjI5ODQxNkQ2QkUwMTE5MTgzQkE1MDcxNDk0OThDPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpEMTQwOUNCQzUyMDFFMTExQjJBREVENTE1QzYxMzA2MTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RDFDMTFBMjUxNzM2RTAxMThGRUJGODBGMDNBM0E3OEE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkQyNEIyMjkzQzBBQkUwMTE5MEI3RTdFM0Y0MTkxNThFPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpEMzJCNjY1QzE4MjA2ODExODA4M0Y0Mjg0ODgyRkVFRDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RDNBMzQyM0MwODM2RTAxMThGRUJGODBGMDNBM0E3OEE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkQ0MkI2NjVDMTgyMDY4MTE4MDgzRjQyODQ4ODJGRUVEPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpENDNGOTNFNDU0QjRFMDExOEJFQ0MzMDNBM0Y2N0NDODwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RDQ1MEU5RDQwMkEwMTFFNzlEMENBMUUwMDNGQkVDRDg8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkQ1QTM0MjNDMDgzNkUwMTE4RkVCRjgwRjAzQTNBNzhBPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpENkI4MDdCRDJBMjA2ODExODIyQUIyRjkzMzU5NTQwNjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RDg0M0MxMDBCNEFDRTAxMTg1MTRDNDNFNzkzNTRFRUU8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkQ4QzExQTI1MTczNkUwMTE4RkVCRjgwRjAzQTNBNzhBPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpEQUExRDE5OEFEQjZERjExQkNGRDkzRTc2QTBEQzJGNDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6REFDODUwNzg1NEQ1REYxMUEwOTRERjAxRTZFREUzMjA8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkRCMUU0QzFDRTg3QURGMTE4Q0I3RkVBN0NENzREMzVCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpEQzg1QTJFNzBCMjA2ODExODA4M0MzQ0YxMzlBNDNFQjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RENFREFFMDUwQTIwNjgxMTgwODNDM0NGMTM5QTQzRUI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkRGODVBMkU3MEIyMDY4MTE4MDgzQzNDRjEzOUE0M0VCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpFMDJDMTkwRTQyNkVERjExQjI0REU5MDhBQ0NBQzA5NTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RTAyREE3RjQwODIwNjgxMTgyMkE4NEU0REU1QUZGRjc8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkUwNkY3ODZERkNCMURGMTE5OERGQjIwRjkwRDNBQTZFPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpFMTMwQUY2MTcwQkZFMDExQkVERjg2OTIxNkQ1MzEwMDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RTIwQ0NDRDI3QTM4RTExMTlFNzRFQTA3QkJBNzIxRjE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkUyODk5Rjg0MTQwREUwMTE4RjE2QjExQkNGMjYxMzcyPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpFMjk5NDM5NjE0RjFFMDExQTUyRkVDRTdCMjFBMUJBRTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RTMwRTQ5MDJCQUNGREYxMUIxNEVFRDg4RDQ4QTEyQzI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkUzQTBEOURGMDgyMDY4MTE4QzE0OUExNjkyOUFCNjUxPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpFNDE2N0NDOTA4NURERjExQTZCOUVBNzhBQTIyOUFBMTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RTQ5MDJGMDY2NzUxMTFFMEFGNzM4MEEzMDZFMzMwOEE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkU1MjFBQTdDQkMwQkUxMTE4MUI0OTZDM0VDNThENERFPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpFNTRCOENEMEQ3MzVFMDExOEZFQkY4MEYwM0EzQTc4QTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RTU3RUU4QjY3RDgxRTAxMTkwMEJFMjEyNTYwQTFEMUQ8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkU2REU4MzNCMzM2NUUwMTFBQUYxRTUyQzM5NURENzFBPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpFNzQ3QzBGODBGNjVERjExOUE5NEM1RDhEMTg4OTU1QjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RTc5NDA3OERERTY0REYxMThBNTNENEVGRTIwQzM1MTg8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkU3REQ1MjY0MUExOUUwMTE5NUYxQkE0NzRGMkMwQkFFPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpFODkzREQ5OEJCRjVFMDExQkY3OEY4OEE2NzQ3MzA4NDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RThDMTU2MEU5MjE3RTAxMUFGRkJBNjU0MTlBRjEwQ0I8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkU4RTI4ODFCM0IyMDY4MTE4MjJBQ0E2QjIyNzJCQkU2PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpFOTkzREQ5OEJCRjVFMDExQkY3OEY4OEE2NzQ3MzA4NDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RUFFQzIwODFEQzIwRTExMTlCRDFFMDI1MTQ4RUVCNjI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkVCQzg5NEMzMDkyMDY4MTE4MDgzQzNDRjEzOUE0M0VCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpFRDE2N0NDOTA4NURERjExQTZCOUVBNzhBQTIyOUFBMTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RURFQzIwODFEQzIwRTExMTlCRDFFMDI1MTQ4RUVCNjI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkVFMUE1NjMzNzI4OEUwMTFCMEI0Q0JCRjQ4QUM3RTc5PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpFRUMxNTYwRTkyMTdFMDExQUZGQkE2NTQxOUFGMTBDQjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RUVDNTM3QUY0MTIwNjgxMTgyMkFDMDZEM0NCQkRCOTY8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkVGODQ0MUMwNjVFN0RGMTFCOEFCQkJGN0ZGQTZCMEM0PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpFRkM5RDFENDc3QjBERjExOEI0M0NGNjdCRTNDOUY3RDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RjA0RDM1QzY0MkI4REYxMThDRUE5RTUyRTFEMEZBQjg8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkYwNEVFMDRERkY1Q0RGMTFBNkI5RUE3OEFBMjI5QUExPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpGMDY1OUYzMjA4MjA2ODExODA4M0MzQ0YxMzlBNDNFQjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RjBFQ0IzMTFBMkI3RTAxMTgwREU5RTk5MDA3NDFGNzg8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkYzNjU5RjMyMDgyMDY4MTE4MDgzQzNDRjEzOUE0M0VCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpGNEFCOTREMzU3N0RFMDExQjFENkQzQjREQzkyRjY2MDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RjRCRTA3NTAzNjUwRTAxMTg4RkRGRkEyMkREMkUxQkY8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkY0RDlGMkExMEIyMDY4MTE4MjJBREY4MEYwOEM4QTBEPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpGNTI5RkI1RUJDMjRFMTExOTU2MEQxM0VGQzU0Q0Q0QjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RjVDOTQ5RDRGQjY4REYxMUJCMjc5Rjk4RjA2NzM2MEE8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkY2NjU5RjMyMDgyMDY4MTE4MDgzQzNDRjEzOUE0M0VCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpGNkQ4NTcyNDY3NTExMUUwQkI2MkVDRURGNEQxQzRFMTwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6Rjc3MkQyQ0U2NUE5REYxMUFERUI4MjREM0M2MjVGNTg8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkY3N0YxMTc0MDcyMDY4MTE4MjJBOTg5NTVCRkY0NTkyPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpGNzdGMTE3NDA3MjA2ODExODIyQUVGRUQzNTU3MDVGRjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6Rjc3RjExNzQwNzIwNjgxMThGNEJDNkVGQ0I4QjQwOTI8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkY3N0YxMTc0MDcyMDY4MTFBN0JBQzI3RDFCRDgyMTIzPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpGODdGMTE3NDA3MjA2ODExODA4M0RCOUNGRTI2RTYwODwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6Rjk0NDZDNUY2MzM0RTAxMTg2MzREQzU4RDVGREE1Rjc8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkY5NjU5RjMyMDgyMDY4MTE4MDgzQzNDRjEzOUE0M0VCPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpGOTdGMTE3NDA3MjA2ODExODA4M0E1QkU2NENGMEFCNjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RjlEMkJDMEEwMzk4REYxMThFMERGQkNDMzlGMUQ3MEM8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkZBRTIwRDk0MDgyMDY4MTE4MDgzREUyN0U0NTlCQ0FBPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpGQkY5OUVCNzU2N0RERjExQTc0RUU2Q0UwMzk5NDQyMjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RkMxNjBFMUE4MjhDRTAxMUExRTZEQkU3QjUzQTE5RDM8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkZDN0YxMTc0MDcyMDY4MTE4MjJBQzU4Qzk5NjRBNEQ5PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpGQzdGMTE3NDA3MjA2ODExOTdBNTgxNDZBNDA5QTQ1MDwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RkM4OUYwMTcxNjIwNjgxMTgyMkFCMDJDMzM4RUVFQUU8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkZFN0YxMTc0MDcyMDY4MTE4MjJBQzU4Qzk5NjRBNEQ5PC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpGRUM1MkQzOTc2NjNERjExQjI2MTk0REQxMzQyN0Y4QjwvcmRmOmxpPiA8cmRmOmxpPnhtcC5kaWQ6RkY0RkFGRUEyQTNDRTAxMThEQUVDQTZEM0Q0MkRERDA8L3JkZjpsaT4gPHJkZjpsaT54bXAuZGlkOkZGNTc2OTNBMDE4RURGMTFCRUJCODM1QTNBMUQzQ0FFPC9yZGY6bGk+IDxyZGY6bGk+eG1wLmRpZDpGRkFENDc0RkE4QUNF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
  115.                                         ]]>
  116.                                     </base64>
  117.                                 </image>
  118.                             </ImageWidget>
  119.  
  120.                             <Label id="idTitulo" align="MIDDLE_CENTER" contentMode="HTML" expandRatio="0.04">
  121.                                 <value>
  122.                                     <![CDATA[
  123.                                         <span style="color: #34495E; font-size: 13pt;"><b>DRE - DEMONSTRATIVO E RESULTADO DO EXERCÍCIO CONSOLIDADO &nbsp;&nbsp;</b></span>
  124.                                     ]]>
  125.                                 </value>
  126.                             </Label>
  127.  
  128.                             <DateField type="date" id="DataInicial" caption="Data Inicial*" immediate="true" resolution="DAY" format="dd/MM/yyyy" align="MIDDLE_LEFT" visible="false" />
  129.  
  130.                             <DateField type="date" id="DataFinal" caption="Data Final*" immediate="true" resolution="DAY" format="dd/MM/yyyy" align="MIDDLE_LEFT" visible="false" />
  131.  
  132.                             <DateField type="date" id="AnoCompetencia" caption="Ano" immediate="true" resolution="YEAR" format="yyyy" align="MIDDLE_LEFT" required="true" />
  133.  
  134.                             <NumericField id="filtroAnoCompetencia" type="number" visible="false" />
  135.  
  136.                             <DBComboBox type="string" id="empresa" align="MIDDLE_LEFT" caption="Empresa" expandRatio="0" allowNullSelection="true" required="true">
  137.                                 <datasource>
  138.                                     <freeQuery connection-key="arius">
  139.                                         SELECT
  140.                                             ID
  141.                                             , SIGLA AS EMPRESA
  142.                                             , FANTASIA
  143.                                         FROM EMPRESAS
  144.                                         order by id
  145.  
  146.                                     </freeQuery>
  147.                                 </datasource>
  148.                                 <key-field>ID</key-field>
  149.                                 <caption-field>EMPRESA</caption-field>
  150.  
  151.                             </DBComboBox>
  152.  
  153.                             <ButtonWidget caption="Pesquisar" id="btnPesquisar" description="Pesquisar" height="40" align="MIDDLE_LEFT">
  154.                                 <onClickScript language="JavaScript">
  155.                                     <![CDATA[
  156.                                         importClass(Packages.br.com.davinti.base.vaadin.components.layout.MessageBox);
  157.                                         importClass(Packages.com.vaadin.server.FontAwesome);
  158.                                          
  159.                                         var botao = engine.getWidgetController('btnPesquisar').getButton();
  160.                                         //botao.setIcon(FontAwesome.SEARCH);
  161.                                         function run() {                                           
  162.  
  163.                                             var pesquisa_ano = engine.getField('AnoCompetencia').getValue();
  164.                                             println(pesquisa_ano);
  165.                                             engine.getField('filtroAnoCompetencia').setValue(engine.getGlobalVariable('getDataFormatadaAno')(pesquisa_ano));
  166.                                         }
  167.                                     ]]>
  168.                                 </onClickScript>
  169.                             </ButtonWidget>
  170.  
  171.                             <ButtonWidget caption="Limpar" id="btnLimpar" description="Limpar" height="40" align="MIDDLE_LEFT">
  172.                                 <onClickScript language="JavaScript">
  173.                                     <![CDATA[
  174.                                      importClass(Packages.br.com.davinti.base.vaadin.components.layout.MessageBox);
  175.                                      importClass(Packages.com.vaadin.server.FontAwesome);
  176.                                      
  177.                                      var botao = engine.getWidgetController('btnLimpar').getButton();
  178.                                      botao.setIcon(FontAwesome.TRASH);                                                                                                                                 
  179.                                  
  180.                                         function run() {   
  181.                                             /* TODO */
  182.  
  183.                                            
  184.                                         }
  185.                                     ]]>
  186.                                 </onClickScript>
  187.                             </ButtonWidget>
  188.  
  189.  
  190.                         </HorizontalLayout>
  191.                     </VerticalLayout>
  192.                 </Panel>
  193.             </VerticalLayout>
  194.             <VerticalLayout width="100%" margin="true" spacing="true" cssAlign="top: 0px; left: 0px;">
  195.                 <ComplexPanel height="100%" width="100%">
  196.                     <VerticalLayout width="100%" margin="false" spacing="true" cssAlign="top: 0px; left: 0px;">
  197.                         <!-- DRE - MENSAL -  NIVEL Consolidado -->
  198.  
  199.                         <VerticalLayout width="100%" height="100%">
  200.                             <Label id="lblCss" contentMode="HTML">
  201.                                 <value>
  202.                                     <![CDATA[
  203.                                             <style>                                            
  204.                                                 .v-grid-header{display:none;}
  205.                                                 .v-grid-sidebar.v-contextmenu{display:none;}
  206.                                                 .v-grid-body{margin-top:0px !important;}
  207.                                             </style>
  208.                                         ]]>
  209.                                 </value>
  210.                             </Label>
  211.                             <DBTable id="db_dreConsolidada" type="number" width="50%" height="100%" rows="21" multivalue="false" selectable="false" align="MIDDLE_CENTER" showRowCount="false" visible="true" editDisposition="MODAL" exportXLS="true" debugSQL="true" gridSelectable="true" updatable="true" editable="true" useGridComponent="true" editAsync="false" alwaysSelectable="false" keepState="false">
  212.  
  213.  
  214.                                 <datasource>
  215.                                     <freeQuery connection-key="vitruvio">
  216.                                         <![CDATA[
  217.                                                 SELECT
  218.                                                     ORDEM
  219.                                                     , NOME
  220.                                                     , VALOR
  221.                                                     , VENDA
  222.                                                     , CAST((CASE WHEN (VALOR is null OR VALOR = 0 OR VENDA = 0 OR VENDA is null) THEN null ELSE ((VALOR/VENDA)*100) END) AS DECIMAL(15,2)) porcentagem    
  223.                                             FROM (
  224.                                                 SELECT
  225.                                                     a.*,
  226.                                                     (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                     
  227.                                                                     FROM EX_ORCAMENTO_VENDAS
  228.                                                                     WHERE
  229.                                                                         1 = 1
  230.                                                                         and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  231.                                                                         and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}) ) AS VENDA      
  232.                                                 FROM (
  233.                                                             SELECT
  234.                                                                 1 AS ORDEM
  235.                                                                 , 'VENDAS' AS NOME
  236.                                                                 , NULL AS VALOR
  237.                                                             FROM DUAL
  238.                                                        
  239.                                                         UNION ALL
  240.                                                        
  241.                                                             SELECT
  242.                                                                 1.1 AS ORDEM
  243.                                                                 , '[+] Venda de Mercadoria' AS NOME
  244.                                                                 , (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  245.                                                                     FROM EX_ORCAMENTO_VENDAS
  246.                                                                     WHERE
  247.                                                                         1 = 1
  248.                                                                         and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  249.                                                                         and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}) ) AS VALOR    
  250.                                                             FROM DUAL
  251.                                                            
  252.                                                         UNION ALL
  253.                                                        
  254.                                                             SELECT
  255.                                                                 1.2 AS ORDEM
  256.                                                                 , '[-] CMV' AS NOME
  257.                                                                 , (SELECT CAST(SUM(NVL(VALOR_TOTAL,0))*0.70 AS DECIMAL(15,2))                  
  258.                                                                     FROM EX_ORCAMENTO_VENDAS
  259.                                                                     WHERE
  260.                                                                         1 = 1
  261.                                                                         and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  262.                                                                         and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}) ) AS VALOR    
  263.                                                             FROM DUAL
  264.                                                        
  265.                                                         UNION ALL
  266.                                                        
  267.                                                             SELECT
  268.                                                                 1.3 AS ORDEM
  269.                                                                 , '[=] Lucro Bruto' AS NOME
  270.                                                                 , (SELECT CAST(SUM(NVL(VALOR_TOTAL,0))*0.30 AS DECIMAL(15,2))                  
  271.                                                                     FROM EX_ORCAMENTO_VENDAS
  272.                                                                     WHERE
  273.                                                                         1 = 1
  274.                                                                         and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  275.                                                                         and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}) ) AS VALOR    
  276.                                                             FROM DUAL
  277.                                                            
  278.                                                         UNION ALL
  279.                                                        
  280.                                                             SELECT
  281.                                                                 1.5 AS ORDEM
  282.                                                                 , '' AS NOME
  283.                                                                 , NULL AS VALOR        
  284.                                                             FROM DUAL
  285.                                                            
  286.                                                         UNION ALL
  287.                                                        
  288.                                                             SELECT
  289.                                                                 2 AS ORDEM
  290.                                                                 , 'RECEITAS NÃO OPERACIONAIS' AS NOME
  291.                                                                 , NULL AS VALOR        
  292.                                                             FROM DUAL  
  293.                                                        
  294.                                                         UNION ALL
  295.                                                        
  296.                                                             SELECT
  297.                                                                 2.1 AS ORDEM
  298.                                                                 , '[+] Total Receitas Não Operacionais' AS NOME
  299.                                                                 , (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  300.                                                                 FROM EX_ORCAMENTO_PLANO_CONTA
  301.                                                                 WHERE
  302.                                                                     1 = 1
  303.                                                                     and INF_FINANCEIRA = 2  /*Receitas Não Operacionais*/
  304.                                                                     and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  305.                                                                     and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}) ) AS VALOR    
  306.                                                             FROM DUAL        
  307.                                                                
  308.                                                         UNION ALL
  309.                                                        
  310.                                                             SELECT
  311.                                                                 2.2 AS ORDEM
  312.                                                                 , '' AS NOME
  313.                                                                 , NULL AS VALOR        
  314.                                                             FROM DUAL  
  315.                                                            
  316.                                                         UNION ALL
  317.                                                        
  318.                                                             SELECT
  319.                                                                 3 AS ORDEM
  320.                                                                 , 'IMPOSTOS' AS NOME
  321.                                                                 , NULL AS VALOR        
  322.                                                             FROM DUAL
  323.                                                            
  324.                                                         UNION ALL
  325.                                                        
  326.                                                             SELECT
  327.                                                                 3.1 AS ORDEM
  328.                                                                 , '[-] Impostos' AS NOME
  329.                                                                 , (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  330.                                                                 FROM EX_ORCAMENTO_PLANO_CONTA
  331.                                                                 WHERE
  332.                                                                     1 = 1
  333.                                                                     and INF_FINANCEIRA = 9  /*Impostos*/
  334.                                                                     and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  335.                                                                     and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}) ) AS VALOR    
  336.                                                             FROM DUAL        
  337.                                                            
  338.                                                            
  339.                                                         UNION ALL
  340.                                                        
  341.                                                             SELECT
  342.                                                                 3.2 AS ORDEM
  343.                                                                 , '' AS NOME
  344.                                                                 , NULL AS VALOR        
  345.                                                             FROM DUAL
  346.                                                            
  347.                                                         UNION ALL
  348.                                                        
  349.                                                             SELECT
  350.                                                                 4 AS ORDEM
  351.                                                                 , 'DESPESAS OPERACIONAIS' AS NOME
  352.                                                                 , NULL AS VALOR        
  353.                                                             FROM DUAL
  354.                                                            
  355.                                                         UNION ALL
  356.                                                        
  357.                                                             SELECT
  358.                                                                 4.1 AS ORDEM
  359.                                                                 , '[-] Despesas Operacionais (Bruto)' AS NOME
  360.                                                                 , (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  361.                                                                 FROM EX_ORCAMENTO_PLANO_CONTA
  362.                                                                 WHERE
  363.                                                                     1 = 1  
  364.                                                                     AND INF_FINANCEIRA = 3 /*Despesas Operacionais (Bruto)*/
  365.                                                                     and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  366.                                                                     and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}))  AS VALOR        
  367.                                                             FROM DUAL  
  368.                                                    
  369.                                                         UNION ALL
  370.                                                        
  371.                                                             SELECT
  372.                                                                 4.2 AS ORDEM
  373.                                                                 , '[-] Juros e Acréscimos Financeiros' AS NOME
  374.                                                                 , (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  375.                                                                 FROM EX_ORCAMENTO_OUTROS
  376.                                                                 WHERE
  377.                                                                     1 = 1  
  378.                                                                     AND INF_FINANCEIRA = 6 /*Juros e Acréscimos Financeiros*/
  379.                                                                     and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  380.                                                                     and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}))  AS VALOR          
  381.                                                             FROM DUAL
  382.                                                    
  383.                                                         UNION ALL
  384.                                                        
  385.                                                             SELECT
  386.                                                                 4.3 AS ORDEM
  387.                                                                 , '[+] Descontos e Créditos Recebidos' AS NOME
  388.                                                                 , (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  389.                                                                 FROM EX_ORCAMENTO_OUTROS
  390.                                                                 WHERE
  391.                                                                     1 = 1  
  392.                                                                     AND INF_FINANCEIRA = 7 /*Descontos e Créditos Recebidos*/
  393.                                                                     and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  394.                                                                     and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}))  AS VALOR        
  395.                                                             FROM DUAL
  396.                                                    
  397.                                                         UNION ALL
  398.                                                        
  399.                                                             SELECT
  400.                                                                 4.4 AS ORDEM
  401.                                                                 , '[-] Taxas de Cartões' AS NOME
  402.                                                                 , NULL AS VALOR        
  403.                                                             FROM DUAL
  404.                                                    
  405.                                                         UNION ALL
  406.                                                        
  407.                                                             SELECT
  408.                                                                 4.5 AS ORDEM
  409.                                                                 , '[-] Ajuste de Estoque (Consumo, Perdas, etc)' AS NOME
  410.                                                                 , (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  411.                                                                 FROM EX_ORCAMENTO_OUTROS
  412.                                                                 WHERE
  413.                                                                     1 = 1  
  414.                                                                     AND INF_FINANCEIRA = 5 /*Ajuste de Estoque*/
  415.                                                                     and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  416.                                                                     and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}))  AS VALOR        
  417.                                                             FROM DUAL
  418.                                                        
  419.                                                         UNION ALL
  420.                                                        
  421.                                                             SELECT
  422.                                                                 4.6 AS ORDEM
  423.                                                                 , '[=] Total das Despesas Operacionais' AS NOME
  424.                                                                 , (SELECT SUM(VALOR)
  425.                                                                     FROM (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2)) AS VALOR                   
  426.                                                                             FROM EX_ORCAMENTO_OUTROS
  427.                                                                             WHERE
  428.                                                                             1 = 1  
  429.                                                                             AND INF_FINANCEIRA IN (2,9,3) /**/
  430.                                                                             and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  431.                                                                             and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})
  432.                                                                             UNION ALL
  433.                                                                             SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                  
  434.                                                                             FROM EX_ORCAMENTO_OUTROS
  435.                                                                             WHERE
  436.                                                                             1 = 1  
  437.                                                                             AND INF_FINANCEIRA IN (5,6,7) /**/
  438.                                                                             and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  439.                                                                             and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})))        
  440.                                                                     FROM DUAL
  441.                                                            
  442.                                                         UNION ALL
  443.                                                        
  444.                                                             SELECT
  445.                                                                 4.7 AS ORDEM
  446.                                                                 , '' AS NOME
  447.                                                                 , NULL AS VALOR        
  448.                                                             FROM DUAL
  449.                                                            
  450.                                                         UNION ALL
  451.                                                        
  452.                                                             SELECT
  453.                                                             5 AS ORDEM
  454.                                                             , 'LUCRO OPERACIONAL = (Lucro Bruto + Receitas Não Operacionais - Impostos - Despesas Operacionais)' AS NOME
  455.                                                             , NULL AS VALOR              
  456.                                                             FROM DUAL
  457.                                                            
  458.                                                         UNION ALL
  459.                                                        
  460.                                                             SELECT
  461.                                                                 5.1 AS ORDEM
  462.                                                                 , '[=] Lucro Operacional' AS NOME
  463.                                                                 , (SELECT (SELECT CAST(SUM(NVL(VALOR_TOTAL,0))*0.30 AS DECIMAL(15,2))                  
  464.                                                                 FROM EX_ORCAMENTO_VENDAS
  465.                                                                 WHERE
  466.                                                                 1 = 1
  467.                                                                 and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  468.                                                                 and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}) )
  469.                                                                 + (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  470.                                                                 FROM EX_ORCAMENTO_PLANO_CONTA
  471.                                                                 WHERE
  472.                                                                     1 = 1
  473.                                                                     and INF_FINANCEIRA = 2  /*Receitas Não Operacionais*/
  474.                                                                     and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  475.                                                                     and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}) )
  476.                                                                 - (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  477.                                                                 FROM EX_ORCAMENTO_PLANO_CONTA
  478.                                                                 WHERE
  479.                                                                     1 = 1
  480.                                                                     and INF_FINANCEIRA = 9  /*Impostos*/
  481.                                                                     and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  482.                                                                     and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}) )
  483.                                                                 - (SELECT SUM(VALOR)
  484.                                                                 FROM (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2)) AS VALOR                   
  485.                                                                        FROM EX_ORCAMENTO_OUTROS
  486.                                                                        WHERE
  487.                                                                        1 = 1   
  488.                                                                        AND INF_FINANCEIRA IN (2,9,3) /**/
  489.                                                                        and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  490.                                                                        and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})
  491.                                                                        UNION ALL
  492.                                                                        SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  493.                                                                        FROM EX_ORCAMENTO_OUTROS
  494.                                                                        WHERE
  495.                                                                        1 = 1   
  496.                                                                        AND INF_FINANCEIRA IN (5,6,7) /**/
  497.                                                                        and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  498.                                                                        and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})))
  499.                                                                        FROM DUAL) AS VALOR        
  500.                                                             FROM DUAL  
  501.                                                        
  502.                                                         UNION ALL
  503.                                                        
  504.                                                             SELECT
  505.                                                                 5.2 AS ORDEM
  506.                                                                 , '' AS NOME
  507.                                                                 , NULL AS VALOR        
  508.                                                             FROM DUAL  
  509.                                                            
  510.                                                         UNION ALL
  511.                                                        
  512.                                                             SELECT
  513.                                                                 6 AS ORDEM
  514.                                                                 , 'INVESTIMENTOS' AS NOME
  515.                                                                 , NULL AS VALOR        
  516.                                                             FROM DUAL
  517.                                                            
  518.                                                         UNION ALL
  519.                                                        
  520.                                                             SELECT
  521.                                                                 6.1 AS ORDEM
  522.                                                                 , '[-] Investimentos' AS NOME
  523.                                                                 ,  (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                  
  524.                                                                 FROM EX_ORCAMENTO_PLANO_CONTA
  525.                                                                 WHERE
  526.                                                                     1 = 1  
  527.                                                                     AND INF_FINANCEIRA = 4 /*Investimentos*/
  528.                                                                     and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  529.                                                                     and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})) AS VALOR      
  530.                                                             FROM DUAL  
  531.                                                            
  532.                                                         UNION ALL
  533.                                                        
  534.                                                             SELECT
  535.                                                                 8 AS ORDEM
  536.                                                                 , 'DISTRIBUIÇÃO DE PROVENTOS' AS NOME
  537.                                                                 , NULL AS VALOR        
  538.                                                             FROM DUAL
  539.                                                            
  540.                                                         UNION ALL
  541.                                                        
  542.                                                             SELECT
  543.                                                                 8.1 AS ORDEM
  544.                                                                 , '[-] Distribuição de Proventos' AS NOME
  545.                                                                 , (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  546.                                                                 FROM EX_ORCAMENTO_PLANO_CONTA
  547.                                                                 WHERE
  548.                                                                     1 = 1  
  549.                                                                     AND INF_FINANCEIRA = 10 /*Distribuição de Proventos*/
  550.                                                                     and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  551.                                                                     and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})) AS VALOR        
  552.                                                             FROM DUAL  
  553.                                                            
  554.                                                         UNION ALL    
  555.                                                        
  556.                                                             SELECT
  557.                                                                 8.2 AS ORDEM
  558.                                                                 , '' AS NOME
  559.                                                                 , NULL AS VALOR        
  560.                                                             FROM DUAL
  561.                                                        
  562.                                                         UNION ALL
  563.                                                        
  564.                                                             SELECT
  565.                                                                 9 AS ORDEM
  566.                                                                 , 'RESULTADO FINAL = (Lucro Operacional - Investimentos - Proventos)' AS NOME
  567.                                                                 , NULL AS VALOR      
  568.                                                             FROM DUAL
  569.                                                            
  570.                                                         UNION ALL
  571.                                                        
  572.                                                             SELECT
  573.                                                                 9.1 AS ORDEM
  574.                                                                 , '[=] Resultado Final' AS NOME
  575.                                                                 , (SELECT (SELECT CAST(SUM(NVL(VALOR_TOTAL,0))*0.30 AS DECIMAL(15,2))                  
  576.                                                                 FROM EX_ORCAMENTO_VENDAS
  577.                                                                 WHERE
  578.                                                                 1 = 1
  579.                                                                 and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  580.                                                                 and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}) )
  581.                                                             + (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  582.                                                                 FROM EX_ORCAMENTO_PLANO_CONTA
  583.                                                                 WHERE
  584.                                                                 1 = 1
  585.                                                                 and INF_FINANCEIRA = 2  /*Receitas Não Operacionais*/
  586.                                                                 and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  587.                                                                 and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}) )
  588.                                                             - (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  589.                                                                 FROM EX_ORCAMENTO_PLANO_CONTA
  590.                                                                 WHERE
  591.                                                                 1 = 1
  592.                                                                 and INF_FINANCEIRA = 9  /*Impostos*/
  593.                                                                 and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  594.                                                                 and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}) )
  595.                                                             - (SELECT SUM(VALOR)
  596.                                                                 FROM (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2)) AS VALOR                   
  597.                                                                    FROM EX_ORCAMENTO_OUTROS
  598.                                                                    WHERE
  599.                                                                    1 = 1   
  600.                                                                    AND INF_FINANCEIRA IN (2,9,3) /**/
  601.                                                                    and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  602.                                                                    and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})
  603.                                                                    UNION ALL
  604.                                                                    SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  605.                                                                    FROM EX_ORCAMENTO_OUTROS
  606.                                                                    WHERE
  607.                                                                    1 = 1   
  608.                                                                    AND INF_FINANCEIRA IN (5,6,7) /**/
  609.                                                                    and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  610.                                                                    and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})))
  611.                                                                    FROM DUAL)
  612.                                                                     - (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  613.                                                                    FROM EX_ORCAMENTO_PLANO_CONTA
  614.                                                                    WHERE
  615.                                                                        1 = 1   
  616.                                                                        AND INF_FINANCEIRA = 4 /*Investimentos*/
  617.                                                                        and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  618.                                                                        and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}))
  619.                                                                     - (SELECT CAST(SUM(NVL(VALOR_TOTAL,0)) AS DECIMAL(15,2))                   
  620.                                                                     FROM EX_ORCAMENTO_PLANO_CONTA
  621.                                                                     WHERE
  622.                                                                         1 = 1  
  623.                                                                         AND INF_FINANCEIRA = 10 /*Distribuição de Proventos*/
  624.                                                                         and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  625.                                                                         and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO}))
  626.                                                                          AS VALOR            
  627.                                                             FROM DUAL  
  628.                                                 ) A
  629.                                             )
  630.                                             WHERE
  631.                                                 ORDEM NOT IN (1, 2, 3, 4, 5, 6, 7, 8, 9)    
  632.  
  633.                                                 ]]>
  634.                                     </freeQuery>
  635.                                 </datasource>
  636.  
  637.  
  638.                                 <key-field>ORDEM</key-field>
  639.  
  640.                                 <columns>
  641.  
  642.                                     <column name="NOME" caption="Informação Financeira" align="LEFT" />
  643.  
  644.                                     <column name="VALOR" caption="Total" format="#,##0.00" decimalSeparator="," groupingSeparator="." align="RIGHT" />
  645.  
  646.                                     <column name="PORCENTAGEM" caption="%" format="##0.00" decimalSeparator="," groupingSeparator="." align="RIGHT" />
  647.                                     <generated name="detalhesAction" cache="false" caption="">
  648.                                         <scriptColumnGenerator language="JavaScript">
  649.                                             <![CDATA[
  650.                                                          importClass(Packages.com.vaadin.ui.Notification);
  651.                                                          var lib = libService.loadScript('vaadinComponents');
  652.                                                        
  653.  
  654.                                                          function generate(itemId, columnId, item, container) {
  655.                                                             var ordem = item.getItemProperty('ORDEM').getValue();
  656.                                                              if(ordem == 1.1 || ordem == 2.1 || ordem == 3.1 || ordem == 4.1 ||
  657.                                                              ordem == 4.2 || ordem == 4.3 ||  ordem == 4.4 || ordem == 4.5 ||
  658.                                                              ordem == 4.6 || ordem == 6.1 || ordem == 8.1)
  659.                                                             {
  660.                                                                 var btn = lib.button(null, function() {
  661.                                                                     ordem = item.getItemProperty('ORDEM').getValue();
  662.  
  663.                                                                     if(ordem == 1.1){
  664.                                                                        engine.getLayout('windowVendaMercadoria').showWindow();
  665.                                                                     }else if(ordem == 1.2){
  666.                                                                        engine.getLayout('windowVendaMercadoria').showWindow();
  667.                                                                     }else if(ordem == 1.3){
  668.                                                                        engine.getLayout('windowVendaMercadoria').showWindow();
  669.                                                                     }else if(ordem == 2.1){
  670.                                                                        engine.getLayout('windowReceitasNaoOperacionais').showWindow();
  671.                                                                     }else if(ordem == 3.1){
  672.                                                                        engine.getLayout('windowImpostos').showWindow();
  673.                                                                     }else if(ordem == 4.1){
  674.                                                                        engine.getLayout('windowDespesasOperacionais').showWindow();
  675.                                                                     }else if(ordem == 4.2){
  676.                                                                        engine.getLayout('windowJurosAcrescimos').showWindow();
  677.                                                                     }else if(ordem == 4.3){
  678.                                                                        engine.getLayout('windowDescontosCreditos').showWindow();
  679.                                                                     }else if(ordem == 4.4){
  680.                                                                        engine.getLayout('windowVendaMercadoria').showWindow();
  681.                                                                     }else if(ordem == 4.5){
  682.                                                                        engine.getLayout('windowAjusteEstoque').showWindow();
  683.                                                                     }else if(ordem == 4.6){
  684.                                                                        engine.getLayout('windowDespesasOperacionais').showWindow();
  685.                                                                     }else if(ordem == 5.1){
  686.                                                                        engine.getLayout('windowVendaMercadoria').showWindow();
  687.                                                                     }else if(ordem == 6.1){
  688.                                                                        engine.getLayout('windowInvestimentos').showWindow();
  689.                                                                     }else if(ordem == 8.1){
  690.                                                                        engine.getLayout('windowProventos').showWindow();
  691.                                                                     }
  692.                                                                    
  693.                                                                 });
  694.                                                                 btn.setIcon(FontAwesome.SEARCH);
  695.                                                                 btn.addStyleName(VitruvioTheme.BUTTON_BORDERLESS_COLORED);
  696.                                                                 btn.addStyleName(VitruvioTheme.BUTTON_ICON_ONLY);
  697.                                                                 btn.addStyleName(VitruvioTheme.BUTTON_TINY);                                           
  698.                                                                 btn.setDescription('Visualizar mais informações');
  699.                                                                 return btn;
  700.                                                             }                    
  701.                                                          }
  702.                                                       ]]>
  703.                                         </scriptColumnGenerator>
  704.                                     </generated>
  705.  
  706.                                 </columns>
  707.  
  708.                                 <bind>
  709.                                     <parameter value-type="number" defaultValue="0" parameterName="EMPRESA" field-ref="empresa" />
  710.                                     <parameter value-type="number" defaultValue="1800" parameterName="ANO" field-ref="filtroAnoCompetencia" />
  711.                                 </bind>
  712.  
  713.  
  714.                                 <styleGenerator>
  715.                                     <scriptGenerator language="JavaScript">
  716.                                         <![CDATA[
  717.                                                         function getStyle(itemId, columnId, item) {
  718.                                                             if (item) {
  719.                                                                 var ordem = parseFloat(item.getItemProperty('ORDEM').getValue());                                                                                                                                                                                                                      
  720.                                                                 if (ordem == 1.3 || ordem == 5.1 || ordem == 9.1) {
  721.                                                                     return 'background-dark-gray';
  722.                                                                 }                                                              
  723.                                                                                                                                                
  724.                                                             }
  725.  
  726.                                                         }
  727.                                                     ]]>
  728.                                     </scriptGenerator>
  729.                                 </styleGenerator>
  730.  
  731.                             </DBTable>
  732.  
  733.                         </VerticalLayout>
  734.  
  735.                     </VerticalLayout>
  736.                 </ComplexPanel>
  737.  
  738.                 <WindowLayout isLayout="true" id="windowVendaMercadoria" windowWidth="100%" windowHeight="90%" windowClosable="true" windowModal="true" caption="Venda de Mercadoria">
  739.                     <VerticalLayout width="100%" margin="true" spacing="true" cssAlign="top: 0px; left: 0px;">
  740.                         <!-- ORÇAMENTO - MENSAL -  NIVEL 1 - Vendas -->
  741.  
  742.                         <ComplexPanel caption="Venda de Mercadoria" id="dreMensalExplosao1_Vendas" width="100%" height="100%" align="TOP_LEFT">
  743.  
  744.                             <VerticalLayout width="100%">
  745.  
  746.                                 <DBTable id="db_orcamento_vendas" type="number" width="100%" height="100%" required="false" multivalue="false" visible="true" editDisposition="MODAL" exportXLS="true" debugSQL="true" gridSelectable="true" updatable="true" editable="true" useGridComponent="true" editAsync="false" alwaysSelectable="false" keepState="false" align="MIDDLE_CENTER" showRowCount="true" frozenColumns="6">
  747.  
  748.                                     <datasource>
  749.                                         <freeQuery connection-key="vitruvio">
  750.                                             <![CDATA[
  751.                                                         SELECT
  752.                                                             NVL(VALOR_TOTAL,0) AS VALOR_TOTAL
  753.                                                             , JAN
  754.                                                             , FEV
  755.                                                             , MAR
  756.                                                             , ABR
  757.                                                             , MAI
  758.                                                             , JUN
  759.                                                             , JUL
  760.                                                             , AGO
  761.                                                             , SETE
  762.                                                             , OUT
  763.                                                             , NOV
  764.                                                             , DEZ
  765.                                                             , RESPONSAVEL_1
  766.                                                             , RESPONSAVEL_2
  767.                                                             , LOJA
  768.                                                             , DESCRICAO
  769.                                                             , CODIGO
  770.                                                             , SEQUENCIAL
  771.                                                             , ANO                                                            
  772.                                                         FROM EX_ORCAMENTO_VENDAS
  773.                                                         WHERE
  774.                                                             1 = 1
  775.                                                             and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  776.                                                             and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})
  777.                                                         ORDER BY LOJA, DESCRICAO                                                       
  778.  
  779.                                                     ]]>
  780.                                         </freeQuery>
  781.                                     </datasource>
  782.                                     <key-field>SEQUENCIAL</key-field>
  783.                                     <columns>
  784.                                         <column name="LOJA" caption="Loja" expand-ratio="0.2" />
  785.                                         <column name="ANO" caption="Ano" expand-ratio="0.2" />
  786.  
  787.                                         <column name="CODIGO" caption="Código do comprador" format="00000" expand-ratio="0.3" />
  788.  
  789.                                         <column name="DESCRICAO" caption="Nome" expand-ratio="0.4" />
  790.  
  791.                                         <generated name="RESPONSAVEL_1" caption="Responsável (1)" cache="false" expand-ratio="0.3">
  792.                                             <scriptColumnGenerator language="JavaScript">
  793.                                                 <![CDATA[
  794.                                                             importClass(Packages.br.com.davinti.base.vaadin.components.layout.MessageBox);
  795.                                                             importClass(Packages.com.vaadin.ui.ComboBox);
  796.                                                             importClass(Packages.br.com.davinti.base.vaadin.components.data.container.ContainerUtils);
  797.                                                             importClass(Packages.com.vaadin.data.Property);
  798.                                                                                                                        
  799.                                                             var setResponsavel = function(sequencial, valor) {
  800.  
  801.                                                                 var db = libService.loadScript('db');
  802.                                                                 var dbVitruvio = new db('vitruvio');                                                                   
  803.                                                                 var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET RESPONSAVEL_1 = :valor where sequencial = :sequencial"                                                                                                                                   
  804.                                                                 var param = {
  805.                                                                         sequencial: sequencial,                                                                    
  806.                                                                         valor: valor
  807.                                                                 };
  808.                                                                                                                                
  809.                                                                 var row = dbVitruvio.update(sqlAtualiza, param);
  810.                                                             };
  811.                                                            
  812.                                                             function generate(itemId, columnId, item, container) {
  813.                                                                
  814.                                                                 var sql = "select LOGIN, NOME from NAUTH.usuario ORDER BY NOME";
  815.                                                                
  816.                                                                 var ds = vQueryService.executeQuery('nauth', sql);
  817.                                                                
  818.                                                                 if(ds == null){
  819.                                                                     return null;
  820.                                                                 }
  821.                                                                
  822.                                                                 var map = new java.util.LinkedHashMap();
  823.                                                                
  824.                                                                 while(ds.next()) {
  825.                                                                     map.put(ds.getString('LOGIN'), ds.getString('NOME'));
  826.                                                                 }
  827.                                                                
  828.                                                                 var combo = new ComboBox();
  829.                                                                 combo.setWidth("100%");
  830.                                                                 ContainerUtils.createAndConfigureContainerFromCaptionMap(map, combo);
  831.                                                                
  832.                                                                 var linha = item;
  833.                                                                
  834.                                                                 if(linha.getItemProperty('RESPONSAVEL_1').getValue()) {
  835.                                                                     combo.setValue(linha.getItemProperty('RESPONSAVEL_1').getValue());
  836.                                                                 }                                  
  837.                                                                
  838.                                                                 combo.addValueChangeListener(new Property.ValueChangeListener() {
  839.                                                                     valueChange: function(event) {
  840.                                                                         println(event.getProperty().getValue());                                                                                                                                                                                                               
  841.                                                                         setResponsavel(
  842.                                                                             linha.getItemProperty('SEQUENCIAL').getValue().longValue(),                                                                        
  843.                                                                             event.getProperty().getValue()                             
  844.                                                                         );                                                                                                                                                                                 
  845.                                                                     },
  846.                                                                     hashCode: function() {
  847.                                                                         return combo.hashCode();
  848.                                                                     }
  849.                                                                 });
  850.                                                                
  851.                                                                 return combo;
  852.                                                             }
  853.                                                         ]]>
  854.                                             </scriptColumnGenerator>
  855.                                         </generated>
  856.  
  857.                                         <column name="RESPONSAVEL_2" caption="Responsável (2)" expand-ratio="0.4" editable="true" />
  858.  
  859.                                         <column name="JAN" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Janeiro" expand-ratio="0.2" editable="true" />
  860.  
  861.                                         <column name="FEV" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Fevereiro" expand-ratio="0.2" editable="true" />
  862.  
  863.                                         <column name="MAR" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Março" expand-ratio="0.2" editable="true" />
  864.  
  865.                                         <column name="ABR" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Abril" expand-ratio="0.2" editable="true" />
  866.  
  867.                                         <column name="MAI" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Maio" expand-ratio="0.2" editable="true" />
  868.  
  869.                                         <column name="JUN" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Junho" expand-ratio="0.2" editable="true" />
  870.  
  871.                                         <column name="JUL" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Julho" expand-ratio="0.2" editable="true" />
  872.  
  873.                                         <column name="AGO" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Agosto" expand-ratio="0.2" editable="true" />
  874.  
  875.                                         <column name="SETE" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Setembro" expand-ratio="0.2" editable="true" />
  876.  
  877.                                         <column name="OUT" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Outubro" expand-ratio="0.2" editable="true" />
  878.  
  879.                                         <column name="NOV" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Novembro" expand-ratio="0.2" editable="true" />
  880.  
  881.                                         <column name="DEZ" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Dezembro" expand-ratio="0.2" editable="true" />
  882.  
  883.                                         <column name="VALOR_TOTAL" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Total" expand-ratio="0.6" editable="false" />
  884.  
  885.                                     </columns>
  886.  
  887.                                     <bind>
  888.                                         <parameter value-type="number" defaultValue="0" parameterName="EMPRESA" field-ref="empresa" />
  889.                                         <parameter value-type="number" defaultValue="1800" parameterName="ANO" field-ref="filtroAnoCompetencia" />
  890.                                     </bind>
  891.  
  892.                                     <events>
  893.                                         <itemChange>
  894.                                             <script language="JavaScript">
  895.                                                 <![CDATA[
  896.                                                             var db = libService.loadScript('db');
  897.                                                             var dbVitruvio = new db('vitruvio');
  898.                                                            
  899.                                                             function updateValorMes(sequencial, valor, mes) {
  900.                                                                 dbVitruvio.transaction(function() {
  901.                                                                     if (mes == 'JAN'){
  902.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET JAN = :valor where sequencial = :sequencial";                                            
  903.                                                                     } else if (mes == 'FEV'){
  904.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET FEV = :valor where sequencial = :sequencial";                                            
  905.                                                                     } else if (mes == 'MAR'){
  906.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET MAR = :valor where sequencial = :sequencial";                                            
  907.                                                                     } else if (mes == 'ABR'){
  908.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET ABR = :valor where sequencial = :sequencial";                                            
  909.                                                                     } else if (mes == 'MAI'){
  910.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET MAI = :valor where sequencial = :sequencial";                                            
  911.                                                                     } else if (mes == 'JUN'){
  912.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET JUN = :valor where sequencial = :sequencial";                                            
  913.                                                                     } else if (mes == 'JUL'){
  914.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET JUL = :valor where sequencial = :sequencial";                                            
  915.                                                                     } else if (mes == 'AGO'){
  916.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET AGO = :valor where sequencial = :sequencial";                                            
  917.                                                                     } else if (mes == 'SETE'){
  918.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET SETE = :valor where sequencial = :sequencial";                                           
  919.                                                                     } else if (mes == 'OUT'){
  920.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET OUT = :valor where sequencial = :sequencial";                                            
  921.                                                                     } else if (mes == 'NOV'){
  922.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET NOV = :valor where sequencial = :sequencial";                                            
  923.                                                                     } else if (mes == 'DEZ'){
  924.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET DEZ = :valor where sequencial = :sequencial";                                            
  925.                                                                     }          
  926.                                                                     var param = {
  927.                                                                         sequencial: sequencial,
  928.                                                                         valor: valor                                                                       
  929.                                                                     };
  930.                                                                     this.update(sqlAtualiza, param);
  931.                                                                 });                                                        
  932.                                                             };
  933.                                                            
  934.                                                             function updateResponsavel2(sequencial, valor) {                                                           
  935.                                                                 dbVitruvio.transaction(function() {
  936.                                                                     var sqlAtualiza = "UPDATE EX_ORCAMENTO_VENDAS SET RESPONSAVEL_2 = :valor where sequencial = :sequencial";
  937.                                                                     var param = {
  938.                                                                         sequencial: sequencial,
  939.                                                                         valor: valor                                                                       
  940.                                                                     };
  941.                                                                     this.update(sqlAtualiza, param);
  942.                                                                 });                                                        
  943.                                                             };
  944.                                                            
  945.                                                             function updateTotal(sequencial) {
  946.                                                                                                                            
  947.                                                                 dbVitruvio.transaction(function() {
  948.                                                                     var sqlAtualiza =
  949.                                                                         "UPDATE EX_ORCAMENTO_VENDAS SET VALOR_TOTAL = ((NVL(JAN,0)) + (NVL(FEV,0)) + (NVL(MAR,0)) + (NVL(ABR,0)) + (NVL(MAI,0)) + (NVL(JUN,0)) + (NVL(JUL,0)) + (NVL(AGO,0)) + (NVL(SETE,0)) + (NVL(OUT,0)) + (NVL(NOV,0)) + (NVL(DEZ,0))) where sequencial = :sequencial";
  950.                                                                     var param = {
  951.                                                                         sequencial: sequencial                                                                                     
  952.                                                                     };
  953.                                                                     println(sqlAtualiza);                                                                  
  954.                                                                     this.update(sqlAtualiza, param);
  955.                                                                 });                                                        
  956.                                                             };
  957.                                                        
  958.                                                             function onChange(event) {
  959.                                                                 if (event.isChanged('JAN')) {                                                                                                                      
  960.                                                                     updateValorMes(
  961.                                                                         event.getItemId(),
  962.                                                                         event.getField('JAN').getConvertedValue(),
  963.                                                                         'JAN'
  964.                                                                     )
  965.                                                                 }
  966.                                                                 if (event.isChanged('FEV')) {                                                                                                                      
  967.                                                                     updateValorMes(
  968.                                                                         event.getItemId(),
  969.                                                                         event.getField('FEV').getConvertedValue(),
  970.                                                                         'FEV'
  971.                                                                     )
  972.                                                                 }
  973.                                                                 if (event.isChanged('MAR')) {                                                                                                                      
  974.                                                                     updateValorMes(
  975.                                                                         event.getItemId(),
  976.                                                                         event.getField('MAR').getConvertedValue(),
  977.                                                                         'MAR'
  978.                                                                     )
  979.                                                                 }
  980.                                                                 if (event.isChanged('ABR')) {                                                                                                                      
  981.                                                                     updateValorMes(
  982.                                                                         event.getItemId(),
  983.                                                                         event.getField('ABR').getConvertedValue(),
  984.                                                                         'ABR'
  985.                                                                     )
  986.                                                                 }
  987.                                                                 if (event.isChanged('MAI')) {                                                                                                                      
  988.                                                                     updateValorMes(
  989.                                                                         event.getItemId(),
  990.                                                                         event.getField('MAI').getConvertedValue(),
  991.                                                                         'MAI'
  992.                                                                     )
  993.                                                                 }
  994.                                                                 if (event.isChanged('JUN')) {                                                                                                                      
  995.                                                                     updateValorMes(
  996.                                                                         event.getItemId(),
  997.                                                                         event.getField('JUN').getConvertedValue(),
  998.                                                                         'JUN'
  999.                                                                     )
  1000.                                                                 }
  1001.                                                                 if (event.isChanged('JUL')) {                                                                                                                      
  1002.                                                                     updateValorMes(
  1003.                                                                         event.getItemId(),
  1004.                                                                         event.getField('JUL').getConvertedValue(),
  1005.                                                                         'JUL'
  1006.                                                                     )
  1007.                                                                 }                                                              
  1008.                                                                 if (event.isChanged('AGO')) {                                                                                                                      
  1009.                                                                     updateValorMes(
  1010.                                                                         event.getItemId(),
  1011.                                                                         event.getField('AGO').getConvertedValue(),
  1012.                                                                         'AGO'
  1013.                                                                     )
  1014.                                                                 }
  1015.                                                                 if (event.isChanged('SETE')) {                                                                                                                     
  1016.                                                                     updateValorMes(
  1017.                                                                         event.getItemId(),
  1018.                                                                         event.getField('SETE').getConvertedValue(),
  1019.                                                                         'SETE'
  1020.                                                                     )
  1021.                                                                 }
  1022.                                                                 if (event.isChanged('OUT')) {                                                                                                                      
  1023.                                                                     updateValorMes(
  1024.                                                                         event.getItemId(),
  1025.                                                                         event.getField('OUT').getConvertedValue(),
  1026.                                                                         'OUT'
  1027.                                                                     )
  1028.                                                                 }
  1029.                                                                 if (event.isChanged('NOV')) {                                                                                                                      
  1030.                                                                     updateValorMes(
  1031.                                                                         event.getItemId(),
  1032.                                                                         event.getField('NOV').getConvertedValue(),
  1033.                                                                         'NOV'
  1034.                                                                     )
  1035.                                                                 }
  1036.                                                                 if (event.isChanged('DEZ')) {                                                                                                                      
  1037.                                                                     updateValorMes(
  1038.                                                                         event.getItemId(),
  1039.                                                                         event.getField('DEZ').getConvertedValue(),
  1040.                                                                         'DEZ'
  1041.                                                                     )
  1042.                                                                 }
  1043.                                                                 if (event.isChanged('RESPONSAVEL_2')) {
  1044.                                                                     updateResponsavel2(
  1045.                                                                         event.getItemId(),
  1046.                                                                         event.getField('RESPONSAVEL_2').getConvertedValue()
  1047.                                                                     )
  1048.                                                                 }                                                                                          
  1049.                                                                 updateTotal(event.getItemId());
  1050.                                                                 event.commit();
  1051.                                                                    
  1052.                                                                 engine.getField('db_orcamento_vendas').refresh();
  1053.                                                                 engine.getField('db_dreConsolidada').refresh();    
  1054.                                                             }
  1055.                                                         ]]>
  1056.                                             </script>
  1057.                                         </itemChange>
  1058.                                     </events>
  1059.  
  1060.                                     <styleGenerator>
  1061.                                         <scriptGenerator language="JavaScript">
  1062.                                             <![CDATA[
  1063.                                                             function getStyle(itemId, columnId, item) {
  1064.                                                                 if (columnId == 'VALOR_TOTAL') {
  1065.                                                                       return 'background-dark-gray';                                                                                                                                                                                                               
  1066.                                                                 }
  1067.                                                             }
  1068.                                                         ]]>
  1069.                                         </scriptGenerator>
  1070.                                     </styleGenerator>
  1071.  
  1072.  
  1073.                                 </DBTable>
  1074.  
  1075.                             </VerticalLayout>
  1076.                         </ComplexPanel>
  1077.                     </VerticalLayout>
  1078.                 </WindowLayout>
  1079.                 <WindowLayout isLayout="true" id="windowReceitasNaoOperacionais" windowWidth="100%" windowHeight="90%" windowClosable="true" windowModal="true" caption="Receitas Não Operacionais">
  1080.                     <VerticalLayout width="100%" margin="true" spacing="true" cssAlign="top: 0px; left: 0px;">
  1081.                         <!-- ORÇAMENTO - MENSAL -  NIVEL 1 - Receitas Não Operacionais -->
  1082.                         <ComplexPanel caption="Receitas Não Operacionais" id="pa_orcamento_receitasNaoOperacionais" width="100%" align="TOP_LEFT">
  1083.  
  1084.                             <VerticalLayout width="100%">
  1085.  
  1086.                                 <DBTable id="db_orcamento_receitasNaoOperacionais" type="number" width="100%" height="100%" required="false" multivalue="false" visible="true" editDisposition="MODAL" exportXLS="true" debugSQL="true" gridSelectable="true" updatable="true" editable="true" useGridComponent="true" editAsync="false" alwaysSelectable="false" keepState="false" align="MIDDLE_CENTER" showRowCount="true" frozenColumns="6">
  1087.  
  1088.                                     <datasource>
  1089.                                         <freeQuery connection-key="vitruvio">
  1090.                                             <![CDATA[
  1091.                                                         SELECT
  1092.                                                             NVL(VALOR_TOTAL,0) AS VALOR_TOTAL
  1093.                                                             , JAN
  1094.                                                             , FEV
  1095.                                                             , MAR
  1096.                                                             , ABR
  1097.                                                             , MAI
  1098.                                                             , JUN
  1099.                                                             , JUL
  1100.                                                             , AGO
  1101.                                                             , SETE
  1102.                                                             , OUT
  1103.                                                             , NOV
  1104.                                                             , DEZ
  1105.                                                             , RESPONSAVEL_1
  1106.                                                             , RESPONSAVEL_2
  1107.                                                             , LOJA
  1108.                                                             , SEQUENCIAL
  1109.                                                             , ANO  
  1110.                                                             , P1
  1111.                                                             , P1_ID_FULL
  1112.                                                             , P1_DESC_PLANO_CONTA                                                        
  1113.                                                         FROM EX_ORCAMENTO_PLANO_CONTA
  1114.                                                         WHERE
  1115.                                                             1 = 1
  1116.                                                             and INF_FINANCEIRA = 2  /*Receitas Não Operacionais*/
  1117.                                                             and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  1118.                                                             and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})
  1119.                                                         ORDER BY LOJA, P1                                                      
  1120.  
  1121.                                                     ]]>
  1122.                                         </freeQuery>
  1123.                                     </datasource>
  1124.                                     <key-field>SEQUENCIAL</key-field>
  1125.                                     <columns>
  1126.                                         <column name="LOJA" caption="Loja" expand-ratio="0.2" />
  1127.                                         <column name="ANO" caption="Ano" expand-ratio="0.2" />
  1128.  
  1129.                                         <column name="P1_ID_FULL" caption="Plano de conta" format="00000" expand-ratio="0.3" />
  1130.  
  1131.                                         <column name="P1_DESC_PLANO_CONTA" caption="Descritivo" expand-ratio="0.4" />
  1132.  
  1133.                                         <generated name="RESPONSAVEL_1" caption="Responsável (1)" cache="false" expand-ratio="0.3">
  1134.                                             <scriptColumnGenerator language="JavaScript">
  1135.                                                 <![CDATA[
  1136.                                                             importClass(Packages.br.com.davinti.base.vaadin.components.layout.MessageBox);
  1137.                                                             importClass(Packages.com.vaadin.ui.ComboBox);
  1138.                                                             importClass(Packages.br.com.davinti.base.vaadin.components.data.container.ContainerUtils);
  1139.                                                             importClass(Packages.com.vaadin.data.Property);
  1140.                                                                                                                        
  1141.                                                             var setResponsavel = function(sequencial, valor) {
  1142.  
  1143.                                                                 var db = libService.loadScript('db');
  1144.                                                                 var dbVitruvio = new db('vitruvio');                                                                   
  1145.                                                                 var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET RESPONSAVEL_1 = :valor where sequencial = :sequencial"                                                                                                                                  
  1146.                                                                 var param = {
  1147.                                                                         sequencial: sequencial,                                                                    
  1148.                                                                         valor: valor
  1149.                                                                 };
  1150.                                                                                                                                
  1151.                                                                 var row = dbVitruvio.update(sqlAtualiza, param);
  1152.                                                             };
  1153.                                                            
  1154.                                                             function generate(itemId, columnId, item, container) {
  1155.                                                                
  1156.                                                                 var sql = "select LOGIN, NOME from NAUTH.usuario ORDER BY NOME";
  1157.                                                                
  1158.                                                                 var ds = vQueryService.executeQuery('nauth', sql);
  1159.                                                                
  1160.                                                                 if(ds == null){
  1161.                                                                     return null;
  1162.                                                                 }
  1163.                                                                
  1164.                                                                 var map = new java.util.LinkedHashMap();
  1165.                                                                
  1166.                                                                 while(ds.next()) {
  1167.                                                                     map.put(ds.getString('LOGIN'), ds.getString('NOME'));
  1168.                                                                 }
  1169.                                                                
  1170.                                                                 var combo = new ComboBox();
  1171.                                                                 combo.setWidth("100%");
  1172.                                                                 ContainerUtils.createAndConfigureContainerFromCaptionMap(map, combo);
  1173.                                                                
  1174.                                                                 var linha = item;
  1175.                                                                
  1176.                                                                 if(linha.getItemProperty('RESPONSAVEL_1').getValue()) {
  1177.                                                                     combo.setValue(linha.getItemProperty('RESPONSAVEL_1').getValue());
  1178.                                                                 }                                  
  1179.                                                                
  1180.                                                                 combo.addValueChangeListener(new Property.ValueChangeListener() {
  1181.                                                                     valueChange: function(event) {
  1182.                                                                         println(event.getProperty().getValue());                                                                                                                                                                                                               
  1183.                                                                         setResponsavel(
  1184.                                                                             linha.getItemProperty('SEQUENCIAL').getValue().longValue(),                                                                        
  1185.                                                                             event.getProperty().getValue()                             
  1186.                                                                         );                                                                                                                                                                                 
  1187.                                                                     },
  1188.                                                                     hashCode: function() {
  1189.                                                                         return combo.hashCode();
  1190.                                                                     }
  1191.                                                                 });
  1192.                                                                
  1193.                                                                 return combo;
  1194.                                                             }
  1195.                                                         ]]>
  1196.                                             </scriptColumnGenerator>
  1197.                                         </generated>
  1198.  
  1199.                                         <column name="RESPONSAVEL_2" caption="Responsável (2)" expand-ratio="0.4" editable="true" />
  1200.  
  1201.                                         <column name="JAN" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Janeiro" expand-ratio="0.2" editable="true" />
  1202.  
  1203.                                         <column name="FEV" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Fevereiro" expand-ratio="0.2" editable="true" />
  1204.  
  1205.                                         <column name="MAR" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Março" expand-ratio="0.2" editable="true" />
  1206.  
  1207.                                         <column name="ABR" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Abril" expand-ratio="0.2" editable="true" />
  1208.  
  1209.                                         <column name="MAI" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Maio" expand-ratio="0.2" editable="true" />
  1210.  
  1211.                                         <column name="JUN" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Junho" expand-ratio="0.2" editable="true" />
  1212.  
  1213.                                         <column name="JUL" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Julho" expand-ratio="0.2" editable="true" />
  1214.  
  1215.                                         <column name="AGO" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Agosto" expand-ratio="0.2" editable="true" />
  1216.  
  1217.                                         <column name="SETE" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Setembro" expand-ratio="0.2" editable="true" />
  1218.  
  1219.                                         <column name="OUT" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Outubro" expand-ratio="0.2" editable="true" />
  1220.  
  1221.                                         <column name="NOV" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Novembro" expand-ratio="0.2" editable="true" />
  1222.  
  1223.                                         <column name="DEZ" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Dezembro" expand-ratio="0.2" editable="true" />
  1224.  
  1225.                                         <column name="VALOR_TOTAL" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Total" expand-ratio="0.6" editable="false" />
  1226.  
  1227.                                     </columns>
  1228.  
  1229.                                     <bind>
  1230.                                         <parameter value-type="number" defaultValue="0" parameterName="EMPRESA" field-ref="empresa" />
  1231.                                         <parameter value-type="number" defaultValue="1800" parameterName="ANO" field-ref="filtroAnoCompetencia" />
  1232.                                     </bind>
  1233.  
  1234.                                     <events>
  1235.                                         <itemChange>
  1236.                                             <script language="JavaScript">
  1237.                                                 <![CDATA[
  1238.                                                             var db = libService.loadScript('db');
  1239.                                                             var dbVitruvio = new db('vitruvio');
  1240.                                                            
  1241.                                                             function updateValorMes(sequencial, valor, mes) {
  1242.                                                                 dbVitruvio.transaction(function() {
  1243.                                                                     if (mes == 'JAN'){
  1244.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET JAN = :valor where sequencial = :sequencial";                                               
  1245.                                                                     } else if (mes == 'FEV'){
  1246.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET FEV = :valor where sequencial = :sequencial";                                               
  1247.                                                                     } else if (mes == 'MAR'){
  1248.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET MAR = :valor where sequencial = :sequencial";                                               
  1249.                                                                     } else if (mes == 'ABR'){
  1250.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET ABR = :valor where sequencial = :sequencial";                                               
  1251.                                                                     } else if (mes == 'MAI'){
  1252.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET MAI = :valor where sequencial = :sequencial";                                               
  1253.                                                                     } else if (mes == 'JUN'){
  1254.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET JUN = :valor where sequencial = :sequencial";                                               
  1255.                                                                     } else if (mes == 'JUL'){
  1256.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET JUL = :valor where sequencial = :sequencial";                                               
  1257.                                                                     } else if (mes == 'AGO'){
  1258.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET AGO = :valor where sequencial = :sequencial";                                               
  1259.                                                                     } else if (mes == 'SETE'){
  1260.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET SETE = :valor where sequencial = :sequencial";                                          
  1261.                                                                     } else if (mes == 'OUT'){
  1262.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET OUT = :valor where sequencial = :sequencial";                                                                                                               
  1263.                                                                     } else if (mes == 'NOV'){
  1264.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET NOV = :valor where sequencial = :sequencial";                                               
  1265.                                                                     } else if (mes == 'DEZ'){
  1266.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET DEZ = :valor where sequencial = :sequencial";                                               
  1267.                                                                     }          
  1268.                                                                     var param = {
  1269.                                                                         sequencial: sequencial,
  1270.                                                                         valor: valor                                                                       
  1271.                                                                     };
  1272.                                                                     this.update(sqlAtualiza, param);
  1273.                                                                 });                                                        
  1274.                                                             };
  1275.                                                            
  1276.                                                             function updateResponsavel2(sequencial, valor) {                                                           
  1277.                                                                 dbVitruvio.transaction(function() {
  1278.                                                                     var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET RESPONSAVEL_2 = :valor where sequencial = :sequencial";
  1279.                                                                     var param = {
  1280.                                                                         sequencial: sequencial,
  1281.                                                                         valor: valor                                                                       
  1282.                                                                     };
  1283.                                                                     this.update(sqlAtualiza, param);
  1284.                                                                 });                                                        
  1285.                                                             };
  1286.                                                            
  1287.                                                             function updateTotal(sequencial) {
  1288.                                                                                                                            
  1289.                                                                 dbVitruvio.transaction(function() {
  1290.                                                                     var sqlAtualiza =
  1291.                                                                         "UPDATE EX_ORCAMENTO_PLANO_CONTA SET VALOR_TOTAL = ((NVL(JAN,0)) + (NVL(FEV,0)) + (NVL(MAR,0)) + (NVL(ABR,0)) + (NVL(MAI,0)) + (NVL(JUN,0)) + (NVL(JUL,0)) + (NVL(AGO,0)) + (NVL(SETE,0)) + (NVL(OUT,0)) + (NVL(NOV,0)) + (NVL(DEZ,0))) where sequencial = :sequencial";
  1292.                                                                     var param = {
  1293.                                                                         sequencial: sequencial                                                                                     
  1294.                                                                     };
  1295.                                                                     println(sqlAtualiza);                                                                  
  1296.                                                                     this.update(sqlAtualiza, param);
  1297.                                                                 });                                                        
  1298.                                                             };                                                         
  1299.                                                        
  1300.                                                             function onChange(event) {
  1301.                                                                 if (event.isChanged('JAN')) {                                                                                                                      
  1302.                                                                     updateValorMes(
  1303.                                                                         event.getItemId(),
  1304.                                                                         event.getField('JAN').getConvertedValue(),
  1305.                                                                         'JAN'
  1306.                                                                     )
  1307.                                                                 }
  1308.                                                                 if (event.isChanged('FEV')) {                                                                                                                      
  1309.                                                                     updateValorMes(
  1310.                                                                         event.getItemId(),
  1311.                                                                         event.getField('FEV').getConvertedValue(),
  1312.                                                                         'FEV'
  1313.                                                                     )
  1314.                                                                 }
  1315.                                                                 if (event.isChanged('MAR')) {                                                                                                                      
  1316.                                                                     updateValorMes(
  1317.                                                                         event.getItemId(),
  1318.                                                                         event.getField('MAR').getConvertedValue(),
  1319.                                                                         'MAR'
  1320.                                                                     )
  1321.                                                                 }
  1322.                                                                 if (event.isChanged('ABR')) {                                                                                                                      
  1323.                                                                     updateValorMes(
  1324.                                                                         event.getItemId(),
  1325.                                                                         event.getField('ABR').getConvertedValue(),
  1326.                                                                         'ABR'
  1327.                                                                     )
  1328.                                                                 }
  1329.                                                                 if (event.isChanged('MAI')) {                                                                                                                      
  1330.                                                                     updateValorMes(
  1331.                                                                         event.getItemId(),
  1332.                                                                         event.getField('MAI').getConvertedValue(),
  1333.                                                                         'MAI'
  1334.                                                                     )
  1335.                                                                 }
  1336.                                                                 if (event.isChanged('JUN')) {                                                                                                                      
  1337.                                                                     updateValorMes(
  1338.                                                                         event.getItemId(),
  1339.                                                                         event.getField('JUN').getConvertedValue(),
  1340.                                                                         'JUN'
  1341.                                                                     )
  1342.                                                                 }
  1343.                                                                 if (event.isChanged('JUL')) {                                                                                                                      
  1344.                                                                     updateValorMes(
  1345.                                                                         event.getItemId(),
  1346.                                                                         event.getField('JUL').getConvertedValue(),
  1347.                                                                         'JUL'
  1348.                                                                     )
  1349.                                                                 }                                                              
  1350.                                                                 if (event.isChanged('AGO')) {                                                                                                                      
  1351.                                                                     updateValorMes(
  1352.                                                                         event.getItemId(),
  1353.                                                                         event.getField('AGO').getConvertedValue(),
  1354.                                                                         'AGO'
  1355.                                                                     )
  1356.                                                                 }
  1357.                                                                 if (event.isChanged('SETE')) {                                                                                                                     
  1358.                                                                     updateValorMes(
  1359.                                                                         event.getItemId(),
  1360.                                                                         event.getField('SETE').getConvertedValue(),
  1361.                                                                         'SETE'
  1362.                                                                     )
  1363.                                                                 }
  1364.                                                                 if (event.isChanged('OUT')) {                                                                                                                      
  1365.                                                                     updateValorMes(
  1366.                                                                         event.getItemId(),
  1367.                                                                         event.getField('OUT').getConvertedValue(),
  1368.                                                                         'OUT'
  1369.                                                                     )
  1370.                                                                 }
  1371.                                                                 if (event.isChanged('NOV')) {                                                                                                                      
  1372.                                                                     updateValorMes(
  1373.                                                                         event.getItemId(),
  1374.                                                                         event.getField('NOV').getConvertedValue(),
  1375.                                                                         'NOV'
  1376.                                                                     )
  1377.                                                                 }
  1378.                                                                 if (event.isChanged('DEZ')) {                                                                                                                      
  1379.                                                                     updateValorMes(
  1380.                                                                         event.getItemId(),
  1381.                                                                         event.getField('DEZ').getConvertedValue(),
  1382.                                                                         'DEZ'
  1383.                                                                     )
  1384.                                                                 }
  1385.                                                                 if (event.isChanged('RESPONSAVEL_2')) {
  1386.                                                                     updateResponsavel2(
  1387.                                                                         event.getItemId(),
  1388.                                                                         event.getField('RESPONSAVEL_2').getConvertedValue()
  1389.                                                                     )
  1390.                                                                 }                                                                                          
  1391.  
  1392.                                                                 updateTotal(event.getItemId());
  1393.  
  1394.                                                                 event.commit();
  1395.                                                                    
  1396.                                                                 engine.getField('db_orcamento_receitasNaoOperacionais').refresh();
  1397.                                                                 engine.getField('db_dreConsolidada').refresh();
  1398.                                                             }
  1399.                                                         ]]>
  1400.                                             </script>
  1401.                                         </itemChange>
  1402.                                     </events>
  1403.  
  1404.                                     <styleGenerator>
  1405.                                         <scriptGenerator language="JavaScript">
  1406.                                             <![CDATA[
  1407.                                                             function getStyle(itemId, columnId, item) {
  1408.                                                                 if (columnId == 'VALOR_TOTAL') {
  1409.                                                                       return 'background-dark-gray';                                                                                                                                                                                                               
  1410.                                                                 }
  1411.                                                             }
  1412.                                                         ]]>
  1413.                                         </scriptGenerator>
  1414.                                     </styleGenerator>
  1415.  
  1416.  
  1417.                                 </DBTable>
  1418.  
  1419.                             </VerticalLayout>
  1420.                         </ComplexPanel>
  1421.  
  1422.                     </VerticalLayout>
  1423.                 </WindowLayout>
  1424.                 <WindowLayout isLayout="true" id="windowDespesasOperacionais" windowWidth="100%" windowHeight="90%" windowClosable="true" windowModal="true" caption="Despesas Operacionais (Bruto)">
  1425.                     <VerticalLayout width="100%" margin="true" spacing="true" cssAlign="top: 0px; left: 0px;">
  1426.                         <!-- ORÇAMENTO - MENSAL -  NIVEL 1 - Despesas Operacionais (Bruto) -->
  1427.                         <ComplexPanel caption="Despesas Operacionais (Bruto)" id="pa_orcamento_despesas_operacionais_bruto" width="100%" align="TOP_LEFT">
  1428.  
  1429.                             <VerticalLayout width="100%">
  1430.  
  1431.                                 <DBTable id="db_orcamento_despesas_operacionais_bruto" type="number" width="100%" height="100%" required="false" multivalue="false" visible="true" editDisposition="MODAL" exportXLS="true" debugSQL="true" gridSelectable="true" updatable="true" editable="true" useGridComponent="true" editAsync="false" alwaysSelectable="false" keepState="false" align="MIDDLE_CENTER" showRowCount="true" frozenColumns="6">
  1432.  
  1433.                                     <datasource>
  1434.                                         <freeQuery connection-key="vitruvio">
  1435.                                             <![CDATA[
  1436.                                                         SELECT
  1437.                                                             NVL(VALOR_TOTAL,0) AS VALOR_TOTAL
  1438.                                                             , JAN
  1439.                                                             , FEV
  1440.                                                             , MAR
  1441.                                                             , ABR
  1442.                                                             , MAI
  1443.                                                             , JUN
  1444.                                                             , JUL
  1445.                                                             , AGO
  1446.                                                             , SETE
  1447.                                                             , OUT
  1448.                                                             , NOV
  1449.                                                             , DEZ
  1450.                                                             , RESPONSAVEL_1
  1451.                                                             , RESPONSAVEL_2
  1452.                                                             , LOJA
  1453.                                                             , SEQUENCIAL
  1454.                                                             , ANO  
  1455.                                                             , P1
  1456.                                                             , P1_ID_FULL
  1457.                                                             , P1_DESC_PLANO_CONTA                                                        
  1458.                                                         FROM EX_ORCAMENTO_PLANO_CONTA
  1459.                                                         WHERE
  1460.                                                             1 = 1  
  1461.                                                             AND INF_FINANCEIRA = 3 /*Despesas Operacionais (Bruto)*/
  1462.                                                             and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  1463.                                                             and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})
  1464.                                                         ORDER BY LOJA, P1                                                      
  1465.  
  1466.                                                     ]]>
  1467.                                         </freeQuery>
  1468.                                     </datasource>
  1469.                                     <key-field>SEQUENCIAL</key-field>
  1470.                                     <columns>
  1471.                                         <column name="LOJA" caption="Loja" expand-ratio="0.2" />
  1472.                                         <column name="ANO" caption="Ano" expand-ratio="0.2" />
  1473.  
  1474.                                         <column name="P1_ID_FULL" caption="Plano de conta" format="00000" expand-ratio="0.3" />
  1475.  
  1476.                                         <column name="P1_DESC_PLANO_CONTA" caption="Descritivo" expand-ratio="0.4" />
  1477.  
  1478.                                         <generated name="RESPONSAVEL_1" caption="Responsável (1)" cache="false" expand-ratio="0.3">
  1479.                                             <scriptColumnGenerator language="JavaScript">
  1480.                                                 <![CDATA[
  1481.                                                             importClass(Packages.br.com.davinti.base.vaadin.components.layout.MessageBox);
  1482.                                                             importClass(Packages.com.vaadin.ui.ComboBox);
  1483.                                                             importClass(Packages.br.com.davinti.base.vaadin.components.data.container.ContainerUtils);
  1484.                                                             importClass(Packages.com.vaadin.data.Property);
  1485.                                                                                                                        
  1486.                                                             var setResponsavel = function(sequencial, valor) {
  1487.  
  1488.                                                                 var db = libService.loadScript('db');
  1489.                                                                 var dbVitruvio = new db('vitruvio');                                                                   
  1490.                                                                 var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET RESPONSAVEL_1 = :valor where sequencial = :sequencial"                                                                                                                                  
  1491.                                                                 var param = {
  1492.                                                                         sequencial: sequencial,                                                                    
  1493.                                                                         valor: valor
  1494.                                                                 };
  1495.                                                                                                                                
  1496.                                                                 var row = dbVitruvio.update(sqlAtualiza, param);
  1497.                                                             };
  1498.                                                            
  1499.                                                             function generate(itemId, columnId, item, container) {
  1500.                                                                
  1501.                                                                 var sql = "select LOGIN, NOME from NAUTH.usuario ORDER BY NOME";
  1502.                                                                
  1503.                                                                 var ds = vQueryService.executeQuery('nauth', sql);
  1504.                                                                
  1505.                                                                 if(ds == null){
  1506.                                                                     return null;
  1507.                                                                 }
  1508.                                                                
  1509.                                                                 var map = new java.util.LinkedHashMap();
  1510.                                                                
  1511.                                                                 while(ds.next()) {
  1512.                                                                     map.put(ds.getString('LOGIN'), ds.getString('NOME'));
  1513.                                                                 }
  1514.                                                                
  1515.                                                                 var combo = new ComboBox();
  1516.                                                                 combo.setWidth("100%");
  1517.                                                                 ContainerUtils.createAndConfigureContainerFromCaptionMap(map, combo);
  1518.                                                                
  1519.                                                                 var linha = item;
  1520.                                                                
  1521.                                                                 if(linha.getItemProperty('RESPONSAVEL_1').getValue()) {
  1522.                                                                     combo.setValue(linha.getItemProperty('RESPONSAVEL_1').getValue());
  1523.                                                                 }                                  
  1524.                                                                
  1525.                                                                 combo.addValueChangeListener(new Property.ValueChangeListener() {
  1526.                                                                     valueChange: function(event) {
  1527.                                                                         println(event.getProperty().getValue());                                                                                                                                                                                                               
  1528.                                                                         setResponsavel(
  1529.                                                                             linha.getItemProperty('SEQUENCIAL').getValue().longValue(),                                                                        
  1530.                                                                             event.getProperty().getValue()                             
  1531.                                                                         );                                                                                                                                                                                 
  1532.                                                                     },
  1533.                                                                     hashCode: function() {
  1534.                                                                         return combo.hashCode();
  1535.                                                                     }
  1536.                                                                 });
  1537.                                                                
  1538.                                                                 return combo;
  1539.                                                             }
  1540.                                                         ]]>
  1541.                                             </scriptColumnGenerator>
  1542.                                         </generated>
  1543.  
  1544.                                         <column name="RESPONSAVEL_2" caption="Responsável (2)" expand-ratio="0.4" editable="true" />
  1545.  
  1546.                                         <column name="JAN" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Janeiro" expand-ratio="0.2" editable="true" />
  1547.  
  1548.                                         <column name="FEV" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Fevereiro" expand-ratio="0.2" editable="true" />
  1549.  
  1550.                                         <column name="MAR" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Março" expand-ratio="0.2" editable="true" />
  1551.  
  1552.                                         <column name="ABR" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Abril" expand-ratio="0.2" editable="true" />
  1553.  
  1554.                                         <column name="MAI" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Maio" expand-ratio="0.2" editable="true" />
  1555.  
  1556.                                         <column name="JUN" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Junho" expand-ratio="0.2" editable="true" />
  1557.  
  1558.                                         <column name="JUL" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Julho" expand-ratio="0.2" editable="true" />
  1559.  
  1560.                                         <column name="AGO" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Agosto" expand-ratio="0.2" editable="true" />
  1561.  
  1562.                                         <column name="SETE" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Setembro" expand-ratio="0.2" editable="true" />
  1563.  
  1564.                                         <column name="OUT" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Outubro" expand-ratio="0.2" editable="true" />
  1565.  
  1566.                                         <column name="NOV" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Novembro" expand-ratio="0.2" editable="true" />
  1567.  
  1568.                                         <column name="DEZ" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Dezembro" expand-ratio="0.2" editable="true" />
  1569.  
  1570.                                         <column name="VALOR_TOTAL" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Total" expand-ratio="0.6" editable="false" />
  1571.  
  1572.  
  1573.                                     </columns>
  1574.  
  1575.                                     <bind>
  1576.                                         <parameter value-type="number" defaultValue="0" parameterName="EMPRESA" field-ref="empresa" />
  1577.                                         <parameter value-type="number" defaultValue="1800" parameterName="ANO" field-ref="filtroAnoCompetencia" />
  1578.                                     </bind>
  1579.  
  1580.                                     <events>
  1581.                                         <itemChange>
  1582.                                             <script language="JavaScript">
  1583.                                                 <![CDATA[
  1584.                                                             var db = libService.loadScript('db');
  1585.                                                             var dbVitruvio = new db('vitruvio');
  1586.                                                            
  1587.                                                             function updateValorMes(sequencial, valor, mes) {
  1588.                                                                 dbVitruvio.transaction(function() {
  1589.                                                                     if (mes == 'JAN'){
  1590.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET JAN = :valor where sequencial = :sequencial";                                               
  1591.                                                                     } else if (mes == 'FEV'){
  1592.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET FEV = :valor where sequencial = :sequencial";                                               
  1593.                                                                     } else if (mes == 'MAR'){
  1594.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET MAR = :valor where sequencial = :sequencial";                                               
  1595.                                                                     } else if (mes == 'ABR'){
  1596.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET ABR = :valor where sequencial = :sequencial";                                               
  1597.                                                                     } else if (mes == 'MAI'){
  1598.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET MAI = :valor where sequencial = :sequencial";                                               
  1599.                                                                     } else if (mes == 'JUN'){
  1600.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET JUN = :valor where sequencial = :sequencial";                                               
  1601.                                                                     } else if (mes == 'JUL'){
  1602.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET JUL = :valor where sequencial = :sequencial";                                               
  1603.                                                                     } else if (mes == 'AGO'){
  1604.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET AGO = :valor where sequencial = :sequencial";                                               
  1605.                                                                     } else if (mes == 'SETE'){
  1606.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET SETE = :valor where sequencial = :sequencial";                                          
  1607.                                                                     } else if (mes == 'OUT'){
  1608.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET OUT = :valor where sequencial = :sequencial";                                                                                                               
  1609.                                                                     } else if (mes == 'NOV'){
  1610.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET NOV = :valor where sequencial = :sequencial";                                               
  1611.                                                                     } else if (mes == 'DEZ'){
  1612.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET DEZ = :valor where sequencial = :sequencial";                                               
  1613.                                                                     }          
  1614.                                                                     var param = {
  1615.                                                                         sequencial: sequencial,
  1616.                                                                         valor: valor                                                                       
  1617.                                                                     };
  1618.                                                                     this.update(sqlAtualiza, param);
  1619.                                                                 });                                                        
  1620.                                                             };
  1621.                                                            
  1622.                                                             function updateResponsavel2(sequencial, valor) {                                                           
  1623.                                                                 dbVitruvio.transaction(function() {
  1624.                                                                     var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET RESPONSAVEL_2 = :valor where sequencial = :sequencial";
  1625.                                                                     var param = {
  1626.                                                                         sequencial: sequencial,
  1627.                                                                         valor: valor                                                                       
  1628.                                                                     };
  1629.                                                                     this.update(sqlAtualiza, param);
  1630.                                                                 });                                                        
  1631.                                                             }; 
  1632.                                                            
  1633.                                                             function updateTotal(sequencial) {
  1634.                                                                                                                            
  1635.                                                                 dbVitruvio.transaction(function() {
  1636.                                                                     var sqlAtualiza =
  1637.                                                                         "UPDATE EX_ORCAMENTO_PLANO_CONTA SET VALOR_TOTAL = ((NVL(JAN,0)) + (NVL(FEV,0)) + (NVL(MAR,0)) + (NVL(ABR,0)) + (NVL(MAI,0)) + (NVL(JUN,0)) + (NVL(JUL,0)) + (NVL(AGO,0)) + (NVL(SETE,0)) + (NVL(OUT,0)) + (NVL(NOV,0)) + (NVL(DEZ,0))) where sequencial = :sequencial";
  1638.                                                                     var param = {
  1639.                                                                         sequencial: sequencial                                                                                     
  1640.                                                                     };
  1641.                                                                     println(sqlAtualiza);                                                                  
  1642.                                                                     this.update(sqlAtualiza, param);
  1643.                                                                 });                                                        
  1644.                                                             };
  1645.  
  1646.                                                        
  1647.                                                             function onChange(event) {
  1648.                                                                 if (event.isChanged('JAN')) {                                                                                                                      
  1649.                                                                     updateValorMes(
  1650.                                                                         event.getItemId(),
  1651.                                                                         event.getField('JAN').getConvertedValue(),
  1652.                                                                         'JAN'
  1653.                                                                     )
  1654.                                                                 }
  1655.                                                                 if (event.isChanged('FEV')) {                                                                                                                      
  1656.                                                                     updateValorMes(
  1657.                                                                         event.getItemId(),
  1658.                                                                         event.getField('FEV').getConvertedValue(),
  1659.                                                                         'FEV'
  1660.                                                                     )
  1661.                                                                 }
  1662.                                                                 if (event.isChanged('MAR')) {                                                                                                                      
  1663.                                                                     updateValorMes(
  1664.                                                                         event.getItemId(),
  1665.                                                                         event.getField('MAR').getConvertedValue(),
  1666.                                                                         'MAR'
  1667.                                                                     )
  1668.                                                                 }
  1669.                                                                 if (event.isChanged('ABR')) {                                                                                                                      
  1670.                                                                     updateValorMes(
  1671.                                                                         event.getItemId(),
  1672.                                                                         event.getField('ABR').getConvertedValue(),
  1673.                                                                         'ABR'
  1674.                                                                     )
  1675.                                                                 }
  1676.                                                                 if (event.isChanged('MAI')) {                                                                                                                      
  1677.                                                                     updateValorMes(
  1678.                                                                         event.getItemId(),
  1679.                                                                         event.getField('MAI').getConvertedValue(),
  1680.                                                                         'MAI'
  1681.                                                                     )
  1682.                                                                 }
  1683.                                                                 if (event.isChanged('JUN')) {                                                                                                                      
  1684.                                                                     updateValorMes(
  1685.                                                                         event.getItemId(),
  1686.                                                                         event.getField('JUN').getConvertedValue(),
  1687.                                                                         'JUN'
  1688.                                                                     )
  1689.                                                                 }
  1690.                                                                 if (event.isChanged('JUL')) {                                                                                                                      
  1691.                                                                     updateValorMes(
  1692.                                                                         event.getItemId(),
  1693.                                                                         event.getField('JUL').getConvertedValue(),
  1694.                                                                         'JUL'
  1695.                                                                     )
  1696.                                                                 }                                                              
  1697.                                                                 if (event.isChanged('AGO')) {                                                                                                                      
  1698.                                                                     updateValorMes(
  1699.                                                                         event.getItemId(),
  1700.                                                                         event.getField('AGO').getConvertedValue(),
  1701.                                                                         'AGO'
  1702.                                                                     )
  1703.                                                                 }
  1704.                                                                 if (event.isChanged('SETE')) {                                                                                                                     
  1705.                                                                     updateValorMes(
  1706.                                                                         event.getItemId(),
  1707.                                                                         event.getField('SETE').getConvertedValue(),
  1708.                                                                         'SETE'
  1709.                                                                     )
  1710.                                                                 }
  1711.                                                                 if (event.isChanged('OUT')) {                                                                                                                      
  1712.                                                                     updateValorMes(
  1713.                                                                         event.getItemId(),
  1714.                                                                         event.getField('OUT').getConvertedValue(),
  1715.                                                                         'OUT'
  1716.                                                                     )
  1717.                                                                 }
  1718.                                                                 if (event.isChanged('NOV')) {                                                                                                                      
  1719.                                                                     updateValorMes(
  1720.                                                                         event.getItemId(),
  1721.                                                                         event.getField('NOV').getConvertedValue(),
  1722.                                                                         'NOV'
  1723.                                                                     )
  1724.                                                                 }
  1725.                                                                 if (event.isChanged('DEZ')) {                                                                                                                      
  1726.                                                                     updateValorMes(
  1727.                                                                         event.getItemId(),
  1728.                                                                         event.getField('DEZ').getConvertedValue(),
  1729.                                                                         'DEZ'
  1730.                                                                     )
  1731.                                                                 }
  1732.                                                                 if (event.isChanged('RESPONSAVEL_2')) {
  1733.                                                                     updateResponsavel2(
  1734.                                                                         event.getItemId(),
  1735.                                                                         event.getField('RESPONSAVEL_2').getConvertedValue()
  1736.                                                                     )
  1737.                                                                 }                                                                                          
  1738.                                                                 updateTotal(event.getItemId());
  1739.                                                                 event.commit();
  1740.                                                                    
  1741.                                                                 engine.getField('db_orcamento_despesas_operacionais_bruto').refresh();
  1742.                                                                 engine.getField('db_dreConsolidada').refresh();
  1743.                                                             }
  1744.                                                         ]]>
  1745.                                             </script>
  1746.                                         </itemChange>
  1747.                                     </events>
  1748.  
  1749.                                     <styleGenerator>
  1750.                                         <scriptGenerator language="JavaScript">
  1751.                                             <![CDATA[
  1752.                                                             function getStyle(itemId, columnId, item) {
  1753.                                                                 if (columnId == 'VALOR_TOTAL') {
  1754.                                                                       return 'background-dark-gray';                                                                                                                                                                                                               
  1755.                                                                 }
  1756.                                                             }
  1757.                                                         ]]>
  1758.                                         </scriptGenerator>
  1759.                                     </styleGenerator>
  1760.  
  1761.  
  1762.                                 </DBTable>
  1763.  
  1764.                             </VerticalLayout>
  1765.                         </ComplexPanel>
  1766.  
  1767.                     </VerticalLayout>
  1768.                 </WindowLayout>
  1769.                 <WindowLayout isLayout="true" id="windowImpostos" windowWidth="100%" windowHeight="90%" windowClosable="true" windowModal="true" caption="Impostos">
  1770.  
  1771.                     <VerticalLayout width="100%" margin="true" spacing="true" cssAlign="top: 0px; left: 0px;">
  1772.                         <!-- ORÇAMENTO - MENSAL -  NIVEL 1 - Impostos -->
  1773.                         <ComplexPanel caption="Impostos" id="pa_orcamento_Impostos" width="100%" align="TOP_LEFT">
  1774.  
  1775.                             <VerticalLayout width="100%">
  1776.  
  1777.                                 <DBTable id="db_orcamento_Impostos" type="number" width="100%" height="100%" required="false" multivalue="false" visible="true" editDisposition="MODAL" exportXLS="true" debugSQL="true" gridSelectable="true" updatable="true" editable="true" useGridComponent="true" editAsync="false" alwaysSelectable="false" keepState="false" align="MIDDLE_CENTER" showRowCount="true" frozenColumns="6">
  1778.  
  1779.                                     <datasource>
  1780.                                         <freeQuery connection-key="vitruvio">
  1781.                                             <![CDATA[
  1782.                                                         SELECT
  1783.                                                             NVL(VALOR_TOTAL,0) AS VALOR_TOTAL
  1784.                                                             , JAN
  1785.                                                             , FEV
  1786.                                                             , MAR
  1787.                                                             , ABR
  1788.                                                             , MAI
  1789.                                                             , JUN
  1790.                                                             , JUL
  1791.                                                             , AGO
  1792.                                                             , SETE
  1793.                                                             , OUT
  1794.                                                             , NOV
  1795.                                                             , DEZ
  1796.                                                             , RESPONSAVEL_1
  1797.                                                             , RESPONSAVEL_2
  1798.                                                             , LOJA
  1799.                                                             , SEQUENCIAL
  1800.                                                             , ANO  
  1801.                                                             , P1
  1802.                                                             , P1_ID_FULL
  1803.                                                             , P1_DESC_PLANO_CONTA                                                        
  1804.                                                         FROM EX_ORCAMENTO_PLANO_CONTA
  1805.                                                         WHERE
  1806.                                                             1 = 1  
  1807.                                                             AND INF_FINANCEIRA = 9 /*Impostos*/
  1808.                                                             and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  1809.                                                             and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})
  1810.                                                         ORDER BY LOJA, P1                                                      
  1811.  
  1812.                                                     ]]>
  1813.                                         </freeQuery>
  1814.                                     </datasource>
  1815.                                     <key-field>SEQUENCIAL</key-field>
  1816.                                     <columns>
  1817.                                         <column name="LOJA" caption="Loja" expand-ratio="0.2" />
  1818.                                         <column name="ANO" caption="Ano" expand-ratio="0.2" />
  1819.  
  1820.                                         <column name="P1_ID_FULL" caption="Plano de conta" format="00000" expand-ratio="0.3" />
  1821.  
  1822.                                         <column name="P1_DESC_PLANO_CONTA" caption="Descritivo" expand-ratio="0.4" />
  1823.  
  1824.                                         <generated name="RESPONSAVEL_1" caption="Responsável (1)" cache="false" expand-ratio="0.3">
  1825.                                             <scriptColumnGenerator language="JavaScript">
  1826.                                                 <![CDATA[
  1827.                                                             importClass(Packages.br.com.davinti.base.vaadin.components.layout.MessageBox);
  1828.                                                             importClass(Packages.com.vaadin.ui.ComboBox);
  1829.                                                             importClass(Packages.br.com.davinti.base.vaadin.components.data.container.ContainerUtils);
  1830.                                                             importClass(Packages.com.vaadin.data.Property);
  1831.                                                                                                                        
  1832.                                                             var setResponsavel = function(sequencial, valor) {
  1833.  
  1834.                                                                 var db = libService.loadScript('db');
  1835.                                                                 var dbVitruvio = new db('vitruvio');                                                                   
  1836.                                                                 var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET RESPONSAVEL_1 = :valor where sequencial = :sequencial"                                                                                                                                  
  1837.                                                                 var param = {
  1838.                                                                         sequencial: sequencial,                                                                    
  1839.                                                                         valor: valor
  1840.                                                                 };
  1841.                                                                                                                                
  1842.                                                                 var row = dbVitruvio.update(sqlAtualiza, param);
  1843.                                                             };
  1844.                                                            
  1845.                                                             function generate(itemId, columnId, item, container) {
  1846.                                                                
  1847.                                                                 var sql = "select LOGIN, NOME from NAUTH.usuario ORDER BY NOME";
  1848.                                                                
  1849.                                                                 var ds = vQueryService.executeQuery('nauth', sql);
  1850.                                                                
  1851.                                                                 if(ds == null){
  1852.                                                                     return null;
  1853.                                                                 }
  1854.                                                                
  1855.                                                                 var map = new java.util.LinkedHashMap();
  1856.                                                                
  1857.                                                                 while(ds.next()) {
  1858.                                                                     map.put(ds.getString('LOGIN'), ds.getString('NOME'));
  1859.                                                                 }
  1860.                                                                
  1861.                                                                 var combo = new ComboBox();
  1862.                                                                 combo.setWidth("100%");
  1863.                                                                 ContainerUtils.createAndConfigureContainerFromCaptionMap(map, combo);
  1864.                                                                
  1865.                                                                 var linha = item;
  1866.                                                                
  1867.                                                                 if(linha.getItemProperty('RESPONSAVEL_1').getValue()) {
  1868.                                                                     combo.setValue(linha.getItemProperty('RESPONSAVEL_1').getValue());
  1869.                                                                 }                                  
  1870.                                                                
  1871.                                                                 combo.addValueChangeListener(new Property.ValueChangeListener() {
  1872.                                                                     valueChange: function(event) {
  1873.                                                                         println(event.getProperty().getValue());                                                                                                                                                                                                               
  1874.                                                                         setResponsavel(
  1875.                                                                             linha.getItemProperty('SEQUENCIAL').getValue().longValue(),                                                                        
  1876.                                                                             event.getProperty().getValue()                             
  1877.                                                                         );                                                                                                                                                                                 
  1878.                                                                     },
  1879.                                                                     hashCode: function() {
  1880.                                                                         return combo.hashCode();
  1881.                                                                     }
  1882.                                                                 });
  1883.                                                                
  1884.                                                                 return combo;
  1885.                                                             }
  1886.                                                         ]]>
  1887.                                             </scriptColumnGenerator>
  1888.                                         </generated>
  1889.  
  1890.                                         <column name="RESPONSAVEL_2" caption="Responsável (2)" expand-ratio="0.4" editable="true" />
  1891.  
  1892.                                         <column name="JAN" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Janeiro" expand-ratio="0.2" editable="true" />
  1893.  
  1894.                                         <column name="FEV" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Fevereiro" expand-ratio="0.2" editable="true" />
  1895.  
  1896.                                         <column name="MAR" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Março" expand-ratio="0.2" editable="true" />
  1897.  
  1898.                                         <column name="ABR" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Abril" expand-ratio="0.2" editable="true" />
  1899.  
  1900.                                         <column name="MAI" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Maio" expand-ratio="0.2" editable="true" />
  1901.  
  1902.                                         <column name="JUN" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Junho" expand-ratio="0.2" editable="true" />
  1903.  
  1904.                                         <column name="JUL" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Julho" expand-ratio="0.2" editable="true" />
  1905.  
  1906.                                         <column name="AGO" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Agosto" expand-ratio="0.2" editable="true" />
  1907.  
  1908.                                         <column name="SETE" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Setembro" expand-ratio="0.2" editable="true" />
  1909.  
  1910.                                         <column name="OUT" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Outubro" expand-ratio="0.2" editable="true" />
  1911.  
  1912.                                         <column name="NOV" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Novembro" expand-ratio="0.2" editable="true" />
  1913.  
  1914.                                         <column name="DEZ" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Dezembro" expand-ratio="0.2" editable="true" />
  1915.  
  1916.                                         <column name="VALOR_TOTAL" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Total" expand-ratio="0.6" editable="false" />
  1917.  
  1918.                                     </columns>
  1919.  
  1920.                                     <bind>
  1921.                                         <parameter value-type="number" defaultValue="0" parameterName="EMPRESA" field-ref="empresa" />
  1922.                                         <parameter value-type="number" defaultValue="1800" parameterName="ANO" field-ref="filtroAnoCompetencia" />
  1923.                                     </bind>
  1924.  
  1925.                                     <events>
  1926.                                         <itemChange>
  1927.                                             <script language="JavaScript">
  1928.                                                 <![CDATA[
  1929.                                                             var db = libService.loadScript('db');
  1930.                                                             var dbVitruvio = new db('vitruvio');
  1931.                                                            
  1932.                                                             function updateValorMes(sequencial, valor, mes) {
  1933.                                                                 dbVitruvio.transaction(function() {
  1934.                                                                     if (mes == 'JAN'){
  1935.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET JAN = :valor where sequencial = :sequencial";                                               
  1936.                                                                     } else if (mes == 'FEV'){
  1937.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET FEV = :valor where sequencial = :sequencial";                                               
  1938.                                                                     } else if (mes == 'MAR'){
  1939.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET MAR = :valor where sequencial = :sequencial";                                               
  1940.                                                                     } else if (mes == 'ABR'){
  1941.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET ABR = :valor where sequencial = :sequencial";                                               
  1942.                                                                     } else if (mes == 'MAI'){
  1943.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET MAI = :valor where sequencial = :sequencial";                                               
  1944.                                                                     } else if (mes == 'JUN'){
  1945.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET JUN = :valor where sequencial = :sequencial";                                               
  1946.                                                                     } else if (mes == 'JUL'){
  1947.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET JUL = :valor where sequencial = :sequencial";                                               
  1948.                                                                     } else if (mes == 'AGO'){
  1949.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET AGO = :valor where sequencial = :sequencial";                                               
  1950.                                                                     } else if (mes == 'SETE'){
  1951.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET SETE = :valor where sequencial = :sequencial";                                          
  1952.                                                                     } else if (mes == 'OUT'){
  1953.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET OUT = :valor where sequencial = :sequencial";                                                                                                               
  1954.                                                                     } else if (mes == 'NOV'){
  1955.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET NOV = :valor where sequencial = :sequencial";                                               
  1956.                                                                     } else if (mes == 'DEZ'){
  1957.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET DEZ = :valor where sequencial = :sequencial";                                               
  1958.                                                                     }          
  1959.                                                                     var param = {
  1960.                                                                         sequencial: sequencial,
  1961.                                                                         valor: valor                                                                       
  1962.                                                                     };
  1963.                                                                     this.update(sqlAtualiza, param);
  1964.                                                                 });                                                        
  1965.                                                             };
  1966.                                                            
  1967.                                                             function updateResponsavel2(sequencial, valor) {                                                           
  1968.                                                                 dbVitruvio.transaction(function() {
  1969.                                                                     var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET RESPONSAVEL_2 = :valor where sequencial = :sequencial";
  1970.                                                                     var param = {
  1971.                                                                         sequencial: sequencial,
  1972.                                                                         valor: valor                                                                       
  1973.                                                                     };
  1974.                                                                     this.update(sqlAtualiza, param);
  1975.                                                                 });                                                        
  1976.                                                             }; 
  1977.                                                            
  1978.                                                             function updateTotal(sequencial) {                                                                                                                     
  1979.                                                                 dbVitruvio.transaction(function() {
  1980.                                                                     var sqlAtualiza =
  1981.                                                                         "UPDATE EX_ORCAMENTO_PLANO_CONTA SET VALOR_TOTAL = ((NVL(JAN,0)) + (NVL(FEV,0)) + (NVL(MAR,0)) + (NVL(ABR,0)) + (NVL(MAI,0)) + (NVL(JUN,0)) + (NVL(JUL,0)) + (NVL(AGO,0)) + (NVL(SETE,0)) + (NVL(OUT,0)) + (NVL(NOV,0)) + (NVL(DEZ,0))) where sequencial = :sequencial";
  1982.                                                                     var param = {
  1983.                                                                         sequencial: sequencial                                                                                     
  1984.                                                                     };
  1985.                                                                     println(sqlAtualiza);                                                                  
  1986.                                                                     this.update(sqlAtualiza, param);
  1987.                                                                 });                                                        
  1988.                                                             };
  1989.                                                        
  1990.                                                             function onChange(event) {
  1991.                                                                 if (event.isChanged('JAN')) {                                                                                                                      
  1992.                                                                     updateValorMes(
  1993.                                                                         event.getItemId(),
  1994.                                                                         event.getField('JAN').getConvertedValue(),
  1995.                                                                         'JAN'
  1996.                                                                     )
  1997.                                                                 }
  1998.                                                                 if (event.isChanged('FEV')) {                                                                                                                      
  1999.                                                                     updateValorMes(
  2000.                                                                         event.getItemId(),
  2001.                                                                         event.getField('FEV').getConvertedValue(),
  2002.                                                                         'FEV'
  2003.                                                                     )
  2004.                                                                 }
  2005.                                                                 if (event.isChanged('MAR')) {                                                                                                                      
  2006.                                                                     updateValorMes(
  2007.                                                                         event.getItemId(),
  2008.                                                                         event.getField('MAR').getConvertedValue(),
  2009.                                                                         'MAR'
  2010.                                                                     )
  2011.                                                                 }
  2012.                                                                 if (event.isChanged('ABR')) {                                                                                                                      
  2013.                                                                     updateValorMes(
  2014.                                                                         event.getItemId(),
  2015.                                                                         event.getField('ABR').getConvertedValue(),
  2016.                                                                         'ABR'
  2017.                                                                     )
  2018.                                                                 }
  2019.                                                                 if (event.isChanged('MAI')) {                                                                                                                      
  2020.                                                                     updateValorMes(
  2021.                                                                         event.getItemId(),
  2022.                                                                         event.getField('MAI').getConvertedValue(),
  2023.                                                                         'MAI'
  2024.                                                                     )
  2025.                                                                 }
  2026.                                                                 if (event.isChanged('JUN')) {                                                                                                                      
  2027.                                                                     updateValorMes(
  2028.                                                                         event.getItemId(),
  2029.                                                                         event.getField('JUN').getConvertedValue(),
  2030.                                                                         'JUN'
  2031.                                                                     )
  2032.                                                                 }
  2033.                                                                 if (event.isChanged('JUL')) {                                                                                                                      
  2034.                                                                     updateValorMes(
  2035.                                                                         event.getItemId(),
  2036.                                                                         event.getField('JUL').getConvertedValue(),
  2037.                                                                         'JUL'
  2038.                                                                     )
  2039.                                                                 }                                                              
  2040.                                                                 if (event.isChanged('AGO')) {                                                                                                                      
  2041.                                                                     updateValorMes(
  2042.                                                                         event.getItemId(),
  2043.                                                                         event.getField('AGO').getConvertedValue(),
  2044.                                                                         'AGO'
  2045.                                                                     )
  2046.                                                                 }
  2047.                                                                 if (event.isChanged('SETE')) {                                                                                                                     
  2048.                                                                     updateValorMes(
  2049.                                                                         event.getItemId(),
  2050.                                                                         event.getField('SETE').getConvertedValue(),
  2051.                                                                         'SETE'
  2052.                                                                     )
  2053.                                                                 }
  2054.                                                                 if (event.isChanged('OUT')) {                                                                                                                      
  2055.                                                                     updateValorMes(
  2056.                                                                         event.getItemId(),
  2057.                                                                         event.getField('OUT').getConvertedValue(),
  2058.                                                                         'OUT'
  2059.                                                                     )
  2060.                                                                 }
  2061.                                                                 if (event.isChanged('NOV')) {                                                                                                                      
  2062.                                                                     updateValorMes(
  2063.                                                                         event.getItemId(),
  2064.                                                                         event.getField('NOV').getConvertedValue(),
  2065.                                                                         'NOV'
  2066.                                                                     )
  2067.                                                                 }
  2068.                                                                 if (event.isChanged('DEZ')) {                                                                                                                      
  2069.                                                                     updateValorMes(
  2070.                                                                         event.getItemId(),
  2071.                                                                         event.getField('DEZ').getConvertedValue(),
  2072.                                                                         'DEZ'
  2073.                                                                     )
  2074.                                                                 }
  2075.                                                                 if (event.isChanged('RESPONSAVEL_2')) {
  2076.                                                                     updateResponsavel2(
  2077.                                                                         event.getItemId(),
  2078.                                                                         event.getField('RESPONSAVEL_2').getConvertedValue()
  2079.                                                                     )
  2080.                                                                 }                                                                                          
  2081.                                                                 updateTotal(event.getItemId());
  2082.                                                                 event.commit();
  2083.                                                                    
  2084.                                                                 engine.getField('db_orcamento_Impostos').refresh();
  2085.                                                                 engine.getField('db_dreConsolidada').refresh();
  2086.                                                             }
  2087.                                                         ]]>
  2088.                                             </script>
  2089.                                         </itemChange>
  2090.                                     </events>
  2091.  
  2092.                                     <styleGenerator>
  2093.                                         <scriptGenerator language="JavaScript">
  2094.                                             <![CDATA[
  2095.                                                             function getStyle(itemId, columnId, item) {
  2096.                                                                 if (columnId == 'VALOR_TOTAL') {
  2097.                                                                       return 'background-dark-gray';                                                                                                                                                                                                               
  2098.                                                                 }
  2099.                                                             }
  2100.                                                         ]]>
  2101.                                         </scriptGenerator>
  2102.                                     </styleGenerator>
  2103.  
  2104.  
  2105.                                 </DBTable>
  2106.  
  2107.                             </VerticalLayout>
  2108.                         </ComplexPanel>
  2109.  
  2110.                     </VerticalLayout>
  2111.                 </WindowLayout>
  2112.                 <WindowLayout isLayout="true" id="windowInvestimentos" windowWidth="100%" windowHeight="90%" windowClosable="true" windowModal="true" caption="Investimentos">
  2113.  
  2114.                     <VerticalLayout width="100%" margin="true" spacing="true" cssAlign="top: 0px; left: 0px;">
  2115.                         <!-- ORÇAMENTO - MENSAL -  NIVEL 1 - Investimentos -->
  2116.                         <ComplexPanel caption="Investimentos" id="pa_orcamento_Investimentos" width="100%" align="TOP_LEFT">
  2117.  
  2118.                             <VerticalLayout width="100%">
  2119.  
  2120.                                 <DBTable id="db_orcamento_Investimentos" type="number" width="100%" height="100%" required="false" multivalue="false" visible="true" editDisposition="MODAL" exportXLS="true" debugSQL="true" gridSelectable="true" updatable="true" editable="true" useGridComponent="true" editAsync="false" alwaysSelectable="false" keepState="false" align="MIDDLE_CENTER" showRowCount="true" frozenColumns="6">
  2121.  
  2122.                                     <datasource>
  2123.                                         <freeQuery connection-key="vitruvio">
  2124.                                             <![CDATA[
  2125.                                                         SELECT
  2126.                                                             NVL(VALOR_TOTAL,0) AS VALOR_TOTAL
  2127.                                                             , JAN
  2128.                                                             , FEV
  2129.                                                             , MAR
  2130.                                                             , ABR
  2131.                                                             , MAI
  2132.                                                             , JUN
  2133.                                                             , JUL
  2134.                                                             , AGO
  2135.                                                             , SETE
  2136.                                                             , OUT
  2137.                                                             , NOV
  2138.                                                             , DEZ
  2139.                                                             , RESPONSAVEL_1
  2140.                                                             , RESPONSAVEL_2
  2141.                                                             , LOJA
  2142.                                                             , SEQUENCIAL
  2143.                                                             , ANO  
  2144.                                                             , P1
  2145.                                                             , P1_ID_FULL
  2146.                                                             , P1_DESC_PLANO_CONTA                                                        
  2147.                                                         FROM EX_ORCAMENTO_PLANO_CONTA
  2148.                                                         WHERE
  2149.                                                             1 = 1  
  2150.                                                             AND INF_FINANCEIRA = 4 /*Investimentos*/   
  2151.                                                             and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  2152.                                                             and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})
  2153.                                                         ORDER BY LOJA, P1                                                      
  2154.  
  2155.                                                     ]]>
  2156.                                         </freeQuery>
  2157.                                     </datasource>
  2158.                                     <key-field>SEQUENCIAL</key-field>
  2159.                                     <columns>
  2160.                                         <column name="LOJA" caption="Loja" expand-ratio="0.2" />
  2161.                                         <column name="ANO" caption="Ano" expand-ratio="0.2" />
  2162.  
  2163.                                         <column name="P1_ID_FULL" caption="Plano de conta" format="00000" expand-ratio="0.3" />
  2164.  
  2165.                                         <column name="P1_DESC_PLANO_CONTA" caption="Descritivo" expand-ratio="0.4" />
  2166.  
  2167.                                         <generated name="RESPONSAVEL_1" caption="Responsável (1)" cache="false" expand-ratio="0.3">
  2168.                                             <scriptColumnGenerator language="JavaScript">
  2169.                                                 <![CDATA[
  2170.                                                             importClass(Packages.br.com.davinti.base.vaadin.components.layout.MessageBox);
  2171.                                                             importClass(Packages.com.vaadin.ui.ComboBox);
  2172.                                                             importClass(Packages.br.com.davinti.base.vaadin.components.data.container.ContainerUtils);
  2173.                                                             importClass(Packages.com.vaadin.data.Property);
  2174.                                                                                                                        
  2175.                                                             var setResponsavel = function(sequencial, valor) {
  2176.  
  2177.                                                                 var db = libService.loadScript('db');
  2178.                                                                 var dbVitruvio = new db('vitruvio');                                                                   
  2179.                                                                 var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET RESPONSAVEL_1 = :valor where sequencial = :sequencial"                                                                                                                                  
  2180.                                                                 var param = {
  2181.                                                                         sequencial: sequencial,                                                                    
  2182.                                                                         valor: valor
  2183.                                                                 };
  2184.                                                                                                                                
  2185.                                                                 var row = dbVitruvio.update(sqlAtualiza, param);
  2186.                                                             };
  2187.                                                            
  2188.                                                             function generate(itemId, columnId, item, container) {
  2189.                                                                
  2190.                                                                 var sql = "select LOGIN, NOME from NAUTH.usuario ORDER BY NOME";
  2191.                                                                
  2192.                                                                 var ds = vQueryService.executeQuery('nauth', sql);
  2193.                                                                
  2194.                                                                 if(ds == null){
  2195.                                                                     return null;
  2196.                                                                 }
  2197.                                                                
  2198.                                                                 var map = new java.util.LinkedHashMap();
  2199.                                                                
  2200.                                                                 while(ds.next()) {
  2201.                                                                     map.put(ds.getString('LOGIN'), ds.getString('NOME'));
  2202.                                                                 }
  2203.                                                                
  2204.                                                                 var combo = new ComboBox();
  2205.                                                                 combo.setWidth("100%");
  2206.                                                                 ContainerUtils.createAndConfigureContainerFromCaptionMap(map, combo);
  2207.                                                                
  2208.                                                                 var linha = item;
  2209.                                                                
  2210.                                                                 if(linha.getItemProperty('RESPONSAVEL_1').getValue()) {
  2211.                                                                     combo.setValue(linha.getItemProperty('RESPONSAVEL_1').getValue());
  2212.                                                                 }                                  
  2213.                                                                
  2214.                                                                 combo.addValueChangeListener(new Property.ValueChangeListener() {
  2215.                                                                     valueChange: function(event) {
  2216.                                                                         println(event.getProperty().getValue());                                                                                                                                                                                                               
  2217.                                                                         setResponsavel(
  2218.                                                                             linha.getItemProperty('SEQUENCIAL').getValue().longValue(),                                                                        
  2219.                                                                             event.getProperty().getValue()                             
  2220.                                                                         );                                                                                                                                                                                 
  2221.                                                                     },
  2222.                                                                     hashCode: function() {
  2223.                                                                         return combo.hashCode();
  2224.                                                                     }
  2225.                                                                 });
  2226.                                                                
  2227.                                                                 return combo;
  2228.                                                             }
  2229.                                                         ]]>
  2230.                                             </scriptColumnGenerator>
  2231.                                         </generated>
  2232.  
  2233.                                         <column name="RESPONSAVEL_2" caption="Responsável (2)" expand-ratio="0.4" editable="true" />
  2234.  
  2235.                                         <column name="JAN" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Janeiro" expand-ratio="0.2" editable="true" />
  2236.  
  2237.                                         <column name="FEV" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Fevereiro" expand-ratio="0.2" editable="true" />
  2238.  
  2239.                                         <column name="MAR" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Março" expand-ratio="0.2" editable="true" />
  2240.  
  2241.                                         <column name="ABR" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Abril" expand-ratio="0.2" editable="true" />
  2242.  
  2243.                                         <column name="MAI" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Maio" expand-ratio="0.2" editable="true" />
  2244.  
  2245.                                         <column name="JUN" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Junho" expand-ratio="0.2" editable="true" />
  2246.  
  2247.                                         <column name="JUL" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Julho" expand-ratio="0.2" editable="true" />
  2248.  
  2249.                                         <column name="AGO" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Agosto" expand-ratio="0.2" editable="true" />
  2250.  
  2251.                                         <column name="SETE" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Setembro" expand-ratio="0.2" editable="true" />
  2252.  
  2253.                                         <column name="OUT" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Outubro" expand-ratio="0.2" editable="true" />
  2254.  
  2255.                                         <column name="NOV" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Novembro" expand-ratio="0.2" editable="true" />
  2256.  
  2257.                                         <column name="DEZ" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Dezembro" expand-ratio="0.2" editable="true" />
  2258.  
  2259.                                         <column name="VALOR_TOTAL" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Total" expand-ratio="0.6" editable="false" />
  2260.  
  2261.  
  2262.                                     </columns>
  2263.  
  2264.                                     <bind>
  2265.                                         <parameter value-type="number" defaultValue="0" parameterName="EMPRESA" field-ref="empresa" />
  2266.                                         <parameter value-type="number" defaultValue="1800" parameterName="ANO" field-ref="filtroAnoCompetencia" />
  2267.                                     </bind>
  2268.  
  2269.                                     <events>
  2270.                                         <itemChange>
  2271.                                             <script language="JavaScript">
  2272.                                                 <![CDATA[
  2273.                                                             var db = libService.loadScript('db');
  2274.                                                             var dbVitruvio = new db('vitruvio');
  2275.                                                            
  2276.                                                             function updateValorMes(sequencial, valor, mes) {
  2277.                                                                 dbVitruvio.transaction(function() {
  2278.                                                                     if (mes == 'JAN'){
  2279.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET JAN = :valor where sequencial = :sequencial";                                               
  2280.                                                                     } else if (mes == 'FEV'){
  2281.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET FEV = :valor where sequencial = :sequencial";                                               
  2282.                                                                     } else if (mes == 'MAR'){
  2283.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET MAR = :valor where sequencial = :sequencial";                                               
  2284.                                                                     } else if (mes == 'ABR'){
  2285.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET ABR = :valor where sequencial = :sequencial";                                               
  2286.                                                                     } else if (mes == 'MAI'){
  2287.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET MAI = :valor where sequencial = :sequencial";                                               
  2288.                                                                     } else if (mes == 'JUN'){
  2289.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET JUN = :valor where sequencial = :sequencial";                                               
  2290.                                                                     } else if (mes == 'JUL'){
  2291.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET JUL = :valor where sequencial = :sequencial";                                               
  2292.                                                                     } else if (mes == 'AGO'){
  2293.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET AGO = :valor where sequencial = :sequencial";                                               
  2294.                                                                     } else if (mes == 'SETE'){
  2295.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET SETE = :valor where sequencial = :sequencial";                                          
  2296.                                                                     } else if (mes == 'OUT'){
  2297.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET OUT = :valor where sequencial = :sequencial";                                                                                                               
  2298.                                                                     } else if (mes == 'NOV'){
  2299.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET NOV = :valor where sequencial = :sequencial";                                               
  2300.                                                                     } else if (mes == 'DEZ'){
  2301.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET DEZ = :valor where sequencial = :sequencial";                                               
  2302.                                                                     }          
  2303.                                                                     var param = {
  2304.                                                                         sequencial: sequencial,
  2305.                                                                         valor: valor                                                                       
  2306.                                                                     };
  2307.                                                                     this.update(sqlAtualiza, param);
  2308.                                                                 });                                                        
  2309.                                                             };
  2310.                                                            
  2311.                                                             function updateResponsavel2(sequencial, valor) {                                                           
  2312.                                                                 dbVitruvio.transaction(function() {
  2313.                                                                     var sqlAtualiza = "UPDATE EX_ORCAMENTO_PLANO_CONTA SET RESPONSAVEL_2 = :valor where sequencial = :sequencial";
  2314.                                                                     var param = {
  2315.                                                                         sequencial: sequencial,
  2316.                                                                         valor: valor                                                                       
  2317.                                                                     };
  2318.                                                                     this.update(sqlAtualiza, param);
  2319.                                                                 });                                                        
  2320.                                                             }; 
  2321.                                                            
  2322.                                                             function updateTotal(sequencial) {                                                                                                                     
  2323.                                                                 dbVitruvio.transaction(function() {
  2324.                                                                     var sqlAtualiza =
  2325.                                                                         "UPDATE EX_ORCAMENTO_PLANO_CONTA SET VALOR_TOTAL = ((NVL(JAN,0)) + (NVL(FEV,0)) + (NVL(MAR,0)) + (NVL(ABR,0)) + (NVL(MAI,0)) + (NVL(JUN,0)) + (NVL(JUL,0)) + (NVL(AGO,0)) + (NVL(SETE,0)) + (NVL(OUT,0)) + (NVL(NOV,0)) + (NVL(DEZ,0))) where sequencial = :sequencial";
  2326.                                                                     var param = {
  2327.                                                                         sequencial: sequencial                                                                                     
  2328.                                                                     };
  2329.                                                                     println(sqlAtualiza);                                                                  
  2330.                                                                     this.update(sqlAtualiza, param);
  2331.                                                                 });                                                        
  2332.                                                             };
  2333.                                                                                        
  2334.                                                             function onChange(event) {
  2335.                                                                 if (event.isChanged('JAN')) {                                                                                                                      
  2336.                                                                     updateValorMes(
  2337.                                                                         event.getItemId(),
  2338.                                                                         event.getField('JAN').getConvertedValue(),
  2339.                                                                         'JAN'
  2340.                                                                     )
  2341.                                                                 }
  2342.                                                                 if (event.isChanged('FEV')) {                                                                                                                      
  2343.                                                                     updateValorMes(
  2344.                                                                         event.getItemId(),
  2345.                                                                         event.getField('FEV').getConvertedValue(),
  2346.                                                                         'FEV'
  2347.                                                                     )
  2348.                                                                 }
  2349.                                                                 if (event.isChanged('MAR')) {                                                                                                                      
  2350.                                                                     updateValorMes(
  2351.                                                                         event.getItemId(),
  2352.                                                                         event.getField('MAR').getConvertedValue(),
  2353.                                                                         'MAR'
  2354.                                                                     )
  2355.                                                                 }
  2356.                                                                 if (event.isChanged('ABR')) {                                                                                                                      
  2357.                                                                     updateValorMes(
  2358.                                                                         event.getItemId(),
  2359.                                                                         event.getField('ABR').getConvertedValue(),
  2360.                                                                         'ABR'
  2361.                                                                     )
  2362.                                                                 }
  2363.                                                                 if (event.isChanged('MAI')) {                                                                                                                      
  2364.                                                                     updateValorMes(
  2365.                                                                         event.getItemId(),
  2366.                                                                         event.getField('MAI').getConvertedValue(),
  2367.                                                                         'MAI'
  2368.                                                                     )
  2369.                                                                 }
  2370.                                                                 if (event.isChanged('JUN')) {                                                                                                                      
  2371.                                                                     updateValorMes(
  2372.                                                                         event.getItemId(),
  2373.                                                                         event.getField('JUN').getConvertedValue(),
  2374.                                                                         'JUN'
  2375.                                                                     )
  2376.                                                                 }
  2377.                                                                 if (event.isChanged('JUL')) {                                                                                                                      
  2378.                                                                     updateValorMes(
  2379.                                                                         event.getItemId(),
  2380.                                                                         event.getField('JUL').getConvertedValue(),
  2381.                                                                         'JUL'
  2382.                                                                     )
  2383.                                                                 }                                                              
  2384.                                                                 if (event.isChanged('AGO')) {                                                                                                                      
  2385.                                                                     updateValorMes(
  2386.                                                                         event.getItemId(),
  2387.                                                                         event.getField('AGO').getConvertedValue(),
  2388.                                                                         'AGO'
  2389.                                                                     )
  2390.                                                                 }
  2391.                                                                 if (event.isChanged('SETE')) {                                                                                                                     
  2392.                                                                     updateValorMes(
  2393.                                                                         event.getItemId(),
  2394.                                                                         event.getField('SETE').getConvertedValue(),
  2395.                                                                         'SETE'
  2396.                                                                     )
  2397.                                                                 }
  2398.                                                                 if (event.isChanged('OUT')) {                                                                                                                      
  2399.                                                                     updateValorMes(
  2400.                                                                         event.getItemId(),
  2401.                                                                         event.getField('OUT').getConvertedValue(),
  2402.                                                                         'OUT'
  2403.                                                                     )
  2404.                                                                 }
  2405.                                                                 if (event.isChanged('NOV')) {                                                                                                                      
  2406.                                                                     updateValorMes(
  2407.                                                                         event.getItemId(),
  2408.                                                                         event.getField('NOV').getConvertedValue(),
  2409.                                                                         'NOV'
  2410.                                                                     )
  2411.                                                                 }
  2412.                                                                 if (event.isChanged('DEZ')) {                                                                                                                      
  2413.                                                                     updateValorMes(
  2414.                                                                         event.getItemId(),
  2415.                                                                         event.getField('DEZ').getConvertedValue(),
  2416.                                                                         'DEZ'
  2417.                                                                     )
  2418.                                                                 }
  2419.                                                                 if (event.isChanged('RESPONSAVEL_2')) {
  2420.                                                                     updateResponsavel2(
  2421.                                                                         event.getItemId(),
  2422.                                                                         event.getField('RESPONSAVEL_2').getConvertedValue()
  2423.                                                                     )
  2424.                                                                 }                                                                                          
  2425.                                                                 updateTotal(event.getItemId());
  2426.                                                                 event.commit();
  2427.                                                                    
  2428.                                                                 engine.getField('db_orcamento_Investimentos').refresh();
  2429.                                                                 engine.getField('db_dreConsolidada').refresh();
  2430.                                                             }
  2431.                                                         ]]>
  2432.                                             </script>
  2433.                                         </itemChange>
  2434.                                     </events>
  2435.  
  2436.                                     <styleGenerator>
  2437.                                         <scriptGenerator language="JavaScript">
  2438.                                             <![CDATA[
  2439.                                                             function getStyle(itemId, columnId, item) {
  2440.                                                                 if (columnId == 'VALOR_TOTAL') {
  2441.                                                                       return 'background-dark-gray';                                                                                                                                                                                                               
  2442.                                                                 }
  2443.                                                             }
  2444.                                                         ]]>
  2445.                                         </scriptGenerator>
  2446.                                     </styleGenerator>
  2447.  
  2448.  
  2449.                                 </DBTable>
  2450.  
  2451.                             </VerticalLayout>
  2452.                         </ComplexPanel>
  2453.  
  2454.                     </VerticalLayout>
  2455.                 </WindowLayout>
  2456.                 <WindowLayout isLayout="true" id="windowJurosAcrescimos" windowWidth="100%" windowHeight="90%" windowClosable="true" windowModal="true" caption="Juros e Acréscimos Financeiros">
  2457.                     <VerticalLayout width="100%" margin="true" spacing="true" cssAlign="top: 0px; left: 0px;">
  2458.                         <!-- ORÇAMENTO - MENSAL -  NIVEL 1 - Juros e Acréscimos Financeiros -->
  2459.                         <ComplexPanel caption="Juros e Acréscimos Financeiros" id="dreMensalExplosao1_JurosAcrescimos" width="100%" align="TOP_LEFT">
  2460.  
  2461.                             <VerticalLayout width="100%">
  2462.  
  2463.                                 <DBTable id="db_orcamento_JurosAcrescimos" type="number" width="100%" height="100%" required="false" multivalue="false" visible="true" editDisposition="MODAL" exportXLS="true" debugSQL="true" gridSelectable="true" updatable="true" editable="true" useGridComponent="true" editAsync="false" alwaysSelectable="false" keepState="false" align="MIDDLE_CENTER" showRowCount="true" frozenColumns="4">
  2464.  
  2465.                                     <datasource>
  2466.                                         <freeQuery connection-key="vitruvio">
  2467.                                             <![CDATA[
  2468.                                                         SELECT
  2469.                                                             NVL(VALOR_TOTAL,0) AS VALOR_TOTAL
  2470.                                                             , JAN
  2471.                                                             , FEV
  2472.                                                             , MAR
  2473.                                                             , ABR
  2474.                                                             , MAI
  2475.                                                             , JUN
  2476.                                                             , JUL
  2477.                                                             , AGO
  2478.                                                             , SETE
  2479.                                                             , OUT
  2480.                                                             , NOV
  2481.                                                             , DEZ
  2482.                                                             , RESPONSAVEL_1
  2483.                                                             , RESPONSAVEL_2
  2484.                                                             , LOJA
  2485.                                                             , DESCRICAO
  2486.                                                             , CODIGO
  2487.                                                             , SEQUENCIAL
  2488.                                                             , ANO                                                            
  2489.                                                         FROM EX_ORCAMENTO_OUTROS
  2490.                                                         WHERE
  2491.                                                             1 = 1
  2492.                                                             and INF_FINANCEIRA = 6 /*Juros e Acréscimos Financeiros*/
  2493.                                                             and (${EMPRESA} = 0 or ${EMPRESA} is null or LOJA = ${EMPRESA})
  2494.                                                             and (${ANO} = 0 or ${ANO} is null or ANO = ${ANO})
  2495.                                                         ORDER BY LOJA, DESCRICAO                                                       
  2496.  
  2497.                                                     ]]>
  2498.                                         </freeQuery>
  2499.                                     </datasource>
  2500.                                     <key-field>SEQUENCIAL</key-field>
  2501.                                     <columns>
  2502.                                         <column name="LOJA" caption="Loja" expand-ratio="0.2" />
  2503.                                         <column name="ANO" caption="Ano" expand-ratio="0.2" />
  2504.  
  2505.                                         <generated name="RESPONSAVEL_1" caption="Responsável (1)" cache="false" expand-ratio="0.3">
  2506.                                             <scriptColumnGenerator language="JavaScript">
  2507.                                                 <![CDATA[
  2508.                                                             importClass(Packages.br.com.davinti.base.vaadin.components.layout.MessageBox);
  2509.                                                             importClass(Packages.com.vaadin.ui.ComboBox);
  2510.                                                             importClass(Packages.br.com.davinti.base.vaadin.components.data.container.ContainerUtils);
  2511.                                                             importClass(Packages.com.vaadin.data.Property);
  2512.                                                                                                                        
  2513.                                                             var setResponsavel = function(sequencial, valor) {
  2514.  
  2515.                                                                 var db = libService.loadScript('db');
  2516.                                                                 var dbVitruvio = new db('vitruvio');                                                                   
  2517.                                                                 var sqlAtualiza = "UPDATE EX_ORCAMENTO_OUTROS SET RESPONSAVEL_1 = :valor where sequencial = :sequencial"                                                                                                                                   
  2518.                                                                 var param = {
  2519.                                                                         sequencial: sequencial,                                                                    
  2520.                                                                         valor: valor
  2521.                                                                 };
  2522.                                                                                                                                
  2523.                                                                 var row = dbVitruvio.update(sqlAtualiza, param);
  2524.                                                             };
  2525.                                                            
  2526.                                                             function generate(itemId, columnId, item, container) {
  2527.                                                                
  2528.                                                                 var sql = "select LOGIN, NOME from NAUTH.usuario ORDER BY NOME";
  2529.                                                                
  2530.                                                                 var ds = vQueryService.executeQuery('nauth', sql);
  2531.                                                                
  2532.                                                                 if(ds == null){
  2533.                                                                     return null;
  2534.                                                                 }
  2535.                                                                
  2536.                                                                 var map = new java.util.LinkedHashMap();
  2537.                                                                
  2538.                                                                 while(ds.next()) {
  2539.                                                                     map.put(ds.getString('LOGIN'), ds.getString('NOME'));
  2540.                                                                 }
  2541.                                                                
  2542.                                                                 var combo = new ComboBox();
  2543.                                                                 combo.setWidth("100%");
  2544.                                                                 ContainerUtils.createAndConfigureContainerFromCaptionMap(map, combo);
  2545.                                                                
  2546.                                                                 var linha = item;
  2547.                                                                
  2548.                                                                 if(linha.getItemProperty('RESPONSAVEL_1').getValue()) {
  2549.                                                                     combo.setValue(linha.getItemProperty('RESPONSAVEL_1').getValue());
  2550.                                                                 }                                  
  2551.                                                                
  2552.                                                                 combo.addValueChangeListener(new Property.ValueChangeListener() {
  2553.                                                                     valueChange: function(event) {
  2554.                                                                         println(event.getProperty().getValue());                                                                                                                                                                                                               
  2555.                                                                         setResponsavel(
  2556.                                                                             linha.getItemProperty('SEQUENCIAL').getValue().longValue(),                                                                        
  2557.                                                                             event.getProperty().getValue()                             
  2558.                                                                         );                                                                                                                                                                                 
  2559.                                                                     },
  2560.                                                                     hashCode: function() {
  2561.                                                                         return combo.hashCode();
  2562.                                                                     }
  2563.                                                                 });
  2564.                                                                
  2565.                                                                 return combo;
  2566.                                                             }
  2567.                                                         ]]>
  2568.                                             </scriptColumnGenerator>
  2569.                                         </generated>
  2570.  
  2571.                                         <column name="RESPONSAVEL_2" caption="Responsável (2)" expand-ratio="0.4" editable="true" />
  2572.  
  2573.                                         <column name="JAN" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Janeiro" expand-ratio="0.2" editable="true" />
  2574.  
  2575.                                         <column name="FEV" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Fevereiro" expand-ratio="0.2" editable="true" />
  2576.  
  2577.                                         <column name="MAR" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Março" expand-ratio="0.2" editable="true" />
  2578.  
  2579.                                         <column name="ABR" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Abril" expand-ratio="0.2" editable="true" />
  2580.  
  2581.                                         <column name="MAI" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Maio" expand-ratio="0.2" editable="true" />
  2582.  
  2583.                                         <column name="JUN" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Junho" expand-ratio="0.2" editable="true" />
  2584.  
  2585.                                         <column name="JUL" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Julho" expand-ratio="0.2" editable="true" />
  2586.  
  2587.                                         <column name="AGO" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Agosto" expand-ratio="0.2" editable="true" />
  2588.  
  2589.                                         <column name="SETE" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Setembro" expand-ratio="0.2" editable="true" />
  2590.  
  2591.                                         <column name="OUT" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Outubro" expand-ratio="0.2" editable="true" />
  2592.  
  2593.                                         <column name="NOV" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Novembro" expand-ratio="0.2" editable="true" />
  2594.  
  2595.                                         <column name="DEZ" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Dezembro" expand-ratio="0.2" editable="true" />
  2596.  
  2597.                                         <column name="VALOR_TOTAL" format="#,##0.00" decimalSeparator="," groupingSeparator="." aggregate="SUM" caption="Total" expand-ratio="0.6" editable="false" />
  2598.  
  2599.                                     </columns>
  2600.  
  2601.                                     <bind>
  2602.                                         <parameter value-type="number" defaultValue="0" parameterName="EMPRESA" field-ref="empresa" />
  2603.                                         <parameter value-type="number" defaultValue="1800" parameterName="ANO" field-ref="filtroAnoCompetencia" />
  2604.                                     </bind>
  2605.  
  2606.                                     <events>
  2607.                                         <itemChange>
  2608.                                             <script language="JavaScript">
  2609.                                                 <![CDATA[
  2610.                                                             var db = libService.loadScript('db');
  2611.                                                             var dbVitruvio = new db('vitruvio');
  2612.                                                            
  2613.                                                             function updateValorMes(sequencial, valor, mes) {
  2614.                                                                 dbVitruvio.transaction(function() {
  2615.                                                                     if (mes == 'JAN'){
  2616.                                                                         var sqlAtualiza = "UPDATE EX_ORCAMENTO_OUTROS SET JAN = :valor where sequencial = :sequencial";                                            
  2617.                                                                     } else if (mes == 'FEV'){