Hi, my name is Saransh. It’s a pleasure to meet you! 😄 After being a Java developer for a national FIRST robotics franchise all throughout high school, I chose to be a computer science major and am slated to graduate by 2022. I have been teaching other students computer science fundamentals and original tutorials in mentor roles with companies. However, my real interests lie in AR/VR. I have completed two projects including 1 research based course/project under NYU. I hope to apply both knowledge of coding and AR/VR in the future and am currently seeking roles related to this. I would love to put my expertise and communication skills from my teaching opportunities to good use for your company.
GPA: 3.03


With special dedication to PiratesOfGS!
Drag this link to bookmarks bar to install. Go to grooveshark and click the bookmark. Enjoy.


Agent Classes
¶
Agent - Base class¶
-
class
deepatari.agents.agent.
Agent
(env, mem, net, args, rng, name)[source]¶ This is the base class for all agent implementations.
The agent gets its available actions from the environment, keeps track of his current state and saves his experiences in a replay memory while acting in the environment.
-
name
¶ str – The name of the network object.
-
env
¶ Environment – The envirnoment in which the agent actuates.
-
mem
¶ Memory – The replay memory to save the experiences.
-
net
¶ Learner – Object of one of the Learner modules.
-
rng
¶ mtrand.RandomState – Initialized Mersenne Twister pseudo-random number generator.
-
n_steps_total
¶ int – Counter of all training steps.
-
callback
¶ Statistics – The stats module that attaches itself to the agent.
Note
All subclasses must inherite this class –> ‘class NewClass(Agent)’
-
AtariAgent¶
-
class
deepatari.agents.atariagent.
AtariAgent
(env, mem, net, args, rng, name='AtariAgent')[source]¶ This class is an implementation of an Atari agent.
The agent interacts with the given environment, organizes the trainig of the network and sends information to the statistics.
-
buf
¶ AtariStateBuffer – Simple buffer of sequence_length to concatenate frames to form the current state.
-
n_avail_actions
¶ int – Number of available actions for the agent to select for a specific environment.
-
avail_actions
¶ tuple[int] – The IDs of the availabe actions.
-
train_all
¶ bool – Indicates if the network uses all possible actions as output or only the available ones.
-
random_starts
¶ int – Perform max this number of dummy actions at beginning of an episode to produce more random game dynamics.
-
sequence_length
¶ int – Determines how many frames form a state.
-
epsilon_start
¶ float – Start value of the exploration rate (epsilon).
-
epsilon_end
¶ float – Final value of the exploration rate (epsilon).
-
epsilon_decay_steps
¶ int – Number of steps from epsilon_start to epsilon_end.
-
epsilon_test
¶ float – Exploration rate (epsilon) during the test phase.
-
train_frequency
¶ int – Perform training after this many game steps.
-
train_repeat
¶ int – Number of times to sample minibatch during training.
Note
More attributes of this class are defined in the base class Agent.
-
play
(num_games)[source]¶ Plays the game for a num_games times.
Parameters: num_games (int) – The number of games to play until stop.
-
populate_mem
(size)[source]¶ Play a given number of steps to prefill the replay memory
Parameters: size (int) – The desired size of the memory initialization.
-
step
(epsilon)[source]¶ Perform one step in the environment, send the results to the buffer and update the stats.
Parameters: epsilon (float) – The current epsilon value.
-


HOME
ABOUT
CONTACT
UI\IX ! GRAPHIC DESGINER
I`m web ! graphic desginer based in New York, specialializing
in User Interface Design and Development.


16
1 Then Job answered and said,
2 "I have heard many such things;
you are all miserable comforters.
3 Will useless words ever have an end?
What is wrong with you that you answer like this?
4 I also could speak as you do,
if you were in my place;
I could collect and join words together against you
and shake my head at you in mockery.
5 Oh, how I would encourage you with my mouth!
How the comfort from my lips would lighten your grief!
6 If I speak, my grief is not lessened;
if I keep from speaking, how am I helped?
7 But now, God, you have made me weary;
you have made all my family desolate.
8 You have made me dry up, which itself is a witness against me;
the leanness of my body rises up against me,
and it testifies against my face.
9 God has torn me in his wrath and persecuted me;
He has gnashed me with his teeth;
my enemy fastens his eyes on me as he tears me apart.
10 People have gaped with open mouth at me;
they have hit me reproachfully on the cheek;
they have gathered together against me.
11 God hands me over to ungodly people,
and throws me into the hands of wicked people.
12 I was at ease, and he broke me apart.
Indeed, he has taken me by the neck and dashed me to pieces;
he has also set me up as his target.
13 His archers surround me all around;
God pierces my kidneys and does not spare me;
he pours out my bile on the ground.
14 He smashes through my wall again and again;
he runs upon me like a warrior.
15 I have sewn sackcloth on my skin;
I have thrust my horn into the ground.
16 My face is red with weeping;
on my eyelids is the shadow of death
17 although there is no violence in my hands,
and my prayer is pure.
18 Earth, do not cover up my blood;
let my cry have no resting place.
19 Even now, see, my witness is in heaven;
he who vouches for me is on high.
20 My friends scoff at me,
but my eye pours out tears to God.
21 I ask for that witness in heaven to argue for this man with God
as a man does with his neighbor!
22 For when a few years have passed,
I will go to a place from where I will not return.


Results
Central Board of Secondary Education
| Exam Name | Academic Year | Result Date | Result Links |
|---|---|---|---|
| Class 10 | 2017-2018 | 29th May 2018 | Check Result |
| Class 12 | 2017-2018 | 26th May 2018 | Check Result |
| Class 10 | 2016-2017 | 03rd June 2017 | Check Result |
| Class 12 | 2016-2017 | 28th May 2017 | Check Result |
| Class 10 | 2015-2016 | 28th May 2016 | Check Result |
| Class 12 | 2015-2016 | 21st May 2016 | Check Result |
| Class 10 | 2014-2015 | 29th May 2015 | Check Result |
| Class 12 | 2014-2015 | 25th May 2015 | Check Result |
| Class 10 | 2013-2014 | 20th May 2014 | Check Result |
| Class 12 | 2013-2014 | 26th May 2014 | Check Result |
| Class 10 | 2012-2013 | 30th May 2013 | Check Result |
| Class 12 | 2012-2013 | 27th May 2013 | Check Result |
Council for the Indian School Certificate Examination
| Exam Name | Academic Year | Result Date | Result Links |
|---|---|---|---|
| Class 10 | 2017-2018 | 14th May 2018 | Check Result |
| Class 12 | 2017-2018 | 14th May 2018 | Check Result |
Joint Entrance Examination
| Exam Name | Academic Year | Result Date | Result Links |
|---|---|---|---|
| JEE (Advanced) | 2017-2018 | 10th June 2018 | Check Result |
| JEE (Advanced) | 2014-2015 | 18th June 2015 | Check Result |
| JEE (Main) | 2017-2018 | 30th May 2018 | Check Result |
| JEE (Main) | 2016-2017 | 26th May 2017 | Check Result |
| JEE (Main) | 2015-2016 | 23rd June 2016 | Check Result |
| JEE (Main) | 2014-2015 | 01st July 2015 | Check Result |
| JEE (Main) | 2013-2014 | 08th July 2014 | Check Result |
| JEE (Main) | 2012-2013 | 02nd July 2013 | Check Result |
National Eligibility cum Entrance Test
| Exam Name | Academic Year | Result Date | Result Links |
|---|---|---|---|
| NEET (UG) | 2017-2018 | 04th June 2018 | Check Result |
| NEET (UG) | 2016-2017 | 23rd June 2017 | Check Result |
| NEET (UG) | 2015-2016 | 16th August 2016 | Check Result |
| NEET (UG) | 2012-2013 | 05th June 2013 | Check Result |
Common Law Admission Test
| Exam Name | Academic Year | Result Date | Result Links |
|---|---|---|---|
| CLAT | 2017-2018 | 31st May 2018 | Check Result |
| CLAT | 2016-2017 | 29th May 2017 | Check Result |


All Classes
Airport
ArrivalTerminalExit
ArrivalTerminalTransfer
BaggageCollectionPoint
BaggageReclaim
BusDriver
BusDriverState
DepartureTerminalEntrance
DepartureTerminalTransfer
GeneralRepository
Lounge
Luggage
Passenger
PassengerState
Porter
PorterState
StoreRoom


Index
The built-in Jena rule-based reasoners are able to provide semantic entailments for ontologies using OWL-lite, and some constructs from OWL-DL and OWL-full. However, for large or complex ontologies the rule-based approach can computationally very expensive. Moreover, there are useful modelling primitives in OWL-DL that many semantic-web applications will wish to make use of, but which the rule-based reasoners don't handle. Jena's architecture provides a mechanism for attaching external reasoners to Jena models, by re-implementing the Graph interface. Jena version 2.1 onwards provides an illustration of this technique by providing a transparent gateway between Jena ontology models and external reasoners implementing the DIG description logic reasoner interface (henceforth abbreviated simply to the DIG interface).
The DIG interface is an emerging standard for providing access to description-logic reasoning via an HTTP-based interface to a separate reasoning process. Available DIG reasoners at the time of writing include: Racer, FaCT and Pellet. In principle, Jena should work with any conformant DIG reasoner (but see note below). The current release is known to work with Pellet, version 1.3-beta. Jena's DIG interface does not work correctly with RacerPro (i.e. versions greater than 1.7.23, which was the last free release). Now that RacerPro is a commercial product, we are unfortunately not in a position to test the Jena code against it.
Our current recommendation is to use the Pellet reasoner, since it is robust and scalable, and is available under under an open-source license. Pellet is available from this download site.
Figure 1 shows an overview of the connection between a Jena ontology model and an existing DIG reasoner process.
Figure 1: Schematic of dataflows between Jena model and DIG reasoner
As figure 1 shows, accessing a DIG reasoner in Jena uses the
identical API to accessing a normal in-memory model. That is, the usual model API is used to, for example,
list the classes in the model or determine the properties of an individual. Moreover, the information
inferred by the reasoner is available as RDF triples. So, if the reasoner determines that a class
A
is unsatisfiable, the triple :A rdfs:subClassOf owl:Nothing
will appear in the model. Figure 1 also illustrates that the DIG adapter must
be told the host name and port number for accessing the HTTP interface of the reasoner.
In Jena, a reasoner is an object that creates instances of an inference graph
(InfGraph
)
that is able to produce additional triples based on the triples
asserted in the base graph. This is shown in Figure 1: the base graph is maintained on the
Jena side (i.e. client-side); when a triple is added to a model backed by a DIG reasoner
it is first asserted into the base graph. This allows Jena programs access to the raw data,
as well as the inferred data. For example, it is typically only the contents of the base graph that is
written out when the model is serialized.
To create a DIGReasoner
object that can bind a base graph to an external reasoner,
we invoke the DIGReasonerFactory
. The full syntax for doing this is:
DIGReasonerFactory drf = (DIGReasonerFactory) ReasonerRegistry.theRegistry() .getFactory( DIGReasonerFactory.URI ); DIGReasoner r = (DIGReasoner) drf.create( null );
Since this is quite verbose, a short-cut exists:
DIGReasoner r = (DIGReasoner) ReasonerRegistry.theRegistry().create( DIGReasonerFactory.URI, null );
However, note that there are circumstances when the longer form is required (see below).
The null
parameter passed to the create
call is an optional
configuration
Resource
.
To pass configuration parameters to the reasoner, such
as a non-default host or port address for connecting to the reasoner, properties are attached
to a resource and passed in to the create
call.
Note that a DIG reasoner does not necessarily have built-in knowledge of the common semantic-web
ontology languages (such as OWL and DAML+OIL). The DIG encoding language is neutral to such
specific encodings. This presents a problem when working with OWL and DAML, as some facts are
assumed to be common knowledge (for example the fact that owl:TransitiveProperty
is an owl:ObjectProperty
). The Jena rule reasoner handles this requirement by
defining specific rules for the common-knowledge language axioms. This is not an option for
the Jena DIG reasoner (a model that relied on both internal and external reasoners would be
complex indeed!). Instead, we provide an option to create a DIG reasoner with a specific set
of axioms built-in to the model. These are provided by variants to the create()
call:
createWithDAMLAxioms(Resource configuration)
createWithOWLAxioms(Resource configuration)
. Thus, to create a DIG reasoner
specialised for OWL usage, with configuration parameters attached to the resource
config
we would use:
DIGReasonerFactory drf = (DIGReasonerFactory) ReasonerRegistry.theRegistry() .getFactory( DIGReasonerFactory.URI ); DIGReasoner r = (DIGReasoner) drf.createWithOWLAxioms( config );
It may be noted that creating a reasoner with pre-loaded axioms in this way precludes the use of the short-cut form.
A Jena OntModel provides a convenience API for working with semantic web ontology sources.
To bind an OntModel to the DIG reasoner, we create an ontology model spec that includes
the DIG reasoner created above. A typical pattern (assuming reasoner r
has
already been created, see above) is:
OntModelSpec spec = new OntModelSpec( OntModelSpec.OWL_DL_MEM ); spec.setReasoner( r ); OntModel m = ModelFactory.createOntologyModel( spec, null );
Ontology model m
can then be used in the normal way. If a large model is to be
prepared, it may sometimes be more efficient to create the model first, with no reasoner, then
bind that model to the reasoner to create the inference model. A typical pattern is:
OntModel base = ModelFactory.createOntologyModel( OntModelSpec.OWL_DL_MEM, null ); // ... build or load the model contents ... OntModelSpec spec = new OntModelSpec( OntModelSpec.OWL_DL_MEM ); spec.setReasoner( r ); OntModel m = ModelFactory.createOntologyModel( spec, base );
The DIG reasoner can be configured by passing configuration properties attached
to a config resource when invoking create()
on the reasoner factory.
The following table shows the configuration parameters recognised by the DIG reasoner.
Note that the prefix rConf:
is defined as
http://jena.hpl.hp.com/2003/JenaReasoner#
, and that vocabulary constants
are available from the
ReasonerVocabulary
class in Java.
| URI | Vocabulary constant | Meaning |
|---|---|---|
rConf:extReasonerURL |
EXT_REASONER_URL |
Specifies the URL of the connection to the reasoner. Only the hostname and port
are used. Default value is http://localhost:8081 . |
rConf: extReasonerOntologyLang |
EXT_REASONER_ONT_LANG |
A URI that specifies the ontology language (OWL or DAML) that will be used with the reasoner.
The URI constants are available from the ProfileRegistry . Default is OWL. |
rConf:extReasonerAxioms |
EXT_REASONER_AXIOMS |
Specifies a URL for a set of axioms to load into the reasoner to support the ontology language being used. Default value is none. |
The following program shows a complete example of using the DIG reasoner, with a non-default
URL to connect to. We assume that the DIG reasoner has been started on port 2004 (e.g.
with sh pellet-dig.sh -port 2004
).
import com.hp.hpl.jena.ontology.*; import com.hp.hpl.jena.rdf.model.*; import com.hp.hpl.jena.reasoner.ReasonerRegistry; import com.hp.hpl.jena.reasoner.dig.*; import com.hp.hpl.jena.vocabulary.*; public class DIGExample { public static void main( String[] args ) { // set up a configuration resource to connect to the reasoner // on port 2004 on the local system Model cModel = ModelFactory.createDefaultModel(); Resource conf = cModel.createResource(); conf.addProperty( ReasonerVocabulary.EXT_REASONER_URL, cModel.createResource( "http://localhost:2004" ) ); // create the reasoner factory and the reasoner DIGReasonerFactory drf = (DIGReasonerFactory) ReasonerRegistry.theRegistry() .getFactory( DIGReasonerFactory.URI ); DIGReasoner r = (DIGReasoner) drf.create( conf ); // now make a model OntModelSpec spec = new OntModelSpec( OntModelSpec.OWL_DL_MEM ); spec.setReasoner( r ); OntModel m = ModelFactory.createOntologyModel( spec, null ); // load an input document m.read( "http://protege.stanford.edu/plugins/owl/owl-library/koala.owl" ); // list the inconsistent classes StmtIterator i = m.listStatements( null, OWL.equivalentClass, OWL.Nothing ); while (i.hasNext()) { System.out.println( "Class " + i.nextStatement().getSubject() + " is unsatisfiable" ); } } }
The output produced by this program was:
Class http://protege.stanford.edu/plugins/owl/owl-library/koala.owl#KoalaWithPhD is unsatisfiable Class 2d9c06:fca384780f:-7ff4 is unsatisfiable Class http://protege.stanford.edu/plugins/owl/owl-library/koala.owl#Koala is unsatisfiable Class http://protege.stanford.edu/plugins/owl/owl-library/koala.owl#Quokka is unsatisfiable
The second value is Jena's anonymous node (bNode) identifier for a class expression from the input document that intersects with Koala, which is itself unsatisfiable.
The DIG interface has been tested with OWL as the input language and Pellet as the reasoning engine. Other reasoners, or the use of DAML+OIL as the input language, are provided for in the code but not well tested yet. Users are encouraged to report problems and suggestions to the Jena support list.
Note also that DIG itself is an immature standard. Some parts of OWL-DL cannot be expressed in the DIG tell language, and some desirable queries are not possible. An ongoing discussion about improving DIG is continuing on the DIG-users list, hosted by SourceForge.
CVS $Id: dig-reasoner.html,v 1.2 2005/10/05 15:23:01 ian_dickinson Exp $


Toggle navigation
MAP-RT editor
Upload an image
Download map
{{section.id}}
(current)
Rectangle
Polygon
Send changes to server and refresh map
Map description
Title:
Width:
Height:
ID
Type
Points
Number of sprites: {{featurecollection.features.length}}
{{s.geometry.type}}
{{s.geometry.coordinates}}
Delete


Not Found
The requested URL was not found on this server.
Apache/2.4.4 (Unix) OpenSSL/1.0.1e Server at ben.regenspan.com Port 80


Try to navigate through the presentation with your voice.
Recognized:
App redesign
Volksbank mobile banking
Problems of the current App
Design Principels
Based on the knowledge from the user test,
we created statements, which we used as a guideline
during the course of the project and which we ultimately realised in our product.
1. New structure
-Reorganizing the important menu items
-Adding new functions to meet user requirements
-Implementing the user test onto the new hierarchy simplify the menu navigation
2. New style
-setting apart important items form more unimportant
-colour scheme consiting of the typical Volksbank colors: blue and orange.
3. New ui components
-We tried to fuse aesthetics and meaningful components
to accomplish a clean atmosphere for the product look and feel.
-Clickable elements are displayed in white boxes, with a slight shadow.
This creates a three-dimensionality, which tempts the user to "push" the boxes in.


@(activities: List[model.Activity])(implicit context: app.Context) @import context._ @import view.helpers._ @if(activities.isEmpty){ No activity } else { @activities.map { activity => @(activity.activityType match { case "open_issue" => detailActivity(activity, "issue", "issue-opened") case "comment_issue" => detailActivity(activity, "comment", "") case "close_issue" => detailActivity(activity, "issue", "issue-closed") case "reopen_issue" => detailActivity(activity, "issues_reopened", "issue-reopened") case "open_pullreq" => detailActivity(activity, "issues_opened", "git-pull-request") case "merge_pullreq" => detailActivity(activity, "merge", "") case "create_repository" => simpleActivity(activity, "create", "repo") case "create_branch" => simpleActivity(activity, "create", "git-branch") case "delete_branch" => simpleActivity(activity, "delete", "git-branch") case "create_tag" => simpleActivity(activity, "create", "tag") case "delete_tag" => simpleActivity(activity, "delete", "tag") case "fork" => simpleActivity(activity, "fork", "git-branch") case "push" => customActivity(activity, "push", "git-commit"){
} case "create_wiki" => customActivity(activity, "create", "book"){ } case "edit_wiki" => customActivity(activity, "edit", "book"){ activity.additionalInfo.get.split(":") match { case Array(pageName, commitId) => case Array(pageName) => } } }) } } @detailActivity(activity: model.Activity, css: String, icon: String) = {


This package computes posterior residual variances to be used in the denominator of a moderated t-statistic from a linear model analysis of microarray data. It is an extension of the moderated t-statistic original proposed by Smyth (2004). LOESS local regression and empirical Bayesian method are used to estimate gene specific prior degrees of freedom and prior variance based on average gene intensity level. The posterior residual variance in the denominator is a weighted average of prior and residual variance and the weights are prior degrees of freedom and residual variance degrees of freedom. The degrees of freedom of the moderated t-statistic is simply the sum of prior and residual variance degrees of freedom.
| Version: | 1.0 |
| Suggests: | limma |
| Published: | 2012-08-30 |
| Author: | Lianbo Yu, The Ohio State University |
| Maintainer: | Lianbo Yu <Lianbo.Yu at osumc.edu> |
| License: | GPL-2 |
| NeedsCompilation: | no |
| CRAN checks: | fmt results |
| Reference manual: | fmt.pdf |
| Package source: | fmt_1.0.tar.gz |
| Windows binaries: | r-devel: fmt_1.0.zip, r-release: fmt_1.0.zip, r-oldrel: fmt_1.0.zip |
| OS X binaries: | r-release: fmt_1.0.tgz, r-oldrel: fmt_1.0.tgz |
Please use the canonical form https://CRAN.R-project.org/package=fmt to link to this page.


R3bn Lotto Winner Buys His Favourite Club
by David KappelA lifelong fan has bought a majority share in his favourite club after winning an incredible R3 billion in the EuroMillions lottery.
Read: The Highest-Paid EPL Managers After Mourinho Return
Colin Weir has completed a takeover of Scottish Championship side Partick Thistle after buying 55% of the club's shares, as reported by ESPN.
The die-hard Thistle fan also announced that he would give his shares to the club's fans for free in 2020.
"(Partick Thistle supporters organisation) Thistle for Ever planted the thought of fan ownership as a real option in my mind," Weir said in a statement.
Earn Airtime & Data With Soccer Laduma's Social Media App - Download Now
"But this has all happened quicker than anyone might have anticipated. That's why I have offered a three-to-four-month window for fans to get everything in place before handing over shares.
"They want to get it right and I want to be sure that when the new entity is operational, there is a structure that will allow for a smooth transfer of ownership. This is a major financial commitment on my part as fan owners will not need to repay a penny – but I believe this gives fan ownership the best possible start."
Read: World's Richest Club Revealed, Real Dethroned
He won the lotto jackpot in 2011, and had already invested about £2.5 million (R48 million) of his £161 million (R3 billion) winnings into the Glasgow-based club, and also said there would a future announcement about plans to fund the club's youth academy.


JULIEN DONKEY-BOY A film review by Steve Rhodes Copyright 1999 Steve Rhodes RATING (0 TO ****): *
I have good news for you. You -- yes, you! -- could be a filmmaker and have your name in lights.
No, you don't have to go to film school. You don't have to think of a story.  No, not those sharp looking new ones made with your fancy new camcorder. Those old, grainy, shaky ones, in which your subjects ramble quasi-unintelligibly. Take those, purposely assemble the clips in random order, and, voilà, you are a filmmaker. Your masterpiece can even win the "Dogme 95" seal of approval, which says that your film was made without use of artificial lights, sounds, props, etc.
Lest you think the chance of your rise to fame is a pipe dream, consider JULIEN DONKEY-BOY by writer and director Harmony Korine (KIDS and GUMMO). There is probably a story buried there somewhere, but it takes the press notes to decipher it, not that you'd care. The film is the first American movie made according to the Dogme 95 precepts.
Sandwiched between long cinematic wastelands are periodic incidents designed to disgust us. One has the lead character, Julien (Ewen Bremner), take out his false teeth at dinner and dunk them several times in his red soda. (The colors in the film are so far off that one can never be sure what the actual color was.) Another has Julien leaning over the camera as spit comes out from his mouth and snot drops from his nose. In the story's pièce de résistance, a performer comes to entertain some kids. His trick is that he stuffs more and more lit cigarettes into his mouth, pretending to swallow them. Eventually he crams in an entire dozen and then spits them all back out, still smoking. Impressed, huh?
In another episode, an armless card player jokes about not having a card up his sleeve. And then there's the incident in which Julien's father (Werner Herzog) wants Julien to put on the dress of his dead mother so the father can dance with him.
"Shut up, shut up," the father says after hearing Julien recite a poem made up almost entirely of the word "chaos." "I don't really like it. It's too artsy-fartsy." The father then goes on to describe part of a "real movie" -- a Dirty Harry movie. The father's mere description of a scene from that movie was better than the entire JULIEN DONKEY-BOY, a movie so edgy that you'd like to push it off the edge of a cliff.
JULIEN DONKEY-BOY runs a tediously long 1:36. It is rated R for language, some sexuality and disturbing images. It would be acceptable for teenagers, who would likely be just as bored as the adults.
Email<EMAIL_ADDRESS>Web: http://www.InternetReviews.com
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews