changed implementation to match new JSON Interface