What you have done there is to extract year and have done numerical range 
query. To my knowledge such a scheme isn't in the ANSI SQL standard

Sent from my iPhone

On 08-Aug-2015, at 6:22 pm, "Himanshu Gahlaut" <[email protected]> 
wrote:

>>>>> The reason for me calling it unique is that the grain supported in the
> range can be different from the time grain of the data itself (for ex, one
> can query data by providing the year while the actual data in the facts may
> be in seconds granularity)
> 
> [Himanshu]: Support for this behaviour already exists in other databases.
> E.g. PostgresSQL allows to query data by providing year while the actual
> data in the facts is in seconds granularity. See below.
> 
> himanshu.gahlaut=# select * from test_table;
> 
>        time         | userid | requests
> 
> ---------------------+--------+----------
> 
> 2005-10-19 10:23:*54* | user1  |     1000
> 
> 2007-04-15 09:01:*05* | user1  |     2000
> 
> (2 rows)
> 
> 
> himanshu.gahlaut=# select sum(requests) as total_requests from test_table
> where extract(year from time) BETWEEN '*2005*' and '*2007*';
> 
> total_requests
> 
> ----------------
> 
>           3000
> 
> (1 row)
> 
> 
> *BETWEEN clause gave data for 2007 as well. From and To are both inclusive
> here.*
> 
> 
>>>>> If there is an inclination to include inclusive time ranges, the way
> forward to me seems like doing away with supporting arbitrary time grain in
> the query and always accept time in query to the precise second. Clearly
> this would be withdrawing a powerful feature from lens.
> 
> [Himanshu]: When PostgresSQL can support an arbitrary time grain in the
> query (as shown above) with data stored in facts at seconds granularity,
> I'm not sure why Lens will not be able to handle it in implementation. I
> already gave a solution in this email thread by which time ranges  can be
> made inclusive in Lens without removing the support to give an arbitrary
> time grain in the query. Do you see the solution breaking somewhere ?
> 
> 
> Regards,
> 
> Himanshu
> 
> On Thu, Aug 6, 2015 at 9:46 AM, Srikanth Sundarrajan <[email protected]>
> wrote:
> 
>> Here is my 2 cents on this.
>> 
>> As long as there is an unambiguous articulation of what is
>> included/excluded in the time range element of the Cube QL, there is no
>> forcing function to change this, unless this breaks any well understood
>> convention and is counter intuitive. Given the unique nature of the
>> time_range parameter supported in Cube QL and what values it can assume,
>> there doesn't seem to be risk of breaking convention here. The reason for
>> me calling it unique is that the grain supported in the range can be
>> different from the time grain of the data itself (for ex, one can query
>> data by providing the year while the actual data in the facts may be in
>> seconds granularity). The exclusive end date seems to emanate from having
>> to support this mismatched time grains between data and user query and the
>> system is having to expand the time grain provided by the user to match
>> that of the data in the facts.
>> 
>> If there is an inclination to include inclusive time ranges, the way
>> forward to me seems like doing away with supporting arbitrary time grain in
>> the query and always accept time in query to the precise second. Clearly
>> this would be withdrawing a powerful feature from lens, and should be
>> considered only if the notion of exclusive end time seems very unintuitive
>> for the users.
>> 
>> Regards
>> Srikanth Sundarrajan
>> 
>>> Date: Wed, 5 Aug 2015 20:28:46 +0530
>>> Subject: Re: [DISCUSS] Time Ranges in Lens
>>> From: [email protected]
>>> To: [email protected]
>>> 
>>> I believe Users seem to think of a time range as half open, a meeting
>>> appointment of 1:00 pm - 2:00 pm means a one hour appointment. But with
>>> date ranges, the expectation is to include the end date. A date range
>>> specification of Jan 1 - Jan 31 would mean inclusion of Jan 31.
>>> To be able to make a decision here, I believe we follow what existing
>>> Analytics and Data Query systems do. That is to include the end time
>>> specified as available with Google Analytics or Support for BETWEEN in
>> SQL.
>>> That may mean more complexity on the implementation but that's a hit we
>>> will have to take.
>>> 
>>> Thanks,
>>> Nitin
>>> 
>>> 
>>> On Wed, Aug 5, 2015 at 7:06 PM, Himanshu Gahlaut <
>>> [email protected]> wrote:
>>> 
>>>> Have given a real world use case of banking system where making to
>>>> field exclusive makes the communication harder for user.
>>>> 
>>>> Please give a real world use case which makes things harder for user by
>>>> making to field inclusive OR a real world use case which is impossible
>> to
>>>> implement by making to field inclusive. So far the points shared below
>> for
>>>> making to date exclusive are hard to understand and it is difficult to
>>>> comprehend the problem which is coming in way of making to date
>> inclusive.
>>>> 
>>>> On Wednesday, August 5, 2015, Rajat Khandelwal <[email protected]
>>> 
>>>> wrote:
>>>> 
>>>>> Time range consists of a start time and an end time. If start time
>> and
>>>> end
>>>>> time are same, then we would say the ranges are equal.
>>>>> 
>>>>> The three ranges in my example are same by this definition of
>> equality.
>>>>> While approach 2 hinders that.
>>>>> 
>>>>> 
>>>>> On Wed, Aug 5, 2015 at 6:09 PM Himanshu Gahlaut <
>>>>> [email protected] <javascript:;>>
>>>>> wrote:
>>>>> 
>>>>>> Why is this a problem ?
>>>>>> 
>>>>>> On Wed, Aug 5, 2015 at 6:04 PM, Rajat Khandelwal <
>>>> [email protected]
>>>>> <javascript:;>>
>>>>>> wrote:
>>>>>> 
>>>>>>> Problem with that is, that the meaning of range changes with
>>>>> granularity.
>>>>>>> While with approach 1, it's not the case.
>>>>>>> 
>>>>>>> A Range of 2015-01-01 to 2015-01-02 would mean 2 days,
>> 2015-01-01-00
>>>> to
>>>>>>> 2015-01-02-00 would mean 2 days and 1 hour, 2015-01-01-00-00 to
>>>>>>> 2015-01-02-00-00 would mean 2 days and 1 minute, and
>>>>> 2015-01-01-00-00-00
>>>>>> to
>>>>>>> 2015-01-02-00-00-00 would mean 2 days and 1 second.
>>>>>>> 
>>>>>>> While approach 1 has no such problem. A given range doesn't
>> change
>>>>> with a
>>>>>>> change in granularity. Every one of these examples would mean 1
>> day.
>>>>>>> 
>>>>>>> Here I've begun the argument with day granularity and went
>> deeper.
>>>> The
>>>>>> same
>>>>>>> argument can be started from a Yearly granularity and there the
>>>>> different
>>>>>>> would be more prominent.
>>>>>>> 
>>>>>>> Regards
>>>>>>> 
>>>>>>> On Wed, Aug 5, 2015 at 5:36 PM Himanshu Gahlaut <
>>>>>>> [email protected] <javascript:;>>
>>>>>>> wrote:
>>>>>>> 
>>>>>>>> Say granularity is an ordered list of nodes where every node in
>>>> list
>>>>> is
>>>>>>>> parent of its next node.
>>>>>>>> 
>>>>>>>> For a System X: all granularity could be (Year => Month =>
>> Day).
>>>>>>>> For System Y: all granularity could be (Year => Month => Day =>
>>>> Hour
>>>>> =>
>>>>>>>> Minutes => Seconds => Milliseconds => Microseconds =>
>> Picosecond =>
>>>>>>>> Femtosecond => Attosecond)
>>>>>>>> 
>>>>>>>> As long as every node has a logic defined to compute the lower
>>>> limit
>>>>>> and
>>>>>>>> upper limit value, implementation should be able to fetch all
>> the
>>>>> data
>>>>>>>> under its parent node.
>>>>>>>> 
>>>>>>>> E.G:
>>>>>>>> 
>>>>>>>> To get all the data for 2015-10-31, implementation needs to
>> convert
>>>>>> this
>>>>>>>> into 2015-10-31-LowerLimitHourNode to
>> 2015-10-31-UpperLimitHourNode
>>>>> to
>>>>>>>> fetch data from hourly partitions, where lower limit hour = 00
>> and
>>>>>> upper
>>>>>>>> limit hour = 23. Similarly any granularity can be handled at
>>>>>>> implementation
>>>>>>>> level.
>>>>>>>> 
>>>>>>>> 
>>>>>>>> I guess a banking system in real world would be worried about
>> very
>>>>> fine
>>>>>>>> granularities of time.
>>>>>>>> 
>>>>>>>> Even if we assume banking system has day as the finest
>>>> granularity. A
>>>>>>> user
>>>>>>>> can still ask for statement from the month of April, 2015 to
>>>> October,
>>>>>>> 2015
>>>>>>>> without specifying the specific date fields. In this case bank
>> will
>>>>>> have
>>>>>>> to
>>>>>>>> execute the logic to fetch all transactions from April to
>> October
>>>>> with
>>>>>>> both
>>>>>>>> inclusive and also handling its finest granularity which is
>> assumed
>>>>> as
>>>>>>> day.
>>>>>>>> In this case a banking system would convert 2015-04 to 2015-10
>> into
>>>>>>>> 2015-04-01 to 2015-10-31 to fetch all data from daily
>> partitions,
>>>>> where
>>>>>>> 01
>>>>>>>> is the lower limit for day node in month of April and 31 is the
>>>>> higher
>>>>>>>> limit for day node in month of October.
>>>>>>>> 
>>>>>>>> If data is not available in daily partitions and bank's
>> underlying
>>>>>> system
>>>>>>>> supports further fine time granularities, it will convert
>> 2015-04
>>>> to
>>>>>>>> 2015-10 into 2015-04-01-00 to 2015-10-31-23 to fetch data from
>>>> hourly
>>>>>>>> partitions.
>>>>>>>> 
>>>>>>>> Similarly if data is not available at hourly partitions, it
>> will go
>>>>> to
>>>>>>> the
>>>>>>>> next level. As long as an upper limit and lower limit is
>> defined
>>>> for
>>>>>> each
>>>>>>>> node, implementation can handle any time granularity.
>>>>>>>> 
>>>>>>>> Meta point is that in real world, when a user will communicate
>> to
>>>> get
>>>>>>>> statement of April to October. His intentions will never be to
>>>>> exclude
>>>>>>>> October. Exclusion of October will be a surprise for him.
>>>>>>>> 
>>>>>>>> Regards,
>>>>>>>> Himanshu
>>>>>>>> 
>>>>>>>> On Wed, Aug 5, 2015 at 4:56 PM, amareshwarisr . <
>>>>> [email protected] <javascript:;>
>>>>>>> 
>>>>>>>> wrote:
>>>>>>>> 
>>>>>>>>> When a system has to understand time at all granularities,
>> and
>>>> user
>>>>>> can
>>>>>>>>> give time at all granularities, shouldn't we chose a
>>>> specification
>>>>>>> which
>>>>>>>> is
>>>>>>>>> easy and error prone.
>>>>>>>>> 
>>>>>>>>> The example of banking system is not worried about finer
>>>>>> granularities
>>>>>>> of
>>>>>>>>> time.
>>>>>>>>> 
>>>>>>>>> On Wed, Aug 5, 2015 at 4:33 PM, Himanshu Gahlaut <
>>>>>>>>> [email protected] <javascript:;>> wrote:
>>>>>>>>> 
>>>>>>>>>> This has two parts:
>>>>>>>>>> 
>>>>>>>>>> (1) Interfacing with user shall be cognitive. Something
>> which
>>>>> user
>>>>>>> can
>>>>>>>>>> relate to his natural thought process.
>>>>>>>>>> 
>>>>>>>>>> E.g.: In a banking system, if a user goes to a banker to
>> get
>>>> his
>>>>>> bank
>>>>>>>>>> statement. He will say "give me statement from 11th October
>>>> 2015
>>>>> to
>>>>>>>> 23rd
>>>>>>>>>> October 2015". This clearly communicates in simplified
>> language
>>>>>> that
>>>>>>>> user
>>>>>>>>>> is interested in bank statement from 11th October to 23rd
>>>>> October.
>>>>>> If
>>>>>>>>>> banker now does not return data of 23rd October, it will
>> be a
>>>>>>> surprise
>>>>>>>>> for
>>>>>>>>>> user.
>>>>>>>>>> 
>>>>>>>>>> Banker can inform every user that To date is exclusive, so
>> if
>>>> you
>>>>>>> need
>>>>>>>>>> statement till 23rd October you should come and tell me
>> "give
>>>> me
>>>>>>>>> statement
>>>>>>>>>> from 11th October to 24th October". I believe a user will
>>>>>> immediately
>>>>>>>>> reply
>>>>>>>>>> => If I need statement only till 23rd October, why shall I
>>>>>>> communicate
>>>>>>>>> 11th
>>>>>>>>>> October to 24th October. If you still insist, next time the
>>>> user
>>>>>> will
>>>>>>>>> come
>>>>>>>>>> and say "give me statement from 11th October to 24th
>> October
>>>> with
>>>>>>> 24th
>>>>>>>>>> exclusive". System just made it harder for user to
>> communicate
>>>>> with
>>>>>>>>> banker.
>>>>>>>>>> 
>>>>>>>>>> (2) Implementation to achieve cognitive behaviour
>>>>>>>>>> 
>>>>>>>>>> With To date inclusive, banker needs to make sure that it
>> gives
>>>>> all
>>>>>>>>>> transaction records for 23rd October 2015 (To date) at the
>>>> finest
>>>>>>>>>> granularity available with the bank. This will satisfy
>> users
>>>>>>>> requirement
>>>>>>>>>> without any element of surprise.
>>>>>>>>>> 
>>>>>>>>>> If the finest granularity is millisecond. It will have a
>> higher
>>>>>> limit
>>>>>>>> to
>>>>>>>>> it
>>>>>>>>>> which is 999 in most of the systems. Banker will fetch all
>>>>>> partitions
>>>>>>>>> until
>>>>>>>>>> higher limit of finest granularity for 23rd October and
>> return
>>>>> the
>>>>>>>>>> statement to user.
>>>>>>>>>> 
>>>>>>>>>> If there was a leap second/millisecond, it is upto the
>> banker
>>>> to
>>>>>>> handle
>>>>>>>>> and
>>>>>>>>>> give data for it. When a user wants statement from 11th
>> October
>>>>> to
>>>>>>> 23rd
>>>>>>>>>> October, user should not worry about the leap
>>>> second/millisecond
>>>>>>> which
>>>>>>>>>> happened on any of the days from 11th October to 23rd
>> October
>>>>>>>>> (inclusive).
>>>>>>>>>> 
>>>>>>>>>> Regards,
>>>>>>>>>> Himanshu
>>>>>>>>>> 
>>>>>>>>>> On Wed, Aug 5, 2015 at 3:16 PM, amareshwarisr . <
>>>>>>> [email protected] <javascript:;>
>>>>>>>>> 
>>>>>>>>>> wrote:
>>>>>>>>>> 
>>>>>>>>>>> I prefer time-range end date to be exclusive of the end
>> date,
>>>>>>> because
>>>>>>>>> of
>>>>>>>>>>> the following reasons:
>>>>>>>>>>> 
>>>>>>>>>>> 1. Giving a month range end as start of next month is
>> easy,
>>>> as
>>>>>> you
>>>>>>>> need
>>>>>>>>>> not
>>>>>>>>>>> remember and get confused with number of days in month :
>> 30,
>>>>> 31,
>>>>>>>> 28/29
>>>>>>>>>> (in
>>>>>>>>>>> february leap year) - wont miss ending days because of
>>>>> mistakes.
>>>>>>>>>>> 
>>>>>>>>>>> 2. When you are giving a any range, you need not worry
>> about
>>>>> what
>>>>>>>>>>> granularity should the time be specified.
>>>>>>>>>>> For ex, for including time upto 2015-08-01 05th.
>>>>>>>>>>> 
>>>>>>>>>>> Should user specify the following with inclusive ranges?
>>>>>>>>>>>> 2015-08-01-04 (would be correct, assuming whole of 4 th
>>>> hour
>>>>>> will
>>>>>>>> be
>>>>>>>>>>> included)
>>>>>>>>>>>> 2015-08-01-04-59 (would be correct, but what if there
>> is
>>>> leap
>>>>>>>> second
>>>>>>>>>> :p )
>>>>>>>>>>>> 2015-08-01-04-59-000 (wrong, would include only 000th
>> milli
>>>>>>> second
>>>>>>>>> and
>>>>>>>>>>> not others)
>>>>>>>>>>>> 2015-08-01-04-59-999 (not sure if we will have leap
>> milli
>>>>>>> seconds)
>>>>>>>>>>> 
>>>>>>>>>>> Looking forward to see other arguments on making
>> timerange
>>>> end
>>>>>> date
>>>>>>>>>>> inclusive.
>>>>>>>>>>> 
>>>>>>>>>>> Thanks
>>>>>>>>>>> Amareshwari
>>>>>>>>>>> 
>>>>>>>>>>> On Wed, Aug 5, 2015 at 2:50 PM, Rajat Khandelwal <
>>>>>>> [email protected] <javascript:;>>
>>>>>>>>>>> wrote:
>>>>>>>>>>> 
>>>>>>>>>>>> Currently the time_range_in clause is inclusive of the
>>>> start
>>>>>> date
>>>>>>>> and
>>>>>>>>>>>> exclusive of the end date. i.e.
>>>> time_range_in(time_dimension,
>>>>>>>> date1,
>>>>>>>>>>> date2)
>>>>>>>>>>>> translates to date1<=time_dimension<date2
>>>>>>>>>>>> 
>>>>>>>>>>>> Recently there have been multiple discussions regarding
>>>> this
>>>>>>>> approach
>>>>>>>>>> in
>>>>>>>>>>>> our internal forums at InMobi. There have been
>> arguments
>>>> that
>>>>>> as
>>>>>>> an
>>>>>>>>>>>> analytics system, it should accept end date inclusive.
>>>>> Starting
>>>>>>>> this
>>>>>>>>>>> thread
>>>>>>>>>>>> to know opinions of other people regarding both
>> approaches.
>>>>> I'm
>>>>>>>>>> defining
>>>>>>>>>>>> and briefly discussing both approaches below:
>>>>>>>>>>>> 
>>>>>>>>>>>> Approach 1: End date exclusive.
>>>>>>>>>>>> Disclaimer: I personally prefer this approach and would
>>>>>>> shamelessly
>>>>>>>>>> argue
>>>>>>>>>>>> in its favor. I'll give links to some of the articles
>> that
>>>> I
>>>>>> very
>>>>>>>>> much
>>>>>>>>>>>> agree with (no need to reinvent the wheel of argument)
>>>>>>>>>>>> 
>>>>>>>>>>>>   1. Views of Anders Kaseorg, MIT PhD student in CS;
>>>>> Cofounder
>>>>>>> of
>>>>>>>>>>> Ksplice,
>>>>>>>>>>>>   Inc
>>>>>>>>>>>>   <
>> https://www.quora.com/Why-are-Python-ranges-half-open-exclusive-instead-of-closed-inclusive/answer/Anders-Kaseorg
>>>>>>>>>>>>   2. Views of Edgar Dijkstra, Creator of Dijkstra's
>>>>> algorithm
>>>>>>>>>>>>   <
>> http://www.cs.utexas.edu/users/EWD/ewd08xx/EWD831.PDF>
>>>>>>>>>>>>   3. Both arguments are for generic ranges. I believe
>> time
>>>>>> range
>>>>>>>> is
>>>>>>>>>>> also a
>>>>>>>>>>>>   range and don't see why we need to handle that as a
>>>>> special
>>>>>>>> case.
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> Approach 2: End date inclusive.
>>>>>>>>>>>> 
>>>>>>>>>>>>   1. Lens query language is a bit like sql and the
>> BETWEEN
>>>>>>> clause
>>>>>>>> in
>>>>>>>>>> sql
>>>>>>>>>>>>   is inclusive of both start and end date.
>>>>>>>>>>>>   2. Most analytic systems --- including google
>> analytics
>>>>> ---
>>>>>>>> follow
>>>>>>>>>>> this
>>>>>>>>>>>>   convention
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> I'm posting the question on a bigger forum
>>>>>>>>>>>> <
>> https://www.quora.com/Should-Time-ranges-in-an-analytical-system-be-half-open-or-closed
>>>>>>>>>>>> as well in hopes of getting more opinions. I request
>>>> everyone
>>>>>> to
>>>>>>>> post
>>>>>>>>>>> their
>>>>>>>>>>>> views here regarding both approaches.
>>>>>>>>>>>> 
>>>>>>>>>>>> Regards
>>>>>>>>>> 
>>>>>>>>>> --
>> _____________________________________________________________
>>>>>>>>>> The information contained in this communication is intended
>>>>> solely
>>>>>>> for
>>>>>>>>> the
>>>>>>>>>> use of the individual or entity to whom it is addressed and
>>>>> others
>>>>>>>>>> authorized to receive it. It may contain confidential or
>>>> legally
>>>>>>>>> privileged
>>>>>>>>>> information. If you are not the intended recipient you are
>>>> hereby
>>>>>>>>> notified
>>>>>>>>>> that any disclosure, copying, distribution or taking any
>> action
>>>>> in
>>>>>>>>> reliance
>>>>>>>>>> on the contents of this information is strictly prohibited
>> and
>>>>> may
>>>>>> be
>>>>>>>>>> unlawful. If you have received this communication in error,
>>>>> please
>>>>>>>> notify
>>>>>>>>>> us immediately by responding to this email and then delete
>> it
>>>>> from
>>>>>>> your
>>>>>>>>>> system. The firm is neither liable for the proper and
>> complete
>>>>>>>>> transmission
>>>>>>>>>> of the information contained in this communication nor for
>> any
>>>>>> delay
>>>>>>> in
>>>>>>>>> its
>>>>>>>>>> receipt.
>>>>>>>> 
>>>>>>>> --
>>>>>>>> _____________________________________________________________
>>>>>>>> The information contained in this communication is intended
>> solely
>>>>> for
>>>>>>> the
>>>>>>>> use of the individual or entity to whom it is addressed and
>> others
>>>>>>>> authorized to receive it. It may contain confidential or
>> legally
>>>>>>> privileged
>>>>>>>> information. If you are not the intended recipient you are
>> hereby
>>>>>>> notified
>>>>>>>> that any disclosure, copying, distribution or taking any
>> action in
>>>>>>> reliance
>>>>>>>> on the contents of this information is strictly prohibited and
>> may
>>>> be
>>>>>>>> unlawful. If you have received this communication in error,
>> please
>>>>>> notify
>>>>>>>> us immediately by responding to this email and then delete it
>> from
>>>>> your
>>>>>>>> system. The firm is neither liable for the proper and complete
>>>>>>> transmission
>>>>>>>> of the information contained in this communication nor for any
>>>> delay
>>>>> in
>>>>>>> its
>>>>>>>> receipt.
>>>>>> 
>>>>>> --
>>>>>> _____________________________________________________________
>>>>>> The information contained in this communication is intended solely
>> for
>>>>> the
>>>>>> use of the individual or entity to whom it is addressed and others
>>>>>> authorized to receive it. It may contain confidential or legally
>>>>> privileged
>>>>>> information. If you are not the intended recipient you are hereby
>>>>> notified
>>>>>> that any disclosure, copying, distribution or taking any action in
>>>>> reliance
>>>>>> on the contents of this information is strictly prohibited and may
>> be
>>>>>> unlawful. If you have received this communication in error, please
>>>> notify
>>>>>> us immediately by responding to this email and then delete it from
>> your
>>>>>> system. The firm is neither liable for the proper and complete
>>>>> transmission
>>>>>> of the information contained in this communication nor for any
>> delay in
>>>>> its
>>>>>> receipt.
>>>> 
>>>> --
>>>> _____________________________________________________________
>>>> The information contained in this communication is intended solely for
>> the
>>>> use of the individual or entity to whom it is addressed and others
>>>> authorized to receive it. It may contain confidential or legally
>> privileged
>>>> information. If you are not the intended recipient you are hereby
>> notified
>>>> that any disclosure, copying, distribution or taking any action in
>> reliance
>>>> on the contents of this information is strictly prohibited and may be
>>>> unlawful. If you have received this communication in error, please
>> notify
>>>> us immediately by responding to this email and then delete it from your
>>>> system. The firm is neither liable for the proper and complete
>> transmission
>>>> of the information contained in this communication nor for any delay
>> in its
>>>> receipt.
>>> 
>>> --
>>> _____________________________________________________________
>>> The information contained in this communication is intended solely for
>> the
>>> use of the individual or entity to whom it is addressed and others
>>> authorized to receive it. It may contain confidential or legally
>> privileged
>>> information. If you are not the intended recipient you are hereby
>> notified
>>> that any disclosure, copying, distribution or taking any action in
>> reliance
>>> on the contents of this information is strictly prohibited and may be
>>> unlawful. If you have received this communication in error, please notify
>>> us immediately by responding to this email and then delete it from your
>>> system. The firm is neither liable for the proper and complete
>> transmission
>>> of the information contained in this communication nor for any delay in
>> its
>>> receipt.
> 
> -- 
> _____________________________________________________________
> The information contained in this communication is intended solely for the 
> use of the individual or entity to whom it is addressed and others 
> authorized to receive it. It may contain confidential or legally privileged 
> information. If you are not the intended recipient you are hereby notified 
> that any disclosure, copying, distribution or taking any action in reliance 
> on the contents of this information is strictly prohibited and may be 
> unlawful. If you have received this communication in error, please notify 
> us immediately by responding to this email and then delete it from your 
> system. The firm is neither liable for the proper and complete transmission 
> of the information contained in this communication nor for any delay in its 
> receipt.

Reply via email to