using System;
using System.Collections.Generic;
using System.Text;

namespace ReflectMethods
{
   public delegate void PropertyChangedDelegate(string propName, int value);
   public class Customer<T>
   {
      private int privData = 12;

      public event PropertyChangedDelegate OnPropertyChanged;

      public int PubData
      {
         get { return privData; }
         set { privData = value; }
      }

      public string DoSomething<U>(U input, ref Customer<T> otherCustomer,
         out Customer<T> newCustomer, int anotherInput)
      {
         int z = 21;
         string localString = "lokalna";

         newCustomer = new Customer<T>();
         return input.ToString();
      }
   }
}
