ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品日产aⅴ,国产精品123区,国产精品丝袜在线播放http://www.aygfsteel.com/gavinju/开源框æž?/description>zh-cnMon, 09 Jun 2025 14:04:43 GMTMon, 09 Jun 2025 14:04:43 GMT60java instanceof‹¹…è°ˆåQ?/title><link>http://www.aygfsteel.com/gavinju/archive/2007/07/04/128195.html</link><dc:creator>HandSoft</dc:creator><author>HandSoft</author><pubDate>Wed, 04 Jul 2007 14:17:00 GMT</pubDate><guid>http://www.aygfsteel.com/gavinju/archive/2007/07/04/128195.html</guid><wfw:comment>http://www.aygfsteel.com/gavinju/comments/128195.html</wfw:comment><comments>http://www.aygfsteel.com/gavinju/archive/2007/07/04/128195.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/gavinju/comments/commentRss/128195.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/gavinju/services/trackbacks/128195.html</trackback:ping><description><![CDATA[instanceof 是Java的一个二元操作符,å’?=, > , < 是同一¾cÖM¸œè¥? ç”׃ºŽå®ƒæ˜¯ç”±å­—母组成的,所以也是Java的保留关键字. 它的作用是测试它左边的对象是否是它右边的¾cȝš„实例, ˜q”回boolean¾cÕdž‹çš„æ•°æ®ã€‚例åQ?br>      String s = "I an an Object!";<br>      boolean isObject = s  instanceOf  Object;<br>我们声明了一个String对象引用, 指向一个String 对象, 然后用instanceof 来测试它所指向的对象是否是Object¾cȝš„一个实ä¾? 昄¡„¶, ˜q™æ˜¯çœŸçš„, 所以返回true,也就是isObjectçš„å€égØ“True.<br>      instanceof有一些用å¤? 比如我们写了一个处理帐单的¾pȝ»Ÿ, 其中有这样三个类åQ?br>      public class Bill{//省略¾l†èŠ‚}<br>      public class PhoneBill  extends Bill {//省略¾l†èŠ‚}<br>      public class GasBill extends Bill {//省略¾l†èŠ‚}     <br>在处理程序里有一个方æ³? 接受一个Bill¾cÕdž‹çš„对è±? 计算金额. 假设两种帐单计算æ–ÒŽ(gu¨©)³•不同, 而传入的Bill对象可能是两¿Uä¸­çš„ä“Q何一¿U? 所以要用instanceof来判断:<br>      public  double  calculate(Bill  bill){<br>             if(bill  instanceof PhoneBill){<br>                   //计算ç”?sh¨´)话帐å?br>             }<br>             if(bill  instanceof  GasBill){<br>                  //计算煤气帐单<br>             }<br>             ...<br>      }<br>˜q™æ ·ž®±å¯ä»¥ç”¨ä¸€ä¸ªæ–¹æ³•处理两¿Uå­¾c?<br>ç„¶è€? ˜q™ç§åšæ³•通常被认为是没有好好利用面向对象中的多态æ€?  其实上面的功能要求用æ–ÒŽ(gu¨©)³•重蝲完全可以实现, ˜q™æ˜¯é¢å‘对象¾~–成应有的做æ³? 避免回到¾l“构化编½E‹æ¨¡å¼? 只有提供两个名字和返回值都相同, 接受参数¾cÕdž‹ä¸åŒçš„æ–¹æ³•就可以äº? <br>      public double calculate(PhoneBill bill){<br>           //计算ç”?sh¨´)话帐å?br>      }<br>       public double calculate(GasBill  bill){<br>          //计算燃气帐单<br>       }<br>所ä»?  使用instanceof在绝大多数情况下òq¶ä¸æ˜¯æŽ¨èçš„做法, 应当好好利用多æ€? <img src ="http://www.aygfsteel.com/gavinju/aggbug/128195.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/gavinju/" target="_blank">HandSoft</a> 2007-07-04 22:17 <a href="http://www.aygfsteel.com/gavinju/archive/2007/07/04/128195.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>PL/SQL ½E‹åºåŒ…结构优化_1http://www.aygfsteel.com/gavinju/archive/2007/07/04/128150.htmlHandSoftHandSoftWed, 04 Jul 2007 09:16:00 GMThttp://www.aygfsteel.com/gavinju/archive/2007/07/04/128150.htmlhttp://www.aygfsteel.com/gavinju/comments/128150.htmlhttp://www.aygfsteel.com/gavinju/archive/2007/07/04/128150.html#Feedback0http://www.aygfsteel.com/gavinju/comments/commentRss/128150.htmlhttp://www.aygfsteel.com/gavinju/services/trackbacks/128150.htmlPL/SQL½E‹åºåŒ…中åQ?br>æ–ÒŽ(gu¨©)³•一åQ?br>           包头åQ?br>           create or replace package   XXXX_X_XXX_PKG    is

                   PROCEDURE   A(errbuf           OUT VARCHAR2,
                            retcode                   OUT    VARCHAR2,
                            p_1                        IN    VARCHAR2,
                            p_2                        IN    NUMBER);

           end XXXX_X_XXX_PKG ;

 æ³¨ï¼šåŒ…头中声明一个Procedure, 包体中声明一个主Procedure(例如: A),多个从Procedure(一般是些共用方æ³?(例如åQšB), 注意包体中Procedure实现‹Æ¡åºåQŒåº”先声明B ,
在A˜q‡ç¨‹é‡Œï¼Œå¯ä»¥è°ƒç”¨B.

æ–ÒŽ(gu¨©)³•äº? 
      包头: 
      create or replace package   XXXX_X_XXX_PKG    is

                   PROCEDURE    A(errbuf           OUT VARCHAR2,
                            retcode                   OUT    VARCHAR2,
                            p_1                        IN    VARCHAR2,
                            p_2                        IN    NUMBER);

                   PROCEDURE    B( retcode          OUT    VARCHAR2,
                            p_1                        IN    VARCHAR2,);

           end XXXX_X_XXX_PKG ;
      包体ä¸?此时A可以直接引用B,不论实现‹Æ¡åº.



]]>
Oracle PL/SQL 存储˜q‡ç¨‹ä¸€èˆ¬å†™æ³?/title><link>http://www.aygfsteel.com/gavinju/archive/2007/06/29/127072.html</link><dc:creator>HandSoft</dc:creator><author>HandSoft</author><pubDate>Fri, 29 Jun 2007 06:49:00 GMT</pubDate><guid>http://www.aygfsteel.com/gavinju/archive/2007/06/29/127072.html</guid><wfw:comment>http://www.aygfsteel.com/gavinju/comments/127072.html</wfw:comment><comments>http://www.aygfsteel.com/gavinju/archive/2007/06/29/127072.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/gavinju/comments/commentRss/127072.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/gavinju/services/trackbacks/127072.html</trackback:ping><description><![CDATA[<p>procedure</p> <p>begin<br>  BEGIN    <br>    SELECT attribute5<br>           INTO l_list_name<br>    FROM   qp_list_headers_all<br>    WHERE list_header_id = p_list_header_id ;<br>  exception<br>    when others then<br>      raise targetListNameError;<br>  end;<br>exception</p> <p>    WHEN targetListNameError THEN<br>      -- fnd_file.put_line(fnd_file.output , rpad(upload_list.item_number,20,' ')<br>      --                                      ||'Start date should later than the current latest effective start data of the target price list.');      --此信息输出到EBSòq›_°ä¸­View Output中。fnd_file.log:  输出到Logä¸?br>      dbms_output.put_line('Target List is Null!');            --注意: 此信息用于输出到PL/SQL Developer控制åîC¸­ã€?br>END;</p> <img src ="http://www.aygfsteel.com/gavinju/aggbug/127072.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/gavinju/" target="_blank">HandSoft</a> 2007-06-29 14:49 <a href="http://www.aygfsteel.com/gavinju/archive/2007/06/29/127072.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java复制对象属性org.apache.commons.beanutils.BeanUtils...用法感æ?zh¨¨n)?/title><link>http://www.aygfsteel.com/gavinju/archive/2007/04/11/109836.html</link><dc:creator>HandSoft</dc:creator><author>HandSoft</author><pubDate>Wed, 11 Apr 2007 02:40:00 GMT</pubDate><guid>http://www.aygfsteel.com/gavinju/archive/2007/04/11/109836.html</guid><wfw:comment>http://www.aygfsteel.com/gavinju/comments/109836.html</wfw:comment><comments>http://www.aygfsteel.com/gavinju/archive/2007/04/11/109836.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/gavinju/comments/commentRss/109836.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/gavinju/services/trackbacks/109836.html</trackback:ping><description><![CDATA[<p>在Strutä¸?实现table中复制一行的功能<br>line[j]是要复制的一è¡?Action中可以获取到要复制的行的ID.<br>因䨓line[j]中有很多属æ€?要是一个一个的属性去get,然后set的话,代码量会<br>很大,而且会出现很多冗余代码ã€?br>˜q™æ˜¯æˆ‘要复制出来的一è¡?br>if (j == rowId && !line[j].getNewRecord()) {<br>     rowList.add(line[j]);<br>     //ž®†è¿™ä¸€è¡Œå…¨éƒ¨å¤åˆ?br>    }<br>现在要ä‹Éå¾—å…¶ä¸­çš„æŸå‡ ä¸ªå±žæ€§å¤åˆ¶å‡ºæ¥äØ“½I?br>则需要一个一个的set,get.<br>if (j == rowId && !line[j].getNewRecord()) {<br>    CreateDeliveryLineRow  cdlr = new CreateDeliveryLineRow  ();<br>    if(line[j].getMfgLot() != null){<br>         cdlr.setMfgLot = null;<br>   }<br>。。。。。ã€?br>     rowList.add(cdlr);<br>     //ž®†è¿™ä¸€è¡Œå…¨éƒ¨å¤åˆ?br>    }<br><br>以下是比较好的解å†Ïx–¹æ¡?<br>利用apacheçš„common¾cÖM¸­çš„BeanUtils来实现对象属性的复制<br>if (j == rowId && !line[j].getNewRecord()) {<br>     <br>       <br>       CreateDeliveryLineRow row = new CreateDeliveryLineRow();<br>       BeanUtils.copyProperties(row,line[j]);   //复制出对象line[j],ž®†å…¶å±žæ€§èµ‹äºˆrow<br>       row.setQuantity(null);                                     //在row中轻杄¡š„实现å¯ÒŽ(gu¨©)Ÿå‡ ä¸ªå±žæ€§çš„æŽ§åˆ¶<br>       row.setMfgLot(null);<br>       row.setMiniQuantity(null);<br>       row.setBoxQuantity(null);<br>      rowList.add(row);<br>      //rowList.add(cdr);<br>    }<br>===================================================<br>CreateDeliveryForm getForm = (CreateDeliveryForm) form;<br>。。。。。ã€?br>CreateDeliveryLineRow[] line = getForm.getLine();<br>if (line != null && line instanceof CreateDeliveryLineRow[]) {<br>   int size = line.length;</p> <p>   for (int j = 0; j < size; j++) {<br>    if (!line[j].getNewRecord() && !line[j+1].getNewRecord()) {<br>     if (line[j].getBoxQuantity() == 0L) {<br>      line[j].setBoxQuantity(null);<br>     }<br>     if (line[j].getMiniQuantity() == 0L) {<br>      line[j].setMiniQuantity(null);<br>     }<br>     if (line[j].getQuantity() == 0D) {<br>      line[j].setQuantity(null);<br>     }<br>     rowList.add(line[j]);<br>    }<br>    if (j == rowId && !line[j].getNewRecord()) {<br>     <br>       <br>       CreateDeliveryLineRow row = new CreateDeliveryLineRow();<br>       BeanUtils.copyProperties(row,line[j]);<br>       row.setQuantity(null);<br>       row.setMfgLot(null);<br>       row.setMiniQuantity(null);<br>       row.setBoxQuantity(null);<br>       rowList.add(row);<br>      //rowList.add(cdr);<br>    }</p> <p>   }<br>  }</p> 。。。。。ã€?br>request.setAttribute("results", rowList); <img src ="http://www.aygfsteel.com/gavinju/aggbug/109836.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/gavinju/" target="_blank">HandSoft</a> 2007-04-11 10:40 <a href="http://www.aygfsteel.com/gavinju/archive/2007/04/11/109836.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Dwr---examplehttp://www.aygfsteel.com/gavinju/archive/2007/01/21/95188.htmlHandSoftHandSoftSun, 21 Jan 2007 15:35:00 GMThttp://www.aygfsteel.com/gavinju/archive/2007/01/21/95188.htmlhttp://www.aygfsteel.com/gavinju/comments/95188.htmlhttp://www.aygfsteel.com/gavinju/archive/2007/01/21/95188.html#Feedback0http://www.aygfsteel.com/gavinju/comments/commentRss/95188.htmlhttp://www.aygfsteel.com/gavinju/services/trackbacks/95188.html 1. 在web.xmlæ–‡äšg中注册dwr
   <servlet>
    <servlet-name>dwr-invoker</servlet-name>
    <display-name>DWR Servlet</display-name>
    <description>Direct Web Remoter Servlet</description>
    <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
    <init-param>
        <param-name>debug</param-name>
        <param-value>true</param-value>
    </init-param>
 </servlet>
 <servlet-mapping>
    <servlet-name>dwr-invoker</servlet-name>
    <url-pattern>/dwr/*</url-pattern>
 </servlet-mapping>

 <welcome-file-list>
    <welcome-file>search.jsp</welcome-file>
 </welcome-file-list>

2.dwr.xml
 <dwr>
    <allow><convert convert="bean"  match="dwr.sample.Apartment"/>
    <create>
           <creator="new" javascript="ApartmentDAO" class="dwr.sample.ApartmentDAO">
                  <include method="findApartments"/>
                  <include method="countApartments"/>
           </creator>
    </create>
    </allow>
</dwr>
3.DB
CREATE TABLE APARTMENTS (id INTEGER, bedrooms INTEGER, bathrooms INTEGER, price INTEGER, address VARCHAR, city VARCHAR, province VARCHAR);
INSERT INTO APARTMENTS VALUES (16001, 1, 1, 850, '123 King St. East', 'Toronto', 'ON');
INSERT INTO APARTMENTS VALUES (16002, 2, 1, 1000, '1023 Yonge Ave.', 'Toronto', 'ON');
INSERT INTO APARTMENTS VALUES (16003, 2, 2, 1050, '27 Winchester St.', 'Toronto', 'ON');
4.Apertment.java
普通的javabean
5.DBUtils.java
   数据库链接类
   public class DBUtils {

 /*
  * Creates the sample data (table and records).
  */
 public static void setupDatabase(BufferedReader reader) {
  Connection c = null;
  Statement stmt = null;
  try {
   c = openConnection();
   stmt = c.createStatement();
   // reads the file with the SQL statements
   String line;
   while ((line = reader.readLine()) != null) {
    stmt.execute(line);
   }
   stmt.close();
   c.close();
  } catch (IOException e) {
   e.printStackTrace();
  } catch (SQLException e) {
   e.printStackTrace();
  } finally {
   try {
    stmt.close();
    c.close();
   } catch (SQLException e) {
    e.printStackTrace();
   }
  }
 }
 
 /*
  * Opens a database connection.
  */
 public static Connection openConnection() throws SQLException {
  Connection c = DriverManager.getConnection("jdbc:hsqldb:mem:dwr-sample", "sa", "");
  return c;
 }
 
}

6.ContextListener.java
   实现了ServletContextListerer接口的类
   public class ContextListener implements javax.servlet.ServletContextListener {

 /**
  * This method is invoked when the Web Application has been removed and is
  * no longer able to accept requests.
  * @param event
  */
 public void contextDestroyed(ServletContextEvent event) {
 }

 /**
  * This method is invoked when the Web Application is ready to service requests.
  * @param event
  */
 public void contextInitialized(ServletContextEvent event) {
  try {
   // load the driver
   Class.forName("org.hsqldb.jdbcDriver");
   // create the table and add sample data
   InputStreamReader in = new InputStreamReader(getClass().getClassLoader().getResourceAsStream("db.sql"));
   BufferedReader reader = new BufferedReader(in);
   DBUtils.setupDatabase(reader);
  } catch (ClassNotFoundException e) {
   e.printStackTrace();
  }
  
 }

}
7.ApartmentDAO.java
   业务逻辑�br />   public class ApartmentDAO {
 
 /**
  * Returns the available apartments based on the search criteria.
  * @param bedrooms minimum number of bedrooms
  * @param bathrooms minimum number of bathrooms
  * @param price maximum price to be paid
  * @return
  */
 public Collection findApartments(int bedrooms, int bathrooms, int price) {
  Collection list = new Vector();
  String sql = "select * from APARTMENTS" +
    createSearchWhereClause(bedrooms, bathrooms, price) +
    "order by bedrooms, bathrooms, price";

  // define db variables
  Connection c = null;
  Statement stmt = null;
  try {
   c = DBUtils.openConnection();
   stmt = c.createStatement();
   // just run the sql statement
   ResultSet rs = stmt.executeQuery(sql);
   while(rs.next()) {
    Apartment apartment = this.getApartment(rs);
    list.add(apartment);
   }
  } catch (SQLException e) {
   e.printStackTrace();
  } finally {
   try {
    stmt.close();
    c.close();
   } catch (SQLException e) {
    e.printStackTrace();
   }
  }

  return list;
 }
 
 /**
  * Returns the number of available apartments based on the search criteria.
  * @param bedrooms minimum number of bedrooms
  * @param bathrooms minimum number of bathrooms
  * @param price maximum price to be paid
  * @return
  */
 public int countApartments(int bedrooms, int bathrooms, int price) {
  String sql = "select count(*) as total from APARTMENTS" + createSearchWhereClause(bedrooms, bathrooms, price);
  int numberApartments = -1;
  // define db variables
  Connection c = null;
  Statement stmt = null;
  try {
   c = DBUtils.openConnection();
   stmt = c.createStatement();
   // just run the sql statement
   ResultSet rs = stmt.executeQuery(sql);
   if (rs.next()) {
    numberApartments = rs.getInt("total");
   }
  } catch (SQLException e) {
   e.printStackTrace();
  } finally {
   try {
    stmt.close();
    c.close();
   } catch (SQLException e) {
    e.printStackTrace();
   }
  }
  
  return numberApartments;
 }
 
 /**
  * Creates a Unit object from the database.
  * @param rs
  * @return
  * @throws SQLException
  */
 private Apartment getApartment(ResultSet rs) throws SQLException {
  Apartment ap = new Apartment();
  ap.setId(rs.getInt("id"));
  ap.setAddress(rs.getString("address"));
  ap.setBedrooms(rs.getInt("bedrooms"));
  ap.setBathrooms(rs.getInt("bathrooms"));
  ap.setPrice(rs.getInt("price"));
  ap.setCity(rs.getString("city"));
  ap.setProvince(rs.getString("province"));
  return ap;
 }
 
 
 /**
  * Creates the where clause for the search SQL statement.
  * @param bedrooms
  * @param bathrooms
  * @param price
  * @return
  */
 private String createSearchWhereClause(int bedrooms, int bathrooms, int price) {
  String where = " where bedrooms >= " + bedrooms +
    " and bathrooms >= " + bathrooms +
    " and price < " + price;
  return where;
 }

}
8. search.jsp
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
  <title>DWR Example</title>

   <style type="text/css" media="screen">
       @import url( style.css );
   </style> 
 
  <script src='dwr/interface/ApartmentDAO.js'></script>
  <script src='dwr/engine.js'></script>
  <script src='dwr/util.js'></script>
  <script>
 
  function updateTotal() {
    $("resultTable").style.display = 'none';
    var bedrooms = document.getElementById("bedrooms").value;
    var bathrooms = document.getElementById("bathrooms").value;
    var price = document.getElementById("price").value;
    ApartmentDAO.countApartments(loadTotal, bedrooms, bathrooms, price);
  }

  function updateResults() {
    DWRUtil.removeAllRows("apartmentsbody");
    var bedrooms = document.getElementById("bedrooms").value;
    var bathrooms = document.getElementById("bathrooms").value;
    var price = document.getElementById("price").value;
    ApartmentDAO.findApartments(fillTable, bedrooms, bathrooms, price);
    $("resultTable").style.display = '';
  }
 
  var getId = function(unit) { return unit.id };
  var getAddress = function(unit) { return unit.address };
  var getBedrooms = function(unit) { return unit.bedrooms };
  var getBathrooms = function(unit) { return unit.bathrooms };
  var getPrice = function(unit) { return unit.price };
   
  function loadTotal(data) {
    document.getElementById("totalRecords").innerHTML = data;
  }
 
  function fillTable(apartment) {
    DWRUtil.addRows("apartmentsbody", apartment, [ getId, getAddress, getBedrooms, getBathrooms, getPrice ]);
  }
 
</script>

</head>

<body onload="updateTotal();">

<h2>Find an apartment to rent</h2>

<table border="0">
<form name="rentalForm">
  <tr width="400">
   <td width="100">City</td>
   <td width="300">Toronto</td>
  </tr>
  <tr>
   <td>Beds</td>
   <td>
    <select id="bedrooms" onchange="updateTotal()">
     <option value="1">1 or more</option>
     <option value="2">2 or more</option>
     <option value="3">3 or more</option>
     <option value="4">4 or more</option>
    </select>
   </td>
  </tr>

  <tr>
   <td>Baths</td>
   <td>
    <select id="bathrooms" onchange="updateTotal()">
     <option value="1">1 or more</option>
     <option value="2">2 or more</option>
     <option value="3">3 or more</option>
     <option value="4">4 or more</option>
    </select>
   </td>
  </tr>

  <tr>
   <td>Price</td>
   <td>
    <select id="price" onchange="updateTotal()">
     <option value="800">under $800</option>
     <option value="1000">under $1,000</option>
     <option value="1250">under $1,250</option>
     <option value="1500" selected="selected">under $1,500</option>
     <option value="1800">under $1,800</option>
     <option value="2000">under $2,000</option>
    </select>
   </td>
  </tr>

  <tr>
   <td colspan="2">
    <blockquote>
     Available apartments: <span id="totalRecords" style="font-weight:bold;"></span>
    </blockquote>
   </td>
  </tr>

</form>
</table>

<p><input type="button" value="Show results!" onClick="updateResults();"></p>

<div id="resultTable">

<h2>Results</h2>

 <table border="1">
  <thead>
    <tr>
      <th width="40">Id</th>
      <th width="180">Address</th>
      <th width="60">Beds</th>
      <th width="60">Baths</th>
      <th width="60">Price</th>
    </tr>
  </thead>
  <tbody id="apartmentsbody">

  </tbody>
 </table>
</div>

</body>
</html>

ç”׃ºŽ™å¹ç›®éœ€è¦?需在我们现有的struts、hibernate工程上集成ajax功能.™å¹ç›®¾l„决定ä‹É用Dwr.
刚开始研½I¶Dwr.觉得真的很不é”? 只需很少量的代码,ž®Þpƒ½åœ¨çŽ°æœ‰çš„å·¥ç¨‹ä¸Šé›†æˆajax技æœ? 期待Dwr有更辉煌的明天!
喜欢Dwr技术的IT界朋友可以与本äh联系åQæœ›æå‡ºå¥½çš„æ„è§ä¸Žå¾è®?



]]>
Ö÷Õ¾Ö©Öë³ØÄ£°å£º ÔÆºÍÏØ| ÑôȪÊÐ| ÎÐÑôÏØ| º£ÄÏÊ¡| ÐËÉ½ÏØ| ¶«¹âÏØ| ¼ªÊ×ÊÐ| ²ýÄþÏØ| ½¡¿µ| ÎäÒåÏØ| ÓÀÖÝÊÐ| ÑγØÏØ| ÜõÍåÇø| ÇúÎÖÏØ| ɽÒõÏØ| ·ð½Ì| ²ÔÄÏÏØ| íìíôÏØ| º£ÁÖÊÐ| ºÓ½òÊÐ| ÁéÊÙÏØ| °²Î÷ÏØ| ÐËÉ½ÏØ| Æ«¹ØÏØ| á¯ÏªÊÐ| ²ªÀûÏØ| ½ÒÎ÷ÏØ| Ìì×£| ÈêÖÝÊÐ| ¼ÎÓø¹ØÊÐ| Äþ½òÏØ| ÑôȪÊÐ| DZ½­ÊÐ| Ñúå¨| ´ÈϪÊÐ| ÓñÉ½ÏØ| ɽÑôÏØ| ÈôÇ¼ÏØ| ÑÓÇìÏØ| ÒÁÄþÊÐ| ¹±¸ÂÏØ|