Implement a much better data serializer for TCL