An Improved Process And A System For Adding A Body Of Water To An Image And Creating A Video Therefrom Having Interactive Water Effects


Updated about 2 years ago

Abstract

An improved process and a system for adding a body of water to an image and creating a video therefrom having interactive water effects. A region of water is added to an image by adding an area depicting the original scene as it wouldappear if reflected by still body of water. Then, the appearance of the added water region is distorted over a series of image frames in such a way as to simulate how the reflected scene would look if the surface of the water were in motion. The water can have dynamic waves and the user can interact with the water in numbers of ways, including generating ripples on the water surface and creating rain. In addition, these effects can be achieved at full screen resolution with the use of the graphics hardware by employing a texture shifting technique.

Information

Application ID 830/KOL/2009
Invention Field TRADITIONAL KNOWLEDGE CHEMICAL
Date of Application 2009-06-04
Publication Number 37/2016

Applicants

Name Address Country Nationality
SAMSUNG ELECTRONICS CO. LTD. 416, MAETAN-DONG, YEONGTONG-GU, SUWON-SI, GYEONGGI-DO, Republic of Korea. Republic of Korea Republic of Korea

Inventors

Name Address Country Nationality
SANJIV MALIK SAMSUNG INDIA SOFTWARE CENTER SAMSUNG INDIA ELECTRONICS PVT.LTD., Noida, India. India India
T. Mohan Kumar SAMSUNG INDIA SOFTWARE CENTER SAMSUNG INDIA ELECTRONICS PVT.LTD., Noida, India. India India

Specification

FIELD OF INVENTION
The invention generally relates to the area of computer graphics. In particular,
the invention relates to fluid animation. More particularly the invention relates to
a process and a system for adding a body of water to an image and generating a
video therefrom having interactive water effects.
BACKGROUND OF INVENTION
Fluid animation is important for a wide range of applications, especially in the
addition of a body of water to an image and simulation of wave or ripple motion
across the surface of the water over a sequence of video frames . Fluid
animation can be handled in many ways, one of which is through so-called
surface techniques. These animations are employed in images created for video
display, special effects and production of commercial advertising, among others.
US 5491778 discloses a system and method for providing visual display transition
effects . According to the invention, a system is provided for generating
transition effects for use on a visual display. The system includes a binary table
for describing a transition effect and a method for ordering the rows in the table
to produce the transition. The table includes an arbitrary number of rows, each
row representing a cell (group of picture elements) on the display. A numerical

value, based on any function of cell location, is associated with each cell. The
table is then sorted according to the numerical values. Each row in the sorted
table derives a step in the transition effect. The cells described by the various
rows are changed in a sorted order to display the material from the image being
transitioned-to. The sequence of processing of the rows causes the desired
transition effect. By varying the function used to order the rows, an infinite
variety of transition effects can be created.
US 5640522 describes a method and system for previewing transition effects
between pairs of images. In a preferred embodiment, a transition effect
previewing program ('the previewing program") enables a user to preview a
transition effect assigned to a pair of images within a presentation. The
previewing program first displays in a display area both the source image and
the target image. When the previewing program receives a previewing
instruction from the user, the previewing program displays the source image in a
preview position in the display area. The previewing program then applies the
assigned transition effect to the source image displayed in the preview position
in the preview area. In a further improved embodiment, the preview position
corresponds to the position in which the target image is first displayed. In yet
further preferred embodiments, the user may issue a previewing instruction by

assigning a transition effect to a palr of Images, or by selecting a transition effect
indicator displayed in conjunction with a pair of images to which a transition
effect has already been assigned.
US 4841292 discloses a third dimension pop up generation from a two-
dimensional transformed image display. According to the invention a bit map
image is stored as a two-dimensional array with z axis set arbitrarily at unity.
Total rotation transform and screen projection is then treated as a lumped
equation due to multiplicative associativity so long as only one variable "V" is
included in each lumped equation. The z-data (stored elevation values
corresponding to each bit map x/y coordinate) is re-inserted as a later operation
after the image has been partially transformed and projected. Full yaw, pitch,
and translations from virtually any perspective viewpoint may be projected onto
a multiplicity of screen shapes (conical, spherical, flat, etc.), with z data being
inserted into a final output.
US 7164424 which may be considered as the closest prior art, discloses a system
and process for adding a photorealistic rendering of a body of water to a virtual
3D scene or image and creating a video therefrom having interactive water
effects. In its most general form, the technique takes as the input, an image and
generates the

appearance of water dynamics by warping a reflected copy of the image. In
other words, a region of water is added to the scene depicted in an image by
first adding to the image an area depicting the original scene as it would appear
if reflected by still body of water. Then, the appearance of the added water
region is distorted over a series of image frames in such a way as to simulate
how the reflected scene would look to an observer if the surface of the water
were in motion. For example, the region can be distorted to simulate the look of
waves or ripples, or both, on the surface of the water. Thus, a wave would
appear to propagate, or a ripple would appear to spread out from its source, as
the scene is viewed over a sequence of frames of the video. A viewer can also
interact with the water in numbers of ways, including generating ripples on the
water's surface and creating rain. These effects can be achieved at full screen
resolution with the use of the latest graphics hardware.
According to US 7164424, the process of generating video that includes
interactive water effects begins (as shown in Fig-1), by inputting an image of a
scene. A reflection copy of the image is then generated, and the original image
and the reflection image are merged and sized as desired, via conventional
methods, to create a first water-added image. Specifically, the reflection image is
essentially identical to the input image but reversed, like a mirror image of the
scene. The merged image simply depicts a scene where the

bottom edge of the original image is joined to the bottom edge of the reflection
image. Thus, the reflection copy is upside-down. The merged image is also sized
to comport with the desired video frame size.
This water-added image is then distorted to depict periodic waves, viewer-
generated ripples, or both. In general, these water effects are added to the
water region of the merged image using a 2D height map that represents the
surface of the water. This height map has a plurality of points each of which is
assigned a height value. These map points correspond to image points in the
water region of the water-added image, which could for example be pixel
locations. In fact, it is convenient to have a height map point correspond to each
pixel in the water region of the water-added image.
As for adding periodic waves, they are generally incorporated into a water-added
image by using a basic wave module that generates height values for each
height map location, and adding these values to the current heights assigned to
the corresponding map locations. The height values generated by the periodic
wave model simulate the shape and location of a wave on the surface of the
water region at a given point in time, and in addition, the module generates a
new set of height values at each succeeding time increment that simulate the
shape and location of the wave at it propagates across the surface of the water.

Any conventional wave generating module can be employed for generating the
periodic wave height values. However, in tested embodiments of the cited
invention, a ID basic wave module was employed. This module simulates a wave
on the surface of the water that travels in one direction and has the same height
across each row of pixels in the water region in the direction perpendicular to the
direction of propagation.
The system and process according to the cited invention US 7164424,
essentially involves generating video that includes interactive water effects. In
general, this is accomplished via the process actions, as shown in the high-level
flow diagram of FIGs 2A & 2B.
Now, referring to FIGS. 2A and 2B, the merged image is distorted to add a
periodic wave by first selecting a previously unselected image location, which has
a corresponding height map value (process action 200). This will be a pixel of
the water region if there is a corresponding height map value associated with
each pixel, as would be the typical case. The current height assigned to the
height map for the image point to the immediate right of the selected location is
added to the height value generated by the basic wave module for this same
neighboring location at the starting point in time (process action 202). Similarly,
the current height assigned to the height map location for the image point to the

immediate left of the selected location is added to the height value generated by
the basic wave module for that neighboring location at the starting point in time
(process action 204). The sum computed for the right-side neighbor is then
subtracted from the sum computed for the left-side neighbor in process action
206. The resulting difference is then divided by a factor that relates the scale of
the height map height values to the image (process action 208). It is noted that
if the height map scale is made to match the image scale the factor is equal to
one.
The value computed by the foregoing procedure represents the change in
position that is to be applied to the selected image location, as indicated above.
Thus, the new image location is computed by adding the computed change in
position to the current location of the selected image point (process action 210).
Specifically, referring to FIG. 2B, the current height assigned to the height map
location for the image point directly above the selected location is added to the
height value generated by the basic wave module for this same neighboring
location at the starting point in time (process action 212). Additionally, the
current height assigned to the height map location for the image point
immediately below the selected location is added to the height value generated

by the basic wave module for that neighboring location at the starting point in
time (process action 214). The sum computed for the overlying neighbor is then
subtracted from the sum computed for the underlying neighbor (process action
216), and the difference is divided by the aforementioned relational factor
(process action 218).
The value computed by the foregoing procedure represents the change in
position that is to be applied to the selected image location. Thus, the new
location is computed by adding the computed change in position to the current
of the selected image point (process action 220).
It is next determined if there are any remaining previously unselected image
locations (process action 222). If so, process actions 200 through 222 are
repeated. If not, the process ends.
Be that as it may, However, the filed of computer graphics research has all but
ignored fluid animation, owing at least in part to the difficulty of modeling fluids.
Unlike solids, fluids do not have a readily definable shape, and the motion of
fluid, such as the movement of a surface of a body of water in the presence of
waves and ripples, is often complex . In the past, complicated physical models
based on fluid dynamics have been attempted to model the motion of water but
without any overwhelming success.

Further, the prior art methods particularly that of US 7164424, tend to be
computationally expensive and difficult to implement in real time. A relatively
simple process for adding a body of water to an image and simulating its motion
over a series of video frames, which produces visually realistic results, has
eluded animators.
Typically, these prior art techniques involve modeling periodic waves or ripples
on the surface of the water. However, the prior art simulations tend to appear
somewhat repetitive and quickly become monotonous. It is believed this is in
large part due to a lack of interactive viewer involvement with the animation. In
addition, as alluded to above, these simulation tend to be quite complex and
processor intensive, owing in part to having to process each pixel of each frame
of the video simulation.
Further, the prior art processes adapt a non-linear calculation, and
implementation of this non-linear formula, a floating point calculation will be
needed.

OBJECTS OF INVENTION
It is therefore an object of the invention to propose a process for adding a body
of water to an image and generating a video having interactive water effects,
which eliminates the disadvantages of prior art.
Another object of the invention is to propose a process for adding a body of
water to an image and generating a video having interactive water effects, which
is computationally simple and produces realistic results.
A still another object of the invention is to propose a process for adding a body
of water to an image and generating a video having interactive water effects,
which adapt a linear and a floating point free calculation to increase the
performance of the prior art.
Yet another object of the invention is to propose a process for adding a body of
water to an image and generating a video having interactive water effects, which
in particular is implentable in low-end devices for example, PMP, and Mobile
handset.

A further object of the invention is to propose a system for adding a body of
water to an image and generating a video having interactive water effects, which
eliminates the disadvantage of prior art.
A still further object of the invention is to propose a system for adding a body of
water to an image and generating a video having interactive water effects, which
is enabled to implement the process by adapting a general purpose computing
device with the use of graphics hardware by employing a texture shifting
technique including an algorithm based on generation of multiple sine waves.
SUMMARY OF THE INVENTION
The present invention describes a process and a system incorporating a
computationally efficient algorithm for generating water ripple effect for low-end
embedded devices like PMP, Mobile handset.
The algorithm is based on generation of multiple sine waves displaced by a
distance and traveling in one direction. The algorithm is highly optimized to use
with embedded devices and does not use any floating point calculations.

Accordingly, there is provided in a first aspect of the invention an improved
process for adding a body of water to an image and generating a video
therefrom having interactive water effects, comprising the steps of:
inputting an image of a scene; generating a reflection copy of the scene depicted
in the input image to create a water region image, the water region image
comprising the reflection copy of the entire scene; merging the input image and
water region image to fit a desired frame size, to produce a first frame of the
video; distorting the water region portion of the merged image to simulate at
least one ripple originating at a site selected by a viewer; and generating a
sequence of additional frames, each of which comprises a distorted version of
the water region of the immediately preceding frame in which any ripple
simulated in the immediately preceding frame is shown on a new location that
simulates the natural motion of a ripple across a surface of a body of water
displaying the frames, the improvement is characterized in that the water ripple
effect on the image frame is generated by generating a sinusoidal circular wave
on the image frame and propagating the wave from a starting point, in that the
step of generating the sinusoidal circular wave adapts a linear method calculation
including variation of wave height which is applied to the surrounding pixels, and
in that the diminishing effect of the sinusoidal wave when formed in the image
frame, the screen-state is stored in a buffer memory so as to proceed to the next
calculation of the linear method by increasing the radius of the circle.

In a second aspect of the invention there is provided a system for adding a body
of water to an image and generating a video therefrom having interactive water
effects, comprising a general purpose computing device; a graphics display
device; a computer program comprising program modules executable by the
computing device having at least one digital processing unit, a system memory, a
system bus, and at least one embedded image buffer; and at least one video
camera capable of capturing a sequence of images optionally provided to the
system although the image data can be input to the computing device from the
program modules without requiring the use of the camera, wherein, the
computing device is directed by the program modules of the computer program
to:
inputting an image of a scene; generating a reflection copy of the scene depicted
in the input image to create a water region image, the water region image
comprising the reflection copy of the entire scene; merging the input image and
water region image to fit a desired frame size, to produce a first frame of the
video; distorting the water region portion of the merged image to simulate at
least one ripple originating at a site selected by a viewer; and generating a
sequence of additional frames, each of which comprises a distorted version of
the water region of the immediately preceding frame in which any ripple
simulated in the immediately preceding frame is shown on a new location

that simulates the natural motion of a ripple across a surface of a body of water
displaying the frames, characterized in that the system is enabled to generate a
water-ripple effect by adapting a linear method of generating a diminishing
sinusoidal wave, and in that the linear method comprises increasing the heights
of the ripple pixels in the buffer memory (newptr [I,J), applying the sine effect
on the pixel (newptr [I,J), setting a shift (iHeightFieldl (I,J)- iHeightFieldl
[I,J+1]), and changing the pixel RGB value of the newptr with the shift.
In gist, the invention discloses a process and a system, comprising, a graphics
display device, a memory and a digital processing unit coupled to the memory.
Water ripple-like effect is generated on at least one image buffer of the
embedded system. A video camera capable of capturing a sequence of images
can also be included as an input device to the inventive system.
The water ripple like effects is generated by generating a diminishing amplitude
sinusoidal wave which is applied to the buffer surface. A temporary memory
buffer is used to store the alternative context of the sinusoidal wave. The
amplitude of the sine wave is reduced over time by decreasing the density.

Consolidated Procedure For Ripple Effect:
The ripple effect is generated by generating a sinusoidal circular wave (SCW) on
the image and propagating it from a starting point.
The process of generating sinusoidal wave uses a linear formula and by varying
the height (H), and applied to the surrounding pixels. Like the circle of size
radius- density/2 (D/2) to radius and of size radius to radius + (D/2) density/2.
After forming the diminishing sinusoidal effect on an image it becomes blind to
the screen and store the state in to the temporary buffer.
The next calculation of the sinusoidal wave is done by increasing the radius of
the circle.
This method is implemented on the basis of applying a sine wave effect on two
temporary image buffers and swapping in displaying on the screen. Final ripple
effect can be achieved by applying alternatively sine wave effect on the image
and decreasing the amplitude of the sine wave.

BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS
Figure-1- shows a general purpose computing flow-process for configurating
an exemplary system of the prior art which is adaptable in implementing the
inventive process with modification.
Figures-2A & 2B- shows flow-charts of a process for distorting the water
region of a merged image to add a periodic wave that implements the optional
wave distortion techniques according to prior art.
Figure-3- shows a sine-wave generation and transmission according to the
present invention.
Figure-4- shows a sine-wave simulation of water ripples according to the
invention.
Figure-5- Depicts a basic flow-chart for water-ripple generation according to
the invention
Figure-6- shows pictorial diagrams of a practical implementation of ripple
generation of an image according the invention.

Figure-7- shows a flow chart for generating ripple effect as per the invention
Figure 8- shows a diagram of a general purpose computing device constituting
an exemplary system for implementing the process of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS OF THE
INVENTION
In the following description of the preferred embodiments of the present
invention, reference is made to the accompanying drawings which form a part
hereof, and in which is shown by way of illustration specific embodiments in
which the invention may be practiced. It is understood that other embodiments
may be utilized and structural changes may be made without departing from the
scope of the present invention.
Before providing a description of the preferred embodiments of the present
invention, a brief, general description of a suitable computing environment in
which the invention may be implemented will be described. FIG. 8 illustrates an
example of a suitable computing system environment 100. The computing
system environment 100 is only one example of a suitable computing
environment and is not intended to suggest any limitation as to the scope of use
or functionality of the invention.

The invention Is operational with numerous other general purpose or special
purpose computing system environments or configurations. Examples of well
known computing systems, environments, and/or configurations that may be
suitable for use with the invention include, but are not limited to, personal
computers, hand-held or laptop devices, network PCs, minicomputers, and
mobile handset, and the like.
The invention may be described in the general context of computer-executable
instructions, such as program modules, being executed by a computing device.
Generally, program modules include routines, programs, objects, components,
data structures, etc. that perform particular tasks or implement particular data
types.
With reference to FIG. 8, an exemplary system for implementing the invention
includes a general purpose computing device (110). Components of the device
110 may include, but are not limited to, a digital processing unit 120, a system
memory 130, and a system bus 121 that couples various system components
including the system memory (130) to the processing unit 120. The system bus
121 may be any of several types of bus structures including a memory bus or
memory controller, a peripheral bus, and a local bus using any of a variety of bus
architectures.

The device 110 typically includes a variety of computer readable media.
Computer readable media can be any available media that can be accessed by
the device 110 and includes both volatile and nonvolatile media, removable and
non-removable media. By way of example, and not limitation, computer readable
media may comprise computer storage media and communication media.
Computer storage media includes both volatile and nonvolatile, removable and
non-removable media implemented in any method or technology for storage of
information such as computer readable instructions, data structures, program
modules or other data. Computer storage media includes, but is not limited to,
RAM, ROM, EEPROM, flash memory or other memory technology which can be
used to store the desired information and which can be accessed by the device
110.
The system memory 130 includes computer storage media in the form of volatile
and/or nonvolatile memory such as read only memory (ROM) 131 and random
access memory (RAM) 132. A basic input/output means 133 , containing the
basic routines that help to transfer information between elements within the
device 110, such as during start-up, is typically stored in ROM 131. RAM 132
typically contains data and/or program modules that are immediately accessible
to and/or presently being operated on by processing unit 120. By way of

example, and not limitation, FIG. 8 illustrates operating system 134, application
programs 135, other program modules 136, and program data 137.
The device 110 may also include other removable/non-removable,
volatile/nonvolatile computer storage media. By way of example only, FIG. 8
illustrates a hard disk drive 141 that reads from or writes to non-removable,
nonvolatile magnetic media.
The hard disk drive 141 is typically connected to the system bus 121 through a
non-removable memory interface such as interface 140.
An input device is often connected to the processing unit 120 through a user
input interface 160 that is coupled to the system bus 121, but may be connected
by other interface and bus structures, such as a parallel port, game port or a
universal serial bus (USB). A monitor 191 or other type of display device is also
connected to the system bus 121 via an interface, such as a video interface 190.
In addition to the monitor, the device may also include other peripheral output
devices such as speakers 197.

Of particular significance to the present invention, a camera 163 (such as a
digital/electronic still or video camera, or film/photographic scanner) capable of
capturing a sequence of images 164 can also be included as an input device to
the computing device 110. The images 164 from the camera are input into the
device 110 via an appropriate camera interface 165. This interface 165 is
connected to the system bus 121, thereby allowing the images to be routed to
and stored in the RAM 132, or one of the other data storage devices associated
with the computing device 110. However, it is noted that image data can be
input into the device 110 from any of the aforementioned computer-readable
media as well, without requiring the use of the camera 163.
The device 110 may operate in a networked environment using logical
connections to one or more remote stations.
According to the invention an improved process for adding a body of water to an
image and generating a video therefrom having interactive water effects, is
disclosed. The process includes the steps of inputting an image of a scene;
generating a reflection copy of the scene depicted in the input image to create a
water region image, the water region image comprising the reflection copy of the
entire scene; merging the input image and water region image to fit a desired
frame size, to produce a first frame of the video; distorting the water region

portion of the merged image to simulate at least one ripple originating at a site
selected by a viewer; and generating a sequence of additional frames, each of
which comprises a distorted version of the water region of the immediately
preceding frame in which any ripple simulated in the immediately preceding
frame is shown on a new location that simulates the natural motion of a ripple
across a surface of a body of water displaying the frames. The invention adapts
a linear calculation for generation of water ripple effect on an image using
diminishing sinusoidal wave generation. Thus, the system of the invention is
provided with at least two image buffers. The water-ripple type effect is
generated by creating a diminishing amplitude sinusoidal circular wave (SWC)
and propagating the wave from a starting point, which is then applied to the
buffer surface, and a temporary image buffer stores the alternative context of
the sinusoidal wave. The amplitude of the sine wave is reduced over time by
decreasing the density (D) . As per the invention, the sinusoidal circular wave is
generated by using a linear formula, and by varying the height (H), and then
applied to the surrounding pixels. After forming the diminishing effect on the
image, the state of the image is stored into the temporary image buffer. The
next calculation on the sinusoidal circular wave (SCW) is done by increasing the
radius (d/2) of the circle.

According to the invention, the steps of generating a ripple effect comprises as
shown in fig. 5, initializing at least two image buffers (500); initializing variable of
the algorithm (501); creating the at least two temporary buffers (502); preparing
the first buffer (503), changing into the second buffer (504); creating the shift in
the temporary buffers (505); applying the shift on the surrounding pixels (506);
swapping the buffers (507); and repeating the process from the step of creating
temporary buffers if the frame size is greater than zero.
Following are the detailed steps to be performed in realization of the water ripple
effect on the image :
1. Initialize the two empty buffer of image size
2. Set height, density and step size to base values
3. increase the radius to step size
4. Set the starting position of ripple x,y
5. Calculate the rectangle size so that the ripple of the given radius will fit in
to it.
6. Take first buffer, calculate the elements of ripple in the buffer from staring
position
7. Increase element value by height.
8. Apply the sine wave effect on the buffer

9. The shift = bufferl[i] - buffer[i +1]
10. Increase the RGB values by shift.
11. Display the buffer to screen
12.Swap the buffers and repeat the process from step 3.
According to the invention, the step of initialization of the buffers (500), and the
step of initializing the algo variables (501), further comprises the steps of:
• Initializing the two buffers for height calculation of the ripple with size of the
image, let the buffers are mjHeightFieldl and m_iHeightField2.
• Setting the height and density of variable
• Setting the ripple starting position in the image
• assuming x and y as the starting point of the ripple
• Initializing the Boolean variable
height

Documents

Name Date
830-KOL-2009-PETITION UNDER RULE 137.pdf 2011-10-07
abstract-830-kol-2009-b.jpg 2011-10-07
abstract-830-kol-2009-a.jpg 2011-10-07
830-kol-2009-gpa.pdf 2011-10-07
830-kol-2009-form 3.pdf 2011-10-07
830-kol-2009-form 2.pdf 2011-10-07
830-kol-2009-form 1.pdf 2011-10-07
830-KOL-2009-FORM 1-1.1.pdf 2011-10-07
830-kol-2009-drawings.pdf 2011-10-07
830-kol-2009-specification.pdf 2011-10-07
830-kol-2009-correspondence.pdf 2011-10-07
830-kol-2009-abstract.pdf 2011-10-07
830-KOL-2009-CORRESPONDENCE-1.1.pdf 2011-10-07
830-KOL-2009-FORM-18.pdf 2013-08-13
830-kol-2009-claims.pdf 2011-10-07
830-KOL-2009-Changing Name-Nationality-Address For Service [14-02-2018(online)].pdf 2018-02-14
830-KOL-2009-RELEVANT DOCUMENTS [14-02-2018(online)].pdf 2018-02-14
830-KOL-2009-FER.pdf 2019-01-31
830-kol-2009-description (complete).pdf 2011-10-07
830-KOL-2009-FER_SER_REPLY [18-04-2019(online)].pdf 2019-04-18
830-KOL-2009-CLAIMS [18-04-2019(online)].pdf 2019-04-18
830-KOL-2009-CORRESPONDENCE [18-04-2019(online)].pdf 2019-04-18
830-KOL-2009-RELEVANT DOCUMENTS [21-10-2019(online)].pdf 2019-10-21
830-KOL-2009-FORM 13 [21-10-2019(online)].pdf 2019-10-21
830-KOL-2009-FORM-26 [21-10-2019(online)].pdf 2019-10-21
830-KOL-2009-Correspondence to notify the Controller (Mandatory) [04-11-2019(online)].pdf 2019-11-04
830-KOL-2009-HearingNoticeLetter04-11-2019.pdf 2019-11-04
830-KOL-2009-Correspondence to notify the Controller (Mandatory) [22-10-2019(online)].pdf 2019-10-22
830-KOL-2009-Written submissions and relevant documents (MANDATORY) [15-11-2019(online)].pdf 2019-11-15

Orders

Applicant Section Controller Decision Date URL