diff --git a/.vscode/settings.json b/.vscode/settings.json
index 8776880ee1105ce76e6750d0b4cc9f752793fdcb..9f20238be3337de52d4b5264853a36f5bdf719b8 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -3,6 +3,7 @@
     "files.associations": {
         "*.glsl.ts": "glsl",
         "*.frag.ts": "glsl",
-        "*.vert.ts": "glsl"
+        "*.vert.ts": "glsl",
+        "*.gql.ts": "graphql"
     },
 }
\ No newline at end of file
diff --git a/README.md b/README.md
index e81cadce51b1a9bffeb9d6f081ef9e8a3e4a7a3a..dc5685f7f18ba5c595c39429dce4a5c45748698a 100644
--- a/README.md
+++ b/README.md
@@ -120,12 +120,13 @@ If node complains about a missine acorn peer dependency, run the following comma
 
 ### Editor
 
-To get syntax highlighting for the shader files add the following to Visual Code's settings files
+To get syntax highlighting for shader and graphql files add the following to Visual Code's settings files and make sure relevant extanesions are installed in the editor.
 
     "files.associations": {
         "*.glsl.ts": "glsl",
         "*.frag.ts": "glsl",
-        "*.vert.ts": "glsl"
+        "*.vert.ts": "glsl",
+        "*.gql.ts": "graphql"
     },
 
 ## Contributing
diff --git a/package.json b/package.json
index 7f854880567cdd56bb14b73c7122f08028d5718c..17263a4dab0f6a9f75d5df89b2af74a1daa29a66 100644
--- a/package.json
+++ b/package.json
@@ -13,11 +13,11 @@
   "scripts": {
     "lint": "tslint src/**/*.ts",
     "test": "npm run lint && jest",
-    "build": "cpx \"src/**/*.{scss,woff,woff2,ttf,otf,eot,svg,html,gql}\" lib/ && tsc",
+    "build": "cpx \"src/**/*.{scss,woff,woff2,ttf,otf,eot,svg,html}\" lib/ && tsc",
     "postinstall": "npm run build",
     "watch": "concurrently --kill-others \"npm:watch-ts\" \"npm:watch-extra\" \"npm:watch-webpack\"",
     "watch-ts": "tsc -watch",
-    "watch-extra": "cpx \"src/**/*.{scss,woff,woff2,ttf,otf,eot,svg,html,gql}\" lib/ --watch",
+    "watch-extra": "cpx \"src/**/*.{scss,woff,woff2,ttf,otf,eot,svg,html}\" lib/ --watch",
     "build-webpack": "webpack --mode production",
     "watch-webpack": "webpack -w --mode development --display minimal",
     "model-server": "node lib/servers/model/server.js",
diff --git a/src/mol-model-props/rcsb/assembly-symmetry.ts b/src/mol-model-props/rcsb/assembly-symmetry.ts
index 2507935c5e2a74591763c35989502c6429a82627..150a93ef4766560f6e76e3e3a2c875766e57c7a5 100644
--- a/src/mol-model-props/rcsb/assembly-symmetry.ts
+++ b/src/mol-model-props/rcsb/assembly-symmetry.ts
@@ -273,9 +273,9 @@ export namespace AssemblySymmetry {
                 console.error(e)
                 return false;
             }
-            if (!result || !result.assemblies) return false;
+            if (!result || !result.entry || !result.entry.assemblies) return false;
 
-            db = createDatabaseFromJson(result.assemblies as ReadonlyArray<AssemblySymmetryGraphQL.Assemblies>)
+            db = createDatabaseFromJson(result.entry.assemblies as ReadonlyArray<AssemblySymmetryGraphQL.Assemblies>)
         }
 
         model.customProperties.add(Descriptor);
diff --git a/src/mol-model-props/rcsb/graphql/symmetry.gql.ts b/src/mol-model-props/rcsb/graphql/symmetry.gql.ts
index 87aec81b1deb5af462a61f845a57b474342a50f8..91395a77be0e771b4f1bddfbee1e9353aeba71e4 100644
--- a/src/mol-model-props/rcsb/graphql/symmetry.gql.ts
+++ b/src/mol-model-props/rcsb/graphql/symmetry.gql.ts
@@ -1,26 +1,28 @@
 export default `query AssemblySymmetry($pdbId: String!) {
-    assemblies(pdbId: $pdbId) {
-        pdbx_struct_assembly {
-            id
-        }
-        rcsb_struct_symmetry {
-            clusters {
-                avg_rmsd
-                members {
-                    asym_id
-                    pdbx_struct_oper_list_ids
-                }
+    entry(pdbId: $pdbId) {
+        assemblies {
+            pdbx_struct_assembly {
+                id
             }
-            kind
-            oligomeric_state
-            rotation_axes {
-                start
-                end
-                order
+            rcsb_struct_symmetry {
+                clusters {
+                    avg_rmsd
+                    members {
+                        asym_id
+                        pdbx_struct_oper_list_ids
+                    }
+                }
+                kind
+                oligomeric_state
+                rotation_axes {
+                    start
+                    end
+                    order
+                }
+                stoichiometry
+                symbol
+                type
             }
-            stoichiometry
-            symbol
-            type
         }
     }
 }`
\ No newline at end of file
diff --git a/src/mol-model-props/rcsb/graphql/types.ts b/src/mol-model-props/rcsb/graphql/types.ts
index fc3e89fbf2463ac3c5746528728fa3b67614c76a..44ffbca486dcd735737284ec903a969e3200d504 100644
--- a/src/mol-model-props/rcsb/graphql/types.ts
+++ b/src/mol-model-props/rcsb/graphql/types.ts
@@ -1,4 +1,4 @@
-// Generated in 2019-03-01T14:48:33-08:00
+// Generated in 2019-06-04T12:44:49-07:00
 export type Maybe<T> = T | null;
 
 /** Built-in scalar representing an instant in time */
@@ -19,6 +19,12 @@ export namespace AssemblySymmetry {
   export type Query = {
     __typename?: "Query";
 
+    entry: Maybe<Entry>;
+  };
+
+  export type Entry = {
+    __typename?: "CoreEntry";
+
     assemblies: Maybe<(Maybe<Assemblies>)[]>;
   };
 
diff --git a/src/mol-model-props/rcsb/themes/assembly-symmetry-cluster.ts b/src/mol-model-props/rcsb/themes/assembly-symmetry-cluster.ts
index 8af6802eaed6cdc3f75c4cb52d81b8a8361ab594..86866a062b619a89a0938acbd447904a71d34240 100644
--- a/src/mol-model-props/rcsb/themes/assembly-symmetry-cluster.ts
+++ b/src/mol-model-props/rcsb/themes/assembly-symmetry-cluster.ts
@@ -1,5 +1,5 @@
 /**
- * Copyright (c) 2018 mol* contributors, licensed under MIT, See LICENSE file for more info.
+ * Copyright (c) 2018-2019 mol* contributors, licensed under MIT, See LICENSE file for more info.
  *
  * @author Alexander Rose <alexander.rose@weirdbyte.de>
  */
@@ -9,11 +9,13 @@ import { ColorTheme, LocationColor } from '../../../mol-theme/color';
 import { ParamDefinition as PD } from '../../../mol-util/param-definition'
 import { Table } from '../../../mol-data/db';
 import { AssemblySymmetry } from '../assembly-symmetry';
-import { ColorScale, Color } from '../../../mol-util/color';
+import { Color } from '../../../mol-util/color';
 import { Unit, StructureElement, StructureProperties } from '../../../mol-model/structure';
 import { Location } from '../../../mol-model/location';
-import { ColorListName, ColorListOptions } from '../../../mol-util/color/scale';
+import { ScaleLegend } from '../../../mol-util/color/scale';
 import { getSymmetrySelectParam } from '../util';
+import { getPalette, getPaletteParams } from '../../../mol-theme/color/util';
+import { TableLegend } from '../../../mol-util/color/tables';
 
 const DefaultColor = Color(0xCCCCCC)
 
@@ -32,7 +34,7 @@ function clusterMemberKey(assemblyId: string, asymId: string, operList: string[]
 }
 
 export const AssemblySymmetryClusterColorThemeParams = {
-    list: PD.Select<ColorListName>('Viridis', ColorListOptions),
+    ...getPaletteParams({ scaleList: 'RedYellowBlue' }),
     symmetryId: getSymmetrySelectParam(),
 }
 export type AssemblySymmetryClusterColorThemeParams = typeof AssemblySymmetryClusterColorThemeParams
@@ -44,6 +46,7 @@ export function getAssemblySymmetryClusterColorThemeParams(ctx: ThemeDataContext
 
 export function AssemblySymmetryClusterColorTheme(ctx: ThemeDataContext, props: PD.Values<AssemblySymmetryClusterColorThemeParams>): ColorTheme<AssemblySymmetryClusterColorThemeParams> {
     let color: LocationColor = () => DefaultColor
+    let legend: ScaleLegend | TableLegend | undefined
 
     const { symmetryId } = props
 
@@ -68,7 +71,8 @@ export function AssemblySymmetryClusterColorTheme(ctx: ThemeDataContext, props:
                     }
                 }
 
-                const scale = ColorScale.create({ listOrName: props.list, domain: [ 0, clusters._rowCount - 1 ] })
+                const palette = getPalette(clusters._rowCount, props)
+                legend = palette.legend
 
                 color = (location: Location): Color => {
                     if (StructureElement.isLocation(location)) {
@@ -76,7 +80,7 @@ export function AssemblySymmetryClusterColorTheme(ctx: ThemeDataContext, props:
                         if (assembly && assembly.id === symmetry.assembly_id) {
                             const asymId = getAsymId(location.unit)(location)
                             const cluster = clusterByMember.get(clusterMemberKey(assembly.id, asymId, assembly.operList))
-                            return cluster !== undefined ? scale.color(cluster) : DefaultColor
+                            return cluster !== undefined ? palette.color(cluster) : DefaultColor
                         }
                     }
                     return DefaultColor
@@ -91,6 +95,7 @@ export function AssemblySymmetryClusterColorTheme(ctx: ThemeDataContext, props:
         color,
         props,
         description: 'Assigns chain colors according to assembly symmetry cluster membership.',
+        legend
     }
 }