@Override
  protected void writeData(final ByteBuf stream) {
    // Write the workbench
    ThEBasePacket.writeTileEntity(this.workbench, stream);

    switch (this.mode) {
      case Packet_S_EssentiaCellWorkbench.MODE_REQUEST_ADD_ASPECT:
      case Packet_S_EssentiaCellWorkbench.MODE_REQUEST_REMOVE_ASPECT:
        // Write the aspect
        ThEBasePacket.writeAspect(this.arAspect, stream);
        break;

      case Packet_S_EssentiaCellWorkbench.MODE_REQUEST_REPLACE_ASPECT:
        // Write the original aspect
        ThEBasePacket.writeAspect(this.arAspect, stream);

        // Write the replacement aspect
        ThEBasePacket.writeAspect(this.replaceAspect, stream);
        break;
    }
  }