void pmesh() throws ScriptException {
		viewer.loadShape(JmolConstants.SHAPE_PMESH);
		viewer.setShapeProperty(JmolConstants.SHAPE_PMESH, "init", getCommand());
		Object t;
		for (int i = 1; i < statementLength; ++i) {
			String propertyName = null;
			Object propertyValue = null;
			int tok = statement[i].tok;
			switch (tok) {
			case Token.identifier:
				propertyValue = statement[i].value;
				String str = ((String) propertyValue);
				if (str.equalsIgnoreCase("FIXED")) {
					propertyName = "fixed";
					propertyValue = Boolean.TRUE;
					break;
				}
				if (str.equalsIgnoreCase("MODELBASED")) {
					propertyName = "fixed";
					propertyValue = Boolean.FALSE;
					break;
				}
				propertyName = "thisID";
				break;
			case Token.string:
				String filename = (String) statement[i].value;
				propertyName = "bufferedReader";
				if (filename.equalsIgnoreCase("inline")) {
					if (i + 1 < statementLength && statement[i + 1].tok == Token.string) {
						String data = (String) statement[++i].value;
						if (data.indexOf("|") < 0 && data.indexOf("\n") < 0) {
							// space separates -- so set isOnePerLine
							data = viewer.simpleReplace(data, " ", "\n");
							propertyName = "bufferedReaderOnePerLine";
						}
						data = viewer.simpleReplace(data, "{", " ");
						data = viewer.simpleReplace(data, ",", " ");
						data = viewer.simpleReplace(data, "}", " ");
						data = viewer.simpleReplace(data, "|", "\n");
						data = viewer.simpleReplace(data, "\n\n", "\n");
						if (logMessages)
							Logger.debug("pmesh inline data:\n" + data);
						t = viewer.getBufferedReaderForString(data);
					}
					else {
						stringOrIdentifierExpected();
						break;
					}
				}
				else {
					t = viewer.getUnzippedBufferedReaderOrErrorMessageFromName(filename);
					if (t instanceof String)
						fileNotFoundException(filename + ":" + t);
				}
				propertyValue = t;
				break;
			default:
				if (!setMeshDisplayProperty(JmolConstants.SHAPE_PMESH, tok))
					invalidArgument(i, statement[i] + " not recognized");
				continue;
			}
			viewer.setShapeProperty(JmolConstants.SHAPE_PMESH, propertyName, propertyValue);
		}
	}