use JSON objects for transitions