Bladeren bron

Initial commit (structure + current version)

Dalibor Votruba 4 jaren geleden
bovenliggende
commit
b0c5447b1d
100 gewijzigde bestanden met toevoegingen van 12389 en 0 verwijderingen
  1. 18 0
      @Database/bo_clear_db.sql
  2. 115 0
      @Database/bo_create_db.sql
  3. 1164 0
      @Database/bo_create_schema.sql
  4. 12 0
      @Database/bo_initial_data.sql
  5. 6656 0
      @Documentation/BlueprintOptimizer.simp
  6. 12 0
      AppServer/.config/dotnet-tools.json
  7. 112 0
      AppServer/AppServer.sln
  8. 24 0
      AppServer/Business/Business.csproj
  9. 44 0
      AppServer/Business/Configuration/Configuration.cs
  10. 21 0
      AppServer/Business/Enums/StatisticItemTypeEnum.cs
  11. 16 0
      AppServer/Business/ErrorCodes.txt
  12. 19 0
      AppServer/Business/Exceptions/EntityAlreadyExistsException.cs
  13. 19 0
      AppServer/Business/Exceptions/EntityNotExistsException.cs
  14. 18 0
      AppServer/Business/HeaderPagingDto.cs
  15. 21 0
      AppServer/Business/Mapper/MapperKeyScalarDate.cs
  16. 78 0
      AppServer/Business/Mapper/MapperKeyScalarDateExt.cs
  17. 35 0
      AppServer/Business/Mapper/MapperLong.cs
  18. 77 0
      AppServer/Business/Mapper/MapperLongExt.cs
  19. 20 0
      AppServer/Business/Mapper/MapperNoKey.cs
  20. 80 0
      AppServer/Business/Mapper/MapperNoKeyExt.cs
  21. 115 0
      AppServer/Business/Services/AccessService.cs
  22. 31 0
      AppServer/Business/Services/Base/UserContextService.cs
  23. 172 0
      AppServer/Business/Services/CatalogueService.cs
  24. 82 0
      AppServer/Business/Services/ConfigurationService.cs
  25. 44 0
      AppServer/Business/Services/StatisticsService.cs
  26. 229 0
      AppServer/Business/Services/UserService.cs
  27. 8 0
      AppServer/Connector.B2B/Class1.cs
  28. 12 0
      AppServer/Connector.B2B/Connector.B2B.csproj
  29. 133 0
      AppServer/Connector.Console/Connection.cs
  30. 18 0
      AppServer/Connector.Console/Connector.Console.csproj
  31. 8 0
      AppServer/Connector.PS/Class1.cs
  32. 11 0
      AppServer/Connector.PS/Connector.PS.csproj
  33. 234 0
      AppServer/Connector/AbstractConnection.cs
  34. 21 0
      AppServer/Connector/Connector.csproj
  35. 24 0
      AppServer/Connector/RESTCallTypeEnum.cs
  36. 29 0
      AppServer/Data/Data.csproj
  37. 24 0
      AppServer/Data/Entity/Artifact.cs
  38. 9 0
      AppServer/Data/Entity/Artifact.decl.cs
  39. 1163 0
      AppServer/Data/Entity/BOContext.cs
  40. 37 0
      AppServer/Data/Entity/BillingInfo.cs
  41. 9 0
      AppServer/Data/Entity/BillingInfo.decl.cs
  42. 39 0
      AppServer/Data/Entity/BillingPlan.cs
  43. 9 0
      AppServer/Data/Entity/BillingPlan.decl.cs
  44. 46 0
      AppServer/Data/Entity/Invoice.cs
  45. 9 0
      AppServer/Data/Entity/Invoice.decl.cs
  46. 36 0
      AppServer/Data/Entity/InvoiceIssuer.cs
  47. 9 0
      AppServer/Data/Entity/InvoiceIssuer.decl.cs
  48. 27 0
      AppServer/Data/Entity/InvoiceItem.cs
  49. 9 0
      AppServer/Data/Entity/InvoiceItem.decl.cs
  50. 34 0
      AppServer/Data/Entity/Metadocument.cs
  51. 9 0
      AppServer/Data/Entity/Metadocument.decl.cs
  52. 23 0
      AppServer/Data/Entity/MetadocumentBilling.cs
  53. 16 0
      AppServer/Data/Entity/MetadocumentTag.cs
  54. 29 0
      AppServer/Data/Entity/MimeType.cs
  55. 9 0
      AppServer/Data/Entity/MimeType.decl.cs
  56. 34 0
      AppServer/Data/Entity/Statistic.cs
  57. 9 0
      AppServer/Data/Entity/Statistic.decl.cs
  58. 20 0
      AppServer/Data/Entity/StatusHistory.cs
  59. 9 0
      AppServer/Data/Entity/StatusHistory.decl.cs
  60. 30 0
      AppServer/Data/Entity/Structure.cs
  61. 9 0
      AppServer/Data/Entity/Structure.decl.cs
  62. 23 0
      AppServer/Data/Entity/Tag.cs
  63. 9 0
      AppServer/Data/Entity/Tag.decl.cs
  64. 69 0
      AppServer/Data/Entity/User.cs
  65. 9 0
      AppServer/Data/Entity/User.decl.cs
  66. 17 0
      AppServer/Data/Entity/UserWorkspace.cs
  67. 38 0
      AppServer/Data/Entity/Workspace.cs
  68. 10 0
      AppServer/Data/Entity/Workspace.decl.cs
  69. 26 0
      AppServer/Data/Entity/WorkspaceBilling.cs
  70. 42 0
      AppServer/Data/KeyScalarDate.cs
  71. 14 0
      AppServer/Data/Repository/ArtifactRepo.cs
  72. 11 0
      AppServer/Data/Repository/BillingInfoRepo.cs
  73. 11 0
      AppServer/Data/Repository/BillingPlanRepo.cs
  74. 11 0
      AppServer/Data/Repository/InvoiceIssuerRepo.cs
  75. 11 0
      AppServer/Data/Repository/InvoiceItemRepo.cs
  76. 11 0
      AppServer/Data/Repository/InvoiceRepo.cs
  77. 11 0
      AppServer/Data/Repository/MetadocumentRepo.cs
  78. 11 0
      AppServer/Data/Repository/MimeTypeRepo.cs
  79. 36 0
      AppServer/Data/Repository/StatisticRepo.cs
  80. 11 0
      AppServer/Data/Repository/StatusHistoryRepo.cs
  81. 11 0
      AppServer/Data/Repository/StructureRepo.cs
  82. 11 0
      AppServer/Data/Repository/TagRepo.cs
  83. 19 0
      AppServer/Data/Repository/UserRepo.cs
  84. 11 0
      AppServer/Data/Repository/WorkspaceRepo.cs
  85. 10 0
      AppServer/Data/readme.txt
  86. 50 0
      AppServer/Metadata/Dto/ArtifactDto.cs
  87. 11 0
      AppServer/Metadata/Dto/AssemblyInfoDto.cs
  88. 11 0
      AppServer/Metadata/Dto/AuthDto.cs
  89. 57 0
      AppServer/Metadata/Dto/BillingInfo.cs
  90. 79 0
      AppServer/Metadata/Dto/BillingPlanDto.cs
  91. 12 0
      AppServer/Metadata/Dto/BoAuditDto.cs
  92. 11 0
      AppServer/Metadata/Dto/BoDto.cs
  93. 60 0
      AppServer/Metadata/Dto/DocumentDto.cs
  94. 50 0
      AppServer/Metadata/Dto/DocumentStatusHistoryDto.cs
  95. 54 0
      AppServer/Metadata/Dto/MimeTypeDto.cs
  96. 9 0
      AppServer/Metadata/Dto/PingDto.cs
  97. 31 0
      AppServer/Metadata/Dto/StatisticsDto.cs
  98. 55 0
      AppServer/Metadata/Dto/UserDto.cs
  99. 55 0
      AppServer/Metadata/Dto/WorkspaceDto.cs
  100. 12 0
      AppServer/Metadata/Enums/ArtifactTypeEnum.cs

+ 18 - 0
@Database/bo_clear_db.sql

@@ -0,0 +1,18 @@
+-- use database
+USE [BO]
+GO
+  
+-- drop constraints
+DECLARE @DropConstraints NVARCHAR(max) = ''
+SELECT @DropConstraints += 'ALTER TABLE ' + QUOTENAME(OBJECT_SCHEMA_NAME(parent_object_id)) + '.'
+                        +  QUOTENAME(OBJECT_NAME(parent_object_id)) + ' ' + 'DROP CONSTRAINT' + QUOTENAME(name)
+FROM sys.foreign_keys
+EXECUTE sp_executesql @DropConstraints;
+GO
+  
+-- drop tables
+DECLARE @DropTables NVARCHAR(max) = ''
+SELECT @DropTables += 'DROP TABLE ' + QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME)
+FROM INFORMATION_SCHEMA.TABLES
+EXECUTE sp_executesql @DropTables;
+GO

+ 115 - 0
@Database/bo_create_db.sql

@@ -0,0 +1,115 @@
+-- 30.7.2021
+USE [master]
+GO
+
+/****** Object:  Database [BO]    Script Date: 30.07.2021 19:41:56 ******/
+CREATE DATABASE [BO]
+ CONTAINMENT = NONE
+ ON  PRIMARY 
+( NAME = N'BO', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\DATA\BO.mdf' , SIZE = 8192KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB )
+ LOG ON 
+( NAME = N'BO_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\DATA\BO_log.ldf' , SIZE = 8192KB , MAXSIZE = 2048GB , FILEGROWTH = 65536KB )
+GO
+
+IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
+begin
+EXEC [BO].[dbo].[sp_fulltext_database] @action = 'enable'
+end
+GO
+
+ALTER DATABASE [BO] SET ANSI_NULL_DEFAULT OFF 
+GO
+
+ALTER DATABASE [BO] SET ANSI_NULLS OFF 
+GO
+
+ALTER DATABASE [BO] SET ANSI_PADDING OFF 
+GO
+
+ALTER DATABASE [BO] SET ANSI_WARNINGS OFF 
+GO
+
+ALTER DATABASE [BO] SET ARITHABORT OFF 
+GO
+
+ALTER DATABASE [BO] SET AUTO_CLOSE OFF 
+GO
+
+ALTER DATABASE [BO] SET AUTO_SHRINK OFF 
+GO
+
+ALTER DATABASE [BO] SET AUTO_UPDATE_STATISTICS ON 
+GO
+
+ALTER DATABASE [BO] SET CURSOR_CLOSE_ON_COMMIT OFF 
+GO
+
+ALTER DATABASE [BO] SET CURSOR_DEFAULT  GLOBAL 
+GO
+
+ALTER DATABASE [BO] SET CONCAT_NULL_YIELDS_NULL OFF 
+GO
+
+ALTER DATABASE [BO] SET NUMERIC_ROUNDABORT OFF 
+GO
+
+ALTER DATABASE [BO] SET QUOTED_IDENTIFIER OFF 
+GO
+
+ALTER DATABASE [BO] SET RECURSIVE_TRIGGERS OFF 
+GO
+
+ALTER DATABASE [BO] SET  DISABLE_BROKER 
+GO
+
+ALTER DATABASE [BO] SET AUTO_UPDATE_STATISTICS_ASYNC OFF 
+GO
+
+ALTER DATABASE [BO] SET DATE_CORRELATION_OPTIMIZATION OFF 
+GO
+
+ALTER DATABASE [BO] SET TRUSTWORTHY OFF 
+GO
+
+ALTER DATABASE [BO] SET ALLOW_SNAPSHOT_ISOLATION OFF 
+GO
+
+ALTER DATABASE [BO] SET PARAMETERIZATION SIMPLE 
+GO
+
+ALTER DATABASE [BO] SET READ_COMMITTED_SNAPSHOT OFF 
+GO
+
+ALTER DATABASE [BO] SET HONOR_BROKER_PRIORITY OFF 
+GO
+
+ALTER DATABASE [BO] SET RECOVERY FULL 
+GO
+
+ALTER DATABASE [BO] SET  MULTI_USER 
+GO
+
+ALTER DATABASE [BO] SET PAGE_VERIFY CHECKSUM  
+GO
+
+ALTER DATABASE [BO] SET DB_CHAINING OFF 
+GO
+
+ALTER DATABASE [BO] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF ) 
+GO
+
+ALTER DATABASE [BO] SET TARGET_RECOVERY_TIME = 60 SECONDS 
+GO
+
+ALTER DATABASE [BO] SET DELAYED_DURABILITY = DISABLED 
+GO
+
+ALTER DATABASE [BO] SET QUERY_STORE = OFF
+GO
+
+ALTER DATABASE [BO] SET  READ_WRITE 
+GO
+
+
+EXEC sys.sp_addextendedproperty @name=N'BO_Version', @value=N'0.0.0'
+go

+ 1164 - 0
@Database/bo_create_schema.sql

@@ -0,0 +1,1164 @@
+-- 12.8.2021 1.0.6
+-- Table User --------------------------
+--Defines User identity with statistics informations. Defines if user is enabled and/or user is system account also.
+CREATE TABLE [dbo].[User]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [IFReference] [varchar] (50) NOT NULL,
+    [Name] [nvarchar] (200) NOT NULL,
+    [LastLogged] [datetime] NULL,
+    [LastDisabled] [datetime] NULL,
+    [LastEnabled] [datetime] NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_User_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    [LangLCID] [int] NOT NULL CONSTRAINT DF_User_LangLCID DEFAULT 1033,
+    [IsSystem] [bit] NOT NULL CONSTRAINT DF_User_IsSystem DEFAULT 0,
+    [IsEnabled] [bit] NOT NULL CONSTRAINT DF_User_IsEnabled DEFAULT 0,
+    CONSTRAINT PK_USER_ID PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'User primary key' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'User', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to Identity framework IdentityUser.Id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'User', @level2type=N'COLUMN',@level2name=N'IFReference'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Full user name' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'User', @level2type=N'COLUMN',@level2name=N'Name'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp of user last successful login' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'User', @level2type=N'COLUMN',@level2name=N'LastLogged'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp of last user set to be disabled' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'User', @level2type=N'COLUMN',@level2name=N'LastDisabled'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp of last user set to be enabled' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'User', @level2type=N'COLUMN',@level2name=N'LastEnabled'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when user was created' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'User', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when user was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'User', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'LCID of preffered user language' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'User', @level2type=N'COLUMN',@level2name=N'LangLCID'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Flag if user is system only account. Cannot log in.' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'User', @level2type=N'COLUMN',@level2name=N'IsSystem'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Flag if user can sign on' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'User', @level2type=N'COLUMN',@level2name=N'IsEnabled'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'User identity with properties' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'User'
+GO
+
+
+-- Table UserWorkspace --------------------------
+--Association between User and Workspace. Which Workspace is assigned to user.
+CREATE TABLE [dbo].[UserWorkspace]
+(
+    [UserId] [bigint] NOT NULL,
+    [WorkspaceId] [bigint] NOT NULL,
+    [IsDefault] [bit] NOT NULL CONSTRAINT DF_UserWorkspace_IsDefault DEFAULT 0
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'UserWorkspace', @level2type=N'COLUMN',@level2name=N'UserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to workspace record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'UserWorkspace', @level2type=N'COLUMN',@level2name=N'WorkspaceId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Flag if relation is default' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'UserWorkspace', @level2type=N'COLUMN',@level2name=N'IsDefault'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Association between User and Workspace. Which Workspace is assigned to user.' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'UserWorkspace'
+GO
+
+
+-- Table Workspace --------------------------
+--Main workspace root structure holds information about working space (set of documents) and their business plan
+CREATE TABLE [dbo].[Workspace]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [Name] [nvarchar] (200) NOT NULL,
+    [BillingInfoId] [bigint] NOT NULL,
+    [BillingPlanId] [bigint] NOT NULL,
+    [APIKey] [uniqueidentifier] NOT NULL CONSTRAINT DF_Workspace_APIKey DEFAULT newid(),
+    [APIPassword] [nvarchar] (50) NOT NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_Workspace_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    [CreatedByUserId] [bigint] NOT NULL,
+    [ModifiedByUserId] [bigint] NULL,
+    [IsGold] [bit] NOT NULL CONSTRAINT DF_Workspace_IsGold DEFAULT 0,
+    CONSTRAINT PK_WORKSPACE_ID PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Workspace primary key' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Workspace', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Workspace name' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Workspace', @level2type=N'COLUMN',@level2name=N'Name'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to current billing info record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Workspace', @level2type=N'COLUMN',@level2name=N'BillingInfoId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to current billing plan record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Workspace', @level2type=N'COLUMN',@level2name=N'BillingPlanId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'API Key for access to workspace via B2B interface' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Workspace', @level2type=N'COLUMN',@level2name=N'APIKey'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'API Key Password for access to workspace via B2B interface' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Workspace', @level2type=N'COLUMN',@level2name=N'APIPassword'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when workspace was created' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Workspace', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when workspace was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Workspace', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who created workspace' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Workspace', @level2type=N'COLUMN',@level2name=N'CreatedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who updated workspace' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Workspace', @level2type=N'COLUMN',@level2name=N'ModifiedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Define if workspace is GOLD mode (has custom billing plan)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Workspace', @level2type=N'COLUMN',@level2name=N'IsGold'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Main workspace root structure holds information about working space (set of documents) and their business plan' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Workspace'
+GO
+
+
+-- Table BillingInfo --------------------------
+--Workspace billing information for invoicing
+CREATE TABLE [dbo].[BillingInfo]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [WorkspaceId] [bigint] NOT NULL,
+    [SubjectName] [nvarchar] (200) NOT NULL,
+    [Address1] [nvarchar] (200) NOT NULL,
+    [Address2] [nvarchar] (200) NULL,
+    [City] [nvarchar] (100) NOT NULL,
+    [ZIP] [nvarchar] (20) NOT NULL,
+    [Country] [nvarchar] (50) NOT NULL,
+    [TaxNumber] [nvarchar] (20) NOT NULL,
+    [VATNumber] [nvarchar] (20) NULL,
+    [Phone] [nvarchar] (20) NULL,
+    [Email] [nvarchar] (20) NOT NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_BillingInfo_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    [CreatedByUserId] [bigint] NOT NULL,
+    [ModifiedByUserId] [bigint] NULL,
+    CONSTRAINT PK_BILLING_INFO_ID PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Primary key of billing information record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to owning workspace' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'WorkspaceId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Subject name' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'SubjectName'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address line 1' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'Address1'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address line 2' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'Address2'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address city' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'City'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address ZIP' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'ZIP'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address country' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'Country'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Tax number' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'TaxNumber'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing VAT number' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'VATNumber'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing phone with format +XXXXXXXXX' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'Phone'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing email' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'Email'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing info was created' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing info was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who created billing info' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'CreatedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who updated billing info' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo', @level2type=N'COLUMN',@level2name=N'ModifiedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Workspace billing information for invoicing' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingInfo'
+GO
+
+
+-- Table Structure --------------------------
+--Abstract repository structure (folder-like) where documents are assignig
+CREATE TABLE [dbo].[Structure]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [Name] [nvarchar] (200) NOT NULL,
+    [WorkspaceId] [bigint] NOT NULL,
+    [ParentId] [bigint] NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_Structure_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    [CreatedByUserId] [bigint] NOT NULL,
+    [ModifiedByUserId] [bigint] NULL,
+    CONSTRAINT PK_STRUCTURE_ID PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Structure primary key' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Structure', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Structure name' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Structure', @level2type=N'COLUMN',@level2name=N'Name'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to owning workspace' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Structure', @level2type=N'COLUMN',@level2name=N'WorkspaceId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to parent structure (folder). If null then record is root' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Structure', @level2type=N'COLUMN',@level2name=N'ParentId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when workspace was created' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Structure', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when workspace was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Structure', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who created workspace' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Structure', @level2type=N'COLUMN',@level2name=N'CreatedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who updated workspace' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Structure', @level2type=N'COLUMN',@level2name=N'ModifiedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Abstract repository structure (folder-like) where documents are assignig' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Structure'
+GO
+
+
+-- Table Metadocument --------------------------
+--Abstract single document header to process. Has setting parameters for computing and status
+CREATE TABLE [dbo].[Metadocument]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [StructureId] [bigint] NOT NULL,
+    [Name] [nvarchar] (200) NOT NULL,
+    [Status] [int] NOT NULL CONSTRAINT DF_Metadocument_Status DEFAULT 0,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_Metadocument_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    [LastDowloaded] [datetime] NULL,
+    [CreatedByUserId] [bigint] NOT NULL,
+    [ModifiedByUserId] [bigint] NULL,
+    [LastDownloadedByUserId] [bigint] NULL,
+    CONSTRAINT PK_METADOCUMENT_ID PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Primary key of metadocument record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Metadocument', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to owning structure (workspace)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Metadocument', @level2type=N'COLUMN',@level2name=N'StructureId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Metadocument name' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Metadocument', @level2type=N'COLUMN',@level2name=N'Name'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Metadocument status' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Metadocument', @level2type=N'COLUMN',@level2name=N'Status'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when metadocument was created (uploaded)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Metadocument', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when metadocument was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Metadocument', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when metadocument was last downloaded' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Metadocument', @level2type=N'COLUMN',@level2name=N'LastDowloaded'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who created (uploaded) metadocument' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Metadocument', @level2type=N'COLUMN',@level2name=N'CreatedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who updated metadocument' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Metadocument', @level2type=N'COLUMN',@level2name=N'ModifiedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who last metadocument dowloaded' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Metadocument', @level2type=N'COLUMN',@level2name=N'LastDownloadedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Abstract single document header to process. Has setting parameters for computing and status' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Metadocument'
+GO
+
+
+-- Table StatusHistory --------------------------
+--Stores metadocument status changing log with messages
+CREATE TABLE [dbo].[StatusHistory]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [MetadocumentId] [bigint] NOT NULL,
+    [Status] [int] NOT NULL CONSTRAINT DF_StatusHistory_Status DEFAULT 0,
+    [Message] [nvarchar] (4000) NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_StatusHistory_Created DEFAULT getdate(),
+    [CreatedByUserId] [bigint] NOT NULL,
+    CONSTRAINT PK_STATUS_HISTORY_ID PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Primary key of metadocument status history record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'StatusHistory', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to owning metadocument' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'StatusHistory', @level2type=N'COLUMN',@level2name=N'MetadocumentId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Metadocument status' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'StatusHistory', @level2type=N'COLUMN',@level2name=N'Status'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Status change message or error message. This value is optional.' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'StatusHistory', @level2type=N'COLUMN',@level2name=N'Message'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when metadocument was created (uploaded)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'StatusHistory', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who created (uploaded) metadocument' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'StatusHistory', @level2type=N'COLUMN',@level2name=N'CreatedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Stores metadocument status changing log with messages' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'StatusHistory'
+GO
+
+
+-- Table Artifact --------------------------
+--Stores single part of metadocument (called artifact). Refresents fingle physical file included for processing.
+CREATE TABLE [dbo].[Artifact]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [MetadocumentId] [bigint] NOT NULL,
+    [Name] [nvarchar] (200) NOT NULL,
+    [Extension] [nvarchar] (10) NULL,
+    [MimeTypeId] [bigint] NOT NULL,
+    [Type] [int] NOT NULL CONSTRAINT DF_Artifact_Type DEFAULT 0,
+    [Length] [bigint] NOT NULL CONSTRAINT DF_Artifact_Length DEFAULT 0,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_Artifact_Created DEFAULT getdate(),
+    [CreatedByUserId] [bigint] NOT NULL,
+    CONSTRAINT PK_ARTIFACT_ID PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Primary key of artifact record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Artifact', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to owning metadocument' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Artifact', @level2type=N'COLUMN',@level2name=N'MetadocumentId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Artifact file name without extension' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Artifact', @level2type=N'COLUMN',@level2name=N'Name'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Artifact file  extension' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Artifact', @level2type=N'COLUMN',@level2name=N'Extension'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to MIME Type enumeration' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Artifact', @level2type=N'COLUMN',@level2name=N'MimeTypeId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Defines type of artifact. 0 - Input, 1 - Output' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Artifact', @level2type=N'COLUMN',@level2name=N'Type'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Defines file content length in bytes' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Artifact', @level2type=N'COLUMN',@level2name=N'Length'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when artifact was created (uploaded)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Artifact', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who created (uploaded) artifact' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Artifact', @level2type=N'COLUMN',@level2name=N'CreatedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Stores single part of metadocument (called artifact). Refresents fingle physical file included for processing.' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Artifact'
+GO
+
+
+-- Table MimeType --------------------------
+--MIME Types global enumeration. Defines file extension and MIME type association, This table is managed only with administrator.
+CREATE TABLE [dbo].[MimeType]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [MIMEType] [nvarchar] (500) NOT NULL,
+    [Extensions] [nvarchar] (500) NOT NULL,
+    [Description] [nvarchar] (200) NOT NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_MimeType_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    [CreatedByUserId] [bigint] NOT NULL,
+    [ModifiedByUserId] [bigint] NULL,
+    [IsEnabled] [bit] NOT NULL CONSTRAINT DF_MimeType_IsEnabled DEFAULT 0,
+    CONSTRAINT PK_MIMETYPE_ID PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Primary key of MIMEType record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MimeType', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'MIMEType code' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MimeType', @level2type=N'COLUMN',@level2name=N'MIMEType'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Extensions for mime type separated by semicolomn (example cad; cat; txt)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MimeType', @level2type=N'COLUMN',@level2name=N'Extensions'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Short description of MIMEType' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MimeType', @level2type=N'COLUMN',@level2name=N'Description'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when metadocument was created (uploaded)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MimeType', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when metadocument was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MimeType', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who created (uploaded) metadocument' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MimeType', @level2type=N'COLUMN',@level2name=N'CreatedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who updated metadocument' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MimeType', @level2type=N'COLUMN',@level2name=N'ModifiedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Flag if record is active, otherwise shuld be delete' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MimeType', @level2type=N'COLUMN',@level2name=N'IsEnabled'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'MIME Types global enumeration. Defines file extension and MIME type association, This table is managed only with administrator.' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MimeType'
+GO
+
+
+-- Table Tag --------------------------
+--Declares tag for workspace scope. Tag is used on metadocument.
+CREATE TABLE [dbo].[Tag]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [WorkspaceId] [bigint] NOT NULL,
+    [Name] [nvarchar] (50) NOT NULL,
+    [RGB] [varchar] (50) NOT NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_Tag_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    [CreatedByUserId] [bigint] NOT NULL,
+    [ModifiedByUserId] [bigint] NULL,
+    CONSTRAINT PK_TAG_ID PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Primary key of tag record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Tag', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to owning workspace' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Tag', @level2type=N'COLUMN',@level2name=N'WorkspaceId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Tag name' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Tag', @level2type=N'COLUMN',@level2name=N'Name'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Tag color in RGB format' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Tag', @level2type=N'COLUMN',@level2name=N'RGB'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing info was created' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Tag', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing info was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Tag', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who created billing info' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Tag', @level2type=N'COLUMN',@level2name=N'CreatedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who updated billing info' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Tag', @level2type=N'COLUMN',@level2name=N'ModifiedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Declares tag for workspace scope. Tag is used on metadocument.' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Tag'
+GO
+
+
+-- Table MetadocumentTag --------------------------
+--Association of metadocument and tag
+CREATE TABLE [dbo].[MetadocumentTag]
+(
+    [MetadocumentId] [bigint] NOT NULL,
+    [TagId] [bigint] NOT NULL
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to owning metadocument' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentTag', @level2type=N'COLUMN',@level2name=N'MetadocumentId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to Tag' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentTag', @level2type=N'COLUMN',@level2name=N'TagId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Association of metadocument and tag' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentTag'
+GO
+
+
+-- Table BillingPlan --------------------------
+--Defines global Billing plan strategies (how to bill document processing in workspace). This table is managed only with administrator.
+CREATE TABLE [dbo].[BillingPlan]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [Name] [nvarchar] (200) NOT NULL,
+    [Code] [nvarchar] (10) NOT NULL,
+    [Description] [nvarchar] (200) NOT NULL,
+    [PSTInitialCredits] [int] NOT NULL,
+    [PSTCreditsPerItem] [int] NOT NULL,
+    [PSTWatermark] [bit] NOT NULL CONSTRAINT DF_BillingPlan_PSTWatermark DEFAULT 0,
+    [PSTQuality] [int] NOT NULL CONSTRAINT DF_BillingPlan_PSTQuality DEFAULT 0,
+    [PSTProcessProfile] [varchar] (5) NULL,
+    [PSTTest] [bit] NOT NULL CONSTRAINT DF_BillingPlan_PSTTest DEFAULT 0,
+    [Price] [decimal] NOT NULL CONSTRAINT DF_BillingPlan_Price DEFAULT 0,
+    [Currency] [varchar] (3) NOT NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_BillingPlan_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    [CreatedByUserId] [bigint] NOT NULL,
+    [ModifiedByUserId] [bigint] NULL,
+    [IsCustom] [bit] NOT NULL CONSTRAINT DF_BillingPlan_IsCustom DEFAULT 0,
+    [IsHidden] [bit] NOT NULL CONSTRAINT DF_BillingPlan_IsHidden DEFAULT 0,
+    [IsEnabled] [bit] NOT NULL CONSTRAINT DF_BillingPlan_IsEnabled DEFAULT 0,
+    CONSTRAINT PK_BILLINGPLAN_ID PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Primary key of BillingPlan record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing plan name' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'Name'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing plan short code' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'Code'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing plan short description' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'Description'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Preset - initial credit amount' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'PSTInitialCredits'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Preset - single item credit cost' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'PSTCreditsPerItem'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Preset - watermarked' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'PSTWatermark'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Preset - process quality 0 = lowest' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'PSTQuality'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Preset - processing profile code' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'PSTProcessProfile'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Preset - testing mode' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'PSTTest'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing plan price' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'Price'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing plan price currency' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'Currency'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when metadocument was created (uploaded)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when metadocument was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who created (uploaded) metadocument' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'CreatedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who updated metadocument' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'ModifiedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Flag if billing plan is custom dependent' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'IsCustom'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Flag if billing plan is private for use, only SuperAdmin can use it' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'IsHidden'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Flag if record is active, otherwise shuld be delete' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan', @level2type=N'COLUMN',@level2name=N'IsEnabled'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Defines global Billing plan strategies (how to bill document processing in workspace). This table is managed only with administrator.' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'BillingPlan'
+GO
+
+
+-- Table MetadocumentBilling --------------------------
+--Association of metadocument and billing plan
+CREATE TABLE [dbo].[MetadocumentBilling]
+(
+    [MetadocumentId] [bigint] NOT NULL,
+    [BillingPlanId] [bigint] NOT NULL,
+    [CreditCost] [int] NOT NULL CONSTRAINT DF_MetadocumentBilling_CreditCost DEFAULT 0,
+    [Watermark] [bit] NOT NULL CONSTRAINT DF_MetadocumentBilling_Watermark DEFAULT 0,
+    [Quality] [int] NOT NULL CONSTRAINT DF_MetadocumentBilling_Quality DEFAULT 0,
+    [ProcessProfile] [varchar] (5) NULL,
+    [Test] [bit] NOT NULL CONSTRAINT DF_MetadocumentBilling_Test DEFAULT 0,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_MetadocumentBilling_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to owning metadocument' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentBilling', @level2type=N'COLUMN',@level2name=N'MetadocumentId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to billing plan' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentBilling', @level2type=N'COLUMN',@level2name=N'BillingPlanId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Numeric value of billing plan spending. Depends on BillingPlan.' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentBilling', @level2type=N'COLUMN',@level2name=N'CreditCost'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Flag if watermarked' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentBilling', @level2type=N'COLUMN',@level2name=N'Watermark'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Process quality 0 = lowest' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentBilling', @level2type=N'COLUMN',@level2name=N'Quality'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Processing profile code' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentBilling', @level2type=N'COLUMN',@level2name=N'ProcessProfile'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Flag if testing mode' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentBilling', @level2type=N'COLUMN',@level2name=N'Test'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing was created' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentBilling', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentBilling', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Association of metadocument and billing plan' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'MetadocumentBilling'
+GO
+
+
+-- Table WorkspaceBilling --------------------------
+--Deffines current state of billing plan for workspace
+CREATE TABLE [dbo].[WorkspaceBilling]
+(
+    [WorkspaceId] [bigint] NOT NULL,
+    [BillingPlanId] [bigint] NOT NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_WorkspaceBilling_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    [ValueNumber] [decimal] (16,4) NOT NULL CONSTRAINT DF_WorkspaceBilling_ValueNumber DEFAULT 0,
+    [ValueDate] [datetime] NULL,
+    [CustomPSTInitialCredits] [int] NOT NULL,
+    [CustomPSTCreditsPerItem] [int] NOT NULL,
+    [CustomPSTWatermark] [bit] NOT NULL CONSTRAINT DF_WorkspaceBilling_CustomPSTWatermark DEFAULT 0,
+    [CustomPSTQuality] [int] NOT NULL CONSTRAINT DF_WorkspaceBilling_CustomPSTQuality DEFAULT 0,
+    [CustomPSTProcessProfile] [varchar] (5) NULL,
+    [CustomPSTTest] [bit] NOT NULL CONSTRAINT DF_WorkspaceBilling_CustomPSTTest DEFAULT 0
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to owning workspace' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling', @level2type=N'COLUMN',@level2name=N'WorkspaceId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to billing plan' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling', @level2type=N'COLUMN',@level2name=N'BillingPlanId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing was created' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Numeric value of billing plan spending. Depends on BillingPlan.' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling', @level2type=N'COLUMN',@level2name=N'ValueNumber'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'DateTime value of billing plan spending. Depends on BillingPlan' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling', @level2type=N'COLUMN',@level2name=N'ValueDate'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Custom Preset Override - initial credit amount' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling', @level2type=N'COLUMN',@level2name=N'CustomPSTInitialCredits'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Custom Preset Override - single item credit cost' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling', @level2type=N'COLUMN',@level2name=N'CustomPSTCreditsPerItem'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Custom Preset Override - watermarked' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling', @level2type=N'COLUMN',@level2name=N'CustomPSTWatermark'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Custom Preset Override - process quality 0 = lowest' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling', @level2type=N'COLUMN',@level2name=N'CustomPSTQuality'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Custom Preset Override - processing profile code' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling', @level2type=N'COLUMN',@level2name=N'CustomPSTProcessProfile'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Custom Preset Override - testing mode' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling', @level2type=N'COLUMN',@level2name=N'CustomPSTTest'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Deffines current state of billing plan for workspace' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'WorkspaceBilling'
+GO
+
+
+-- Table Invoice --------------------------
+--Stores invoice information of Workspace BusinessPlan 
+CREATE TABLE [dbo].[Invoice]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [WorkspaceId] [bigint] NOT NULL,
+    [InvoiceIssuerId] [bigint] NOT NULL,
+    [Code] [varchar] (12) NOT NULL,
+    [SubjectName] [nvarchar] (200) NOT NULL,
+    [Address1] [nvarchar] (200) NOT NULL,
+    [Address2] [nvarchar] (200) NULL,
+    [City] [nvarchar] (100) NOT NULL,
+    [ZIP] [nvarchar] (20) NOT NULL,
+    [Country] [nvarchar] (50) NOT NULL,
+    [TaxNumber] [nvarchar] (20) NOT NULL,
+    [VATNumber] [nvarchar] (20) NULL,
+    [Phone] [nvarchar] (20) NULL,
+    [Email] [nvarchar] (20) NOT NULL,
+    [TotalBasePrice] [decimal] (16,4) NOT NULL CONSTRAINT DF_Invoice_TotalBasePrice DEFAULT 0,
+    [TotalBaseCurrency] [varchar] (3) NOT NULL,
+    [Channel] [nvarchar] (20) NOT NULL,
+    [ChannelReference] [nvarchar] (50) NOT NULL,
+    [DueDate] [datetime] NOT NULL,
+    [TaxDate] [datetime] NOT NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_Invoice_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    [CreatedByUserId] [bigint] NOT NULL,
+    [ModifiedByUserId] [bigint] NULL,
+    CONSTRAINT PK_INVOICE_ID PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Primary key of invoice record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to owning workspace' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'WorkspaceId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to invoice issuer record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'InvoiceIssuerId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Invoice number' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'Code'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Subject name' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'SubjectName'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address line 1' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'Address1'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address line 2' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'Address2'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address city' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'City'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address ZIP' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'ZIP'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address country' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'Country'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Tax number' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'TaxNumber'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing VAT number' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'VATNumber'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing phone with format +XXXXXXXXX' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'Phone'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing email' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'Email'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Total base price (w/o VAT)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'TotalBasePrice'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Total base price currency (w/o VAT)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'TotalBaseCurrency'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Pay channel' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'Channel'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Pay channel reference (account number)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'ChannelReference'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Due date' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'DueDate'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Tax date' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'TaxDate'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing info was created' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing info was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who created billing info' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'CreatedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who updated billing info' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice', @level2type=N'COLUMN',@level2name=N'ModifiedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Stores invoice information of Workspace BusinessPlan ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Invoice'
+GO
+
+
+-- Table InvoiceItem --------------------------
+CREATE TABLE [dbo].[InvoiceItem]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [InvoiceId] [bigint] NOT NULL,
+    [BillingPlanId] [bigint] NOT NULL,
+    [BillingPlanCode] [nvarchar] (10) NOT NULL,
+    [UnitQuantity] [int] NOT NULL CONSTRAINT DF_InvoiceItem_UnitQuantity DEFAULT 1,
+    [UnitBasePrice] [decimal] (16,4) NOT NULL CONSTRAINT DF_InvoiceItem_UnitBasePrice DEFAULT 0,
+    [UnitBaseCurrency] [varchar] (3) NOT NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_InvoiceItem_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    [CreatedByUserId] [bigint] NOT NULL,
+    [ModifiedByUserId] [bigint] NULL,
+    CONSTRAINT PK_INVOICE_ITEM PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Primary key of invoice item record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceItem', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to owning invoice' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceItem', @level2type=N'COLUMN',@level2name=N'InvoiceId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to billing plan' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceItem', @level2type=N'COLUMN',@level2name=N'BillingPlanId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing plan short code' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceItem', @level2type=N'COLUMN',@level2name=N'BillingPlanCode'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Unit quantity' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceItem', @level2type=N'COLUMN',@level2name=N'UnitQuantity'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Unit base price (w/o VAT)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceItem', @level2type=N'COLUMN',@level2name=N'UnitBasePrice'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Unit base price currency (w/o VAT)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceItem', @level2type=N'COLUMN',@level2name=N'UnitBaseCurrency'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing info was created' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceItem', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing info was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceItem', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who created billing info' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceItem', @level2type=N'COLUMN',@level2name=N'CreatedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who updated billing info' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceItem', @level2type=N'COLUMN',@level2name=N'ModifiedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Invoice item' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceItem'
+GO
+
+
+-- Table InvoiceIssuer --------------------------
+--Defines information about Invoice Issuer and its contacts information (used in invoice header)
+CREATE TABLE [dbo].[InvoiceIssuer]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [SubjectName] [nvarchar] (200) NOT NULL,
+    [Address1] [nvarchar] (200) NOT NULL,
+    [Address2] [nvarchar] (200) NULL,
+    [City] [nvarchar] (100) NOT NULL,
+    [ZIP] [nvarchar] (20) NOT NULL,
+    [Country] [nvarchar] (50) NOT NULL,
+    [TaxNumber] [nvarchar] (20) NOT NULL,
+    [VATNumber] [nvarchar] (20) NULL,
+    [Phone] [nvarchar] (20) NULL,
+    [Email] [nvarchar] (20) NOT NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_InvoiceIssuer_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    [CreatedByUserId] [bigint] NOT NULL,
+    [ModifiedByUserId] [bigint] NULL,
+    [IsEnabled] [bit] NOT NULL CONSTRAINT DF_InvoiceIssuer_IsEnabled DEFAULT 0,
+    CONSTRAINT PK_INVOICE_ISSUER PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Primary key of invoice issuer record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Subject name' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'SubjectName'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address line 1' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'Address1'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address line 2' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'Address2'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address city' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'City'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address ZIP' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'ZIP'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Address country' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'Country'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing Tax number' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'TaxNumber'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing VAT number' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'VATNumber'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing phone with format +XXXXXXXXX' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'Phone'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Billing email' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'Email'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing info was created' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing info was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who created billing info' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'CreatedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Reference to user who updated billing info' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'ModifiedByUserId'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Flag if record is enabled' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer', @level2type=N'COLUMN',@level2name=N'IsEnabled'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Defines information about Invoice Issuer and its contacts information (used in invoice header)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'InvoiceIssuer'
+GO
+
+
+-- Table Statistic --------------------------
+CREATE TABLE [dbo].[Statistic]
+(
+    [Id] [bigint] NOT NULL IDENTITY (1, 1),
+    [Year] [int] NOT NULL,
+    [Month] [int] NOT NULL,
+    [Day] [int] NOT NULL,
+    [UserNewCnt] [int] NOT NULL,
+    [UserLoginCnt] [int] NOT NULL,
+    [UserLoginB2BCnt] [int] NOT NULL,
+    [UserTotalCnt] [int] NOT NULL,
+    [WorkspaceNewCnt] [int] NOT NULL,
+    [WorkspaceTotalCnt] [int] NOT NULL,
+    [InvoiceNewCnt] [int] NOT NULL,
+    [DocumentNewCnt] [int] NOT NULL,
+    [DocumentFailedCnt] [int] NOT NULL,
+    [DocumentDownloadedCnt] [int] NOT NULL,
+    [DocumentTotalCnt] [int] NOT NULL,
+    [DocumentProcessedCnt] [int] NOT NULL,
+    [PSActiveCnt] [int] NOT NULL,
+    [YieldWorthSum] [decimal] (16,4) NOT NULL,
+    [YieldWorthCurrency] [varchar] (3) NOT NULL,
+    [YieldWorthTotalSum] [decimal] (16,4) NOT NULL,
+    [YieldWorthTotalCurrency] [varchar] (3) NOT NULL,
+    [Created] [datetime] NOT NULL CONSTRAINT DF_Statistic_Created DEFAULT getdate(),
+    [Modified] [datetime] NULL,
+    CONSTRAINT PK_STA_ID PRIMARY KEY (Id)	
+)
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Primary key of Statistic record' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'Id'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Year number' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'Year'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Month number' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'Month'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Day number' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'Day'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of new created users' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'UserNewCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of logged users (incl B2B)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'UserLoginCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of logged B2B users' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'UserLoginB2BCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of all users (incl system)' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'UserTotalCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of new created workspaces' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'WorkspaceNewCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of all workspaces' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'WorkspaceTotalCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of new created invoices' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'InvoiceNewCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of new created/uploaded documents' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'DocumentNewCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of failed documents' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'DocumentFailedCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of downloaded documents' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'DocumentDownloadedCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of all available documents' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'DocumentTotalCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of processed documents' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'DocumentProcessedCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'# of active ProcessServer instances' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'PSActiveCnt'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'sum of daily yield worth' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'YieldWorthSum'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'currency code of yieldworth' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'YieldWorthCurrency'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'sum of daily yield worth' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'YieldWorthTotalSum'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'currency code of yieldworth' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'YieldWorthTotalCurrency'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing info was created' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'Created'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Timestamp when billing info was modified' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic', @level2type=N'COLUMN',@level2name=N'Modified'
+GO
+
+EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Holds statistics information on daily base' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Statistic'
+GO
+
+
+
+-- References for UserWorkspace --------------------------
+ALTER TABLE [dbo].[UserWorkspace]
+ADD 
+    CONSTRAINT REL_UserWorkspace_User FOREIGN KEY (UserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_UserWorkspace_Workspace FOREIGN KEY (WorkspaceId) REFERENCES [dbo].[Workspace] (Id)
+GO
+
+-- References for Workspace --------------------------
+ALTER TABLE [dbo].[Workspace]
+ADD 
+    CONSTRAINT REL_Workspace_User_Created FOREIGN KEY (CreatedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_Workspace_User_Modified FOREIGN KEY (ModifiedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_Workspace_BillingInfo FOREIGN KEY (BillingInfoId) REFERENCES [dbo].[BillingInfo] (Id)
+GO
+
+-- References for BillingInfo --------------------------
+ALTER TABLE [dbo].[BillingInfo]
+ADD 
+    CONSTRAINT REL_BillingInfo_User_Created FOREIGN KEY (CreatedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_BillingInfo_User_Modified FOREIGN KEY (ModifiedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_BillingInfo_Workspace FOREIGN KEY (WorkspaceId) REFERENCES [dbo].[Workspace] (Id)
+GO
+
+-- References for Structure --------------------------
+ALTER TABLE [dbo].[Structure]
+ADD 
+    CONSTRAINT REL_Structure_Workspace FOREIGN KEY (WorkspaceId) REFERENCES [dbo].[Workspace] (Id), 
+    CONSTRAINT REL_Structure_Structure_Parent FOREIGN KEY (ParentId) REFERENCES [dbo].[Structure] (Id)
+GO
+
+-- References for Metadocument --------------------------
+ALTER TABLE [dbo].[Metadocument]
+ADD 
+    CONSTRAINT REL_Metadocument_Structure FOREIGN KEY (StructureId) REFERENCES [dbo].[Structure] (Id), 
+    CONSTRAINT REL_Metadocument_User_Created FOREIGN KEY (CreatedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_Metadocument_User_Modified FOREIGN KEY (ModifiedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_Metadocument_User_Downloaded FOREIGN KEY (LastDownloadedByUserId) REFERENCES [dbo].[User] (Id)
+GO
+
+-- References for StatusHistory --------------------------
+ALTER TABLE [dbo].[StatusHistory]
+ADD 
+    CONSTRAINT REL_StatusHistory_User_Created FOREIGN KEY (CreatedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_StatusHistory_Metadocument FOREIGN KEY (MetadocumentId) REFERENCES [dbo].[Metadocument] (Id)
+GO
+
+-- References for Artifact --------------------------
+ALTER TABLE [dbo].[Artifact]
+ADD 
+    CONSTRAINT REL_Artifact_Metadocument FOREIGN KEY (MetadocumentId) REFERENCES [dbo].[Metadocument] (Id), 
+    CONSTRAINT REL_Artifact_MimeType FOREIGN KEY (MimeTypeId) REFERENCES [dbo].[MimeType] (Id), 
+    CONSTRAINT REL_Artifact_User_Created FOREIGN KEY (CreatedByUserId) REFERENCES [dbo].[User] (Id)
+GO
+
+-- References for MimeType --------------------------
+ALTER TABLE [dbo].[MimeType]
+ADD 
+    CONSTRAINT REL_MimeType_User_Created FOREIGN KEY (CreatedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_MimeType_User_Modified FOREIGN KEY (ModifiedByUserId) REFERENCES [dbo].[User] (Id)
+GO
+
+-- References for Tag --------------------------
+ALTER TABLE [dbo].[Tag]
+ADD 
+    CONSTRAINT REL_Tag_Workspace FOREIGN KEY (WorkspaceId) REFERENCES [dbo].[Workspace] (Id), 
+    CONSTRAINT REL_Tag_User_Created FOREIGN KEY (CreatedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_Tag_User_Modified FOREIGN KEY (ModifiedByUserId) REFERENCES [dbo].[User] (Id)
+GO
+
+-- References for MetadocumentTag --------------------------
+ALTER TABLE [dbo].[MetadocumentTag]
+ADD 
+    CONSTRAINT REL_MetadocumentTag_Metadocument FOREIGN KEY (MetadocumentId) REFERENCES [dbo].[Metadocument] (Id), 
+    CONSTRAINT REL_MetadocumentTag_Tag FOREIGN KEY (TagId) REFERENCES [dbo].[Tag] (Id)
+GO
+
+-- References for BillingPlan --------------------------
+ALTER TABLE [dbo].[BillingPlan]
+ADD 
+    CONSTRAINT REL_BillingPlan_User_Created FOREIGN KEY (CreatedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_BillingPlan_User_Modified FOREIGN KEY (ModifiedByUserId) REFERENCES [dbo].[User] (Id)
+GO
+
+-- References for MetadocumentBilling --------------------------
+ALTER TABLE [dbo].[MetadocumentBilling]
+ADD 
+    CONSTRAINT REL_MetadocumentBilling_Metadocument FOREIGN KEY (MetadocumentId) REFERENCES [dbo].[Metadocument] (Id), 
+    CONSTRAINT REL_MetadocumentBilling_BillingPlan FOREIGN KEY (BillingPlanId) REFERENCES [dbo].[BillingPlan] (Id)
+GO
+
+-- References for WorkspaceBilling --------------------------
+ALTER TABLE [dbo].[WorkspaceBilling]
+ADD 
+    CONSTRAINT REL_WorkspaceBilling_Workspace FOREIGN KEY (WorkspaceId) REFERENCES [dbo].[Workspace] (Id), 
+    CONSTRAINT REL_WorkspaceBilling_BillingPlan FOREIGN KEY (BillingPlanId) REFERENCES [dbo].[BillingPlan] (Id)
+GO
+
+-- References for Invoice --------------------------
+ALTER TABLE [dbo].[Invoice]
+ADD 
+    CONSTRAINT REL_Invoice_InvoiceIssuer FOREIGN KEY (InvoiceIssuerId) REFERENCES [dbo].[InvoiceIssuer] (Id), 
+    CONSTRAINT REL_Invoice_Workspace FOREIGN KEY (WorkspaceId) REFERENCES [dbo].[Workspace] (Id), 
+    CONSTRAINT REL_Invoice_User_Created FOREIGN KEY (CreatedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_Invoice_User_Modified FOREIGN KEY (ModifiedByUserId) REFERENCES [dbo].[User] (Id)
+GO
+
+-- References for InvoiceItem --------------------------
+ALTER TABLE [dbo].[InvoiceItem]
+ADD 
+    CONSTRAINT REL_InvoiceItem_Invoice FOREIGN KEY (InvoiceId) REFERENCES [dbo].[Invoice] (Id), 
+    CONSTRAINT REL_InvoiceItem_BillingPlan FOREIGN KEY (BillingPlanId) REFERENCES [dbo].[BillingPlan] (Id), 
+    CONSTRAINT REL_InvoiceItem_User_Created FOREIGN KEY (CreatedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_InvoiceItem_User_Modified FOREIGN KEY (ModifiedByUserId) REFERENCES [dbo].[User] (Id)
+GO
+
+-- References for InvoiceIssuer --------------------------
+ALTER TABLE [dbo].[InvoiceIssuer]
+ADD 
+    CONSTRAINT REL_InvoiceIssuer_User_Created FOREIGN KEY (CreatedByUserId) REFERENCES [dbo].[User] (Id), 
+    CONSTRAINT REL_InvoiceIssuer_User_Modified FOREIGN KEY (ModifiedByUserId) REFERENCES [dbo].[User] (Id)
+GO
+
+EXEC sys.sp_updateextendedproperty @name=N'BO_Version', @value=N'1.0.6'
+GO

+ 12 - 0
@Database/bo_initial_data.sql

@@ -0,0 +1,12 @@
+USE [BO]
+GO
+
+-- User
+INSERT INTO [dbo].[User] ([Name],[LangLCID],[IsSystem],[IsEnabled])  VALUES (N'system',1033,1,0)
+
+-- MimeTypes
+INSERT INTO [dbo].[MimeType] ([MIMEType],[Extensions],[Description],[CreatedByUserId],[IsEnabled])  VALUES (N'text/plain', N'txt',N'Plain text file',1,1)
+INSERT INTO [dbo].[MimeType] ([MIMEType],[Extensions],[Description],[CreatedByUserId],[IsEnabled])  VALUES (N'application/octet-stream', N'bin',N'Binary file',1,1)
+
+-- BillingPlan
+INSERT INTO [dbo].[BillingPlan]([Name],[Code],[Description],[CreatedByUserId],[IsEnabled]) VALUES (N'Free', N'FREE', N'Free plan without limitations', 1,1)

+ 6656 - 0
@Documentation/BlueprintOptimizer.simp

@@ -0,0 +1,6656 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<sim-project version="12.79" multi-file="no" uid="simp92e21dbfc7b143e6802a1cc01091815c">
+  <meta>
+    <name>BlueprintOptimizer (BO)</name>
+    <authors>Dalibor Votruba</authors>
+    <description>BlueprintOptimizer project</description>
+  </meta>
+  <counters models="10">
+    <entity-names>
+      <counter>
+        <item-type type-id="erd-entity" type="Entity" />
+        <value>18</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-user" type="User" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-internet" type="Internet" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-server" type="Server" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-database" type="Database" />
+        <value>3</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-layer" type="Layer" />
+        <value>5</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-cluster" type="Cluster" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-cloud" type="Cloud" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="drawing-shape" type="Simple Shape" />
+        <value>3</value>
+      </counter>
+      <counter>
+        <item-type type-id="formatted-text" type="Formatted Text" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="drawing-line" type="Line" />
+        <value>3</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-area" type="Area" />
+        <value>6</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-panel" type="Panel" />
+        <value>15</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-login" type="Login" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-label" type="Label" />
+        <value>13</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-menu" type="Menu" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-tab-control" type="Tab Control" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-button" type="Button" />
+        <value>17</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-text-box" type="Text Box" />
+        <value>12</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-combo-box" type="Combo Box" />
+        <value>3</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-field-list" type="Field List" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-group-box" type="Group Box" />
+        <value>5</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-list-box" type="List Box" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-grid" type="Grid" />
+        <value>10</value>
+      </counter>
+      <counter>
+        <item-type stereotype="Requirement" type-id="class" type="Class" />
+        <value>11</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-slider" type="Slider" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-tabs" type="Tabs" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-check-box" type="Check Box" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="expansion-table" type="Expansion Table" />
+        <value>4</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-accordion-menu" type="Accordion Menu" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-breadcrumbs" type="Breadcrumbs" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-search-box" type="Search Box" />
+        <value>1</value>
+      </counter>
+      <counter>
+        <item-type type-id="class" type="Class" />
+        <value>9</value>
+      </counter>
+      <counter>
+        <item-type type-id="object" type="Object" />
+        <value>10</value>
+      </counter>
+    </entity-names>
+    <entity-ids>
+      <counter>
+        <item-type type-id="group" type="Group" />
+        <value>3923</value>
+      </counter>
+      <counter>
+        <item-type type-id="erd-entity" type="Entity" />
+        <value>19</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-user" type="User" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-internet" type="Internet" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-server" type="Server" />
+        <value>3</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-database" type="Database" />
+        <value>4</value>
+      </counter>
+      <counter>
+        <item-type type-id="universal-connector" type="Universal Connector" />
+        <value>73</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-layer" type="Layer" />
+        <value>6</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-cluster" type="Cluster" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="cnd-cloud" type="Cloud" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="drawing-shape" type="Simple Shape" />
+        <value>19</value>
+      </counter>
+      <counter>
+        <item-type type-id="formatted-text" type="Formatted Text" />
+        <value>21</value>
+      </counter>
+      <counter>
+        <item-type type-id="drawing-line" type="Line" />
+        <value>66</value>
+      </counter>
+      <counter>
+        <item-type type-id="diagram-description" type="Diagram Description" />
+        <value>3</value>
+      </counter>
+      <counter>
+        <item-type type-id="erd-relationship" type="Relationship" />
+        <value>60</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-area" type="Area" />
+        <value>40</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-panel" type="Panel" />
+        <value>65</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-login" type="Login" />
+        <value>3</value>
+      </counter>
+      <counter>
+        <item-type type-id="comment" type="Comment" />
+        <value>31</value>
+      </counter>
+      <counter>
+        <item-type type-id="comment-connector" type="Comment Connector" />
+        <value>31</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-label" type="Label" />
+        <value>15</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-menu" type="Menu" />
+        <value>3</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-tab-control" type="Tab Control" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-button" type="Button" />
+        <value>22</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-text-box" type="Text Box" />
+        <value>23</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-combo-box" type="Combo Box" />
+        <value>4</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-field-list" type="Field List" />
+        <value>22</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-group-box" type="Group Box" />
+        <value>6</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-list-box" type="List Box" />
+        <value>4</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-grid" type="Grid" />
+        <value>14</value>
+      </counter>
+      <counter>
+        <item-type type-id="class" type="Class" />
+        <value>21</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-slider" type="Slider" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-tabs" type="Tabs" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-check-box" type="Check Box" />
+        <value>4</value>
+      </counter>
+      <counter>
+        <item-type type-id="expansion-table" type="Expansion Table" />
+        <value>5</value>
+      </counter>
+      <counter>
+        <item-type type-id="detail-expansion" type="Detail Expansion" />
+        <value>9</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-accordion-menu" type="Accordion Menu" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-breadcrumbs" type="Breadcrumbs" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="ui-search-box" type="Search Box" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="dependency" type="Dependency" />
+        <value>3</value>
+      </counter>
+      <counter>
+        <item-type type-id="abstraction" type="Abstraction" />
+        <value>2</value>
+      </counter>
+      <counter>
+        <item-type type-id="object" type="Object" />
+        <value>11</value>
+      </counter>
+      <counter>
+        <item-type type-id="relationship" type="Association" />
+        <value>41</value>
+      </counter>
+      <counter>
+        <item-type type-id="containment" type="Containment" />
+        <value>6</value>
+      </counter>
+      <counter>
+        <item-type type-id="generalization" type="Generalization" />
+        <value>3</value>
+      </counter>
+      <counter>
+        <item-type type-id="property" type="Property" />
+        <value>12</value>
+      </counter>
+    </entity-ids>
+    <diagrams>
+      <counter>
+        <type>SoftwareIdeasModeler.Core.Diagrams.Other.EntityRelationshipDiagram</type>
+        <value>1</value>
+      </counter>
+      <counter>
+        <type>SoftwareIdeasModeler.Core.Diagrams.UmlDiagrams.UmlDeploymentDiagram</type>
+        <value>1</value>
+      </counter>
+      <counter>
+        <type>SoftwareIdeasModeler.Core.Diagrams.Other.ComputerNetworkDiagram</type>
+        <value>1</value>
+      </counter>
+      <counter>
+        <type>SoftwareIdeasModeler.Core.Diagrams.Wireframing.WebPageDiagram</type>
+        <value>13</value>
+      </counter>
+      <counter>
+        <type>SoftwareIdeasModeler.Core.Diagrams.UmlDiagrams.UmlUseCaseDiagram</type>
+        <value>1</value>
+      </counter>
+      <counter>
+        <type>SoftwareIdeasModeler.Core.Diagrams.SysMLDiagrams.SysMLRequirementDiagram</type>
+        <value>1</value>
+      </counter>
+      <counter>
+        <type>SoftwareIdeasModeler.Core.Diagrams.UmlDiagrams.UmlObjectDiagram</type>
+        <value>2</value>
+      </counter>
+      <counter>
+        <type>SoftwareIdeasModeler.Core.Diagrams.UmlDiagrams.UmlComponentDiagram</type>
+        <value>1</value>
+      </counter>
+    </diagrams>
+    <fields>
+      <counter>
+        <type>SoftwareIdeasModeler.Core.DiagramItems.Erd.ErdEntityAttribute</type>
+        <value>231</value>
+      </counter>
+      <counter>
+        <type>SoftwareIdeasModeler.Core.DiagramItems.Erd.ErdEntityIndex</type>
+        <value>62</value>
+      </counter>
+    </fields>
+  </counters>
+  <alias-groups />
+  <management uid="md-ee712064339442d1a10300bfe1789b20" name="" task-id-sequence="0">
+    <working-schedule uid="ws-c9f52f8ab6734e92bb350f0ab1fbdc26" hours="8" monday="8" tuesday="8" wednesday="8" thursday="8" friday="8" saturday="0" sunday="0" />
+    <persons>
+      <person id="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR">
+        <first-name>Dalibor</first-name>
+        <last-name>Votruba</last-name>
+        <role />
+        <e-mail>dvotruba@quadarax.com</e-mail>
+        <phone-number />
+        <description />
+        <color>#00000000</color>
+        <working-schedule uid="ws-a761dea535d04aaa825b51c350048fc3" hours="8" monday="8" tuesday="8" wednesday="8" thursday="8" friday="8" saturday="0" sunday="0" />
+      </person>
+    </persons>
+    <teams />
+    <sprints />
+    <projects />
+    <modules />
+    <tasks />
+    <to-dos />
+  </management>
+  <glossary id="glsr-0d60e683b0c2411cb697f3276c69a33c" />
+  <types default="UML">
+    <type-sets>
+      <type-set file="MsSqlTypes.xml" />
+    </type-sets>
+    <custom-types />
+  </types>
+  <items>
+    <item id="12b6c55162854a4093e69ffaffe60291" cid="CMT001" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:48:18">
+      <comment>Login or signup block</comment>
+    </item>
+    <item id="die59522eef9694c57a83793043ecb11f84123" cid="CN001" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:48:18" from="12b6c55162854a4093e69ffaffe60291" to="63204861631449398ee2c6a2cc029279" />
+    <item id="47c59fd7eb2a487f80e311ce518282f9" cid="CMT002" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:52:22">
+      <comment>Site menu</comment>
+    </item>
+    <item id="die959cbc5b4d144bdabb3ba9ccbedf0b21642" cid="CN002" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:52:22" from="47c59fd7eb2a487f80e311ce518282f9" to="363d37e24bfe4d33a48512b13e9ab637" />
+    <item id="8ba521988c1b4f75a1ca04bf6c467acb" cid="CMT003" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:07:03">
+      <comment>Footer is always same</comment>
+    </item>
+    <item id="di13a2598a461741b49e18ba80efe755ac9872" cid="CN003" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:07:03" from="8ba521988c1b4f75a1ca04bf6c467acb" to="a6ccc12871a34692a4b8b56d5b748334" />
+    <item id="46d3cf1dc3c64352a6df3137411ede7d" cid="CMT004" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:07:40">
+      <comment>Content is depends on menu selection</comment>
+    </item>
+    <item id="dief83b2ffa9c74edfabdb45fdc81364fa8316" cid="CN004" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:07:40" from="46d3cf1dc3c64352a6df3137411ede7d" to="ab8a712f3dcb429abcb5f042218489c6" />
+    <item id="28eb1899e2f1464681066c7a1af6a7cb" cid="CMT006" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:14:08">
+      <comment>Caption or header will be in smaller (height) form</comment>
+    </item>
+    <item id="dib50f5af8955141b19465b26b60329bb13027" cid="CN006" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:14:08" from="28eb1899e2f1464681066c7a1af6a7cb" to="di0bda61204c8c4b2ea2fa8f61aadc151f9016" />
+    <item id="0a208f15bf574e8abe293c1679aacbb8" cid="CMT007" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:14:51">
+      <comment>User information. If click to logout.</comment>
+    </item>
+    <item id="di4593e81985594e44945fa0b876b3fb4b6565" cid="CN007" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:14:51" from="0a208f15bf574e8abe293c1679aacbb8" to="dicec11b42d95143adb5cad39031c4d9539016" />
+    <item id="372079dffaed444fa2c9506603f08bb5" cid="CMT008" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:15:46">
+      <comment>Contains information about current workspace</comment>
+    </item>
+    <item id="dib0dae82b2efb4b67afc48c680bf7e24f7367" cid="CN008" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:15:46" from="372079dffaed444fa2c9506603f08bb5" to="di822679e75bd14a2197868ed2393f6b9b9016" />
+    <item id="bf07edeceba1459ab7447f62301670b1" cid="CMT012" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:50:09">
+      <comment>Click on this button clear form for new workspace
+</comment>
+    </item>
+    <item id="di8638d0f9b12a4a05a100540109e4f9854671" cid="CN011" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:50:09" from="bf07edeceba1459ab7447f62301670b1" to="7cece9b6ef754c7cb94843618cd40ffb" />
+    <item id="1fc85f58e930402981bb6a8f3528b1fc" cid="CMT013" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:51:04">
+      <comment>API Key is generated number when workspace is created. ReadOnly
+</comment>
+    </item>
+    <item id="di03925af9acb34cc29100670b5f4167fd9644" cid="CN012" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:51:04" from="1fc85f58e930402981bb6a8f3528b1fc" to="fe106815c6b443e68f0dcd8eb2fa12ae" />
+    <item id="20eb51b52c0648a4900ecb6c69fdd6e7" cid="CMT014" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:51:46">
+      <comment>BillingPlan combo is disabled. Enables only if BillingPlan expires.</comment>
+    </item>
+    <item id="diaea9d1f659d145cfb5ff03e01bedb5b63398" cid="CN013" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:51:46" from="20eb51b52c0648a4900ecb6c69fdd6e7" to="2de3d1b0c1de4f7c8843aa22870c1d8f" />
+    <item id="102670bd093d4af38a60fd41042076c0" cid="CMT015" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:52:29">
+      <comment>Show status or stats of current billing plan</comment>
+    </item>
+    <item id="di6a16f4700c8e43fc8c6fc05b77a8634e6024" cid="CN014" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:52:29" from="102670bd093d4af38a60fd41042076c0" to="c630bfd53a2147a9ba1727a8ccc7bfa0" />
+    <item id="8a472e81727344e5810fa3376341bf6b" cid="CMT016" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:53:02">
+      <comment>Save changes</comment>
+    </item>
+    <item id="di8d70f3342dec4a41be3cfd9c6d34e6fa9541" cid="CN015" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:53:02" from="8a472e81727344e5810fa3376341bf6b" to="4f1a4de9efef40329642ae1ddd71c33b" />
+    <item id="913b131ab7ae4d58887a7d0feddf67e5" cid="CMT017" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:55:59">
+      <comment>When click, shows on detail</comment>
+    </item>
+    <item id="di4df84545a5584bceadbacc28dd2597df3882" cid="CN016" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:55:59" from="913b131ab7ae4d58887a7d0feddf67e5" to="b0c27ce9882a4ace94f39e7001a645c2" />
+    <item id="0026f85f920d474f993915c400dcd534" cid="CMT023" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 06:48:08">
+      <comment>This view is common for all tabs</comment>
+    </item>
+    <item id="di461ad0d616354e0d8fe09924da81a6826896" cid="CN023" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 06:48:08" from="0026f85f920d474f993915c400dcd534" to="36afc4ccf33b4db9972ea59358f89023" />
+    <item id="bfe8be74dca04e1e8d2a2e8f564cb263" cid="CMT025" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:27:56">
+      <comment>Reload view</comment>
+    </item>
+    <item id="diccaa8e10276a44c78bc161329d8487492747" cid="CN025" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:27:56" from="bfe8be74dca04e1e8d2a2e8f564cb263" to="b22f332f5b7844c784c36ad7b3f6a567" />
+    <item id="e07c9b83187244e6854242f4f6cc2a18" cid="CMT026" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:29:29">
+      <comment>This button is depends on user role</comment>
+    </item>
+    <item id="didd7e775094e2479a8eccbdebe56714bb7263" cid="CN026" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:29:29" from="e07c9b83187244e6854242f4f6cc2a18" to="5ede6e738add4bbab27d41cc097e7dd9" />
+    <item id="f329c375b119435e8347637cc1bace4f" cid="PROP003" type="property" name="BillingPlanCopy" style-class="" owner="4603ec6ea7b8400d81d3a658cd91d7b2" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:03:05" visibility="public">
+      <style style-name="Custom Style" shadow-type="smooth" shadow-offset="2,2" shadow-visible="true" shadow-color="#3A555555" shadow-radius="8" wrap-name-text="true" wrap-other-text="true" padding="2" margin="1" glow-color="#FFFFFFFF" accuracy="0.9">
+        <text-style type="name" use-defaults="false" color="#FF555555" font="Segoe UI;11.25;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="text" use-defaults="false" color="#FF555555" font="Segoe UI;9.75;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+        <text-style type="tagged-value" use-defaults="false" color="#FF555555" font="Segoe UI;9.75;" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="stereotype" use-defaults="false" color="#FF555555" font="Segoe UI;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <background type="solid" colors="#FFF2F2F2,#FFF2F2F2" />
+        <border color="#FF555555" width="2" dash-style="Solid" />
+        <label-connector color="#80000000" width="1" dash-style="Dash" />
+        <alternate-styles>
+          <alternate-style style-name="Alternate" shadow-type="smooth" shadow-offset="2,2" shadow-visible="true" shadow-color="#322A2A2A" shadow-radius="8" wrap-name-text="true" wrap-other-text="true" padding="2" margin="1" glow-color="#FFFFFFFF" accuracy="0.9">
+            <text-style type="name" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;11.25;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="text" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9.75;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+            <text-style type="tagged-value" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9.75;" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="stereotype" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <background type="solid" colors="#FF203D85,#FF203D85" />
+            <border color="#FF203D85" width="2" dash-style="Solid" />
+            <label-connector color="#80000000" width="1" dash-style="Dash" />
+          </alternate-style>
+        </alternate-styles>
+      </style>
+      <feature />
+      <structural-feature type="" type-id="" />
+      <property />
+    </item>
+    <item id="2950a0ddb8b0416da9ccee2fbe9bf227" cid="PROP005" type="property" name="Presets" style-class="" owner="270ad5efb5d64112afacbeca5ffeca86" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:05:16" visibility="public">
+      <style style-name="Custom Style" shadow-type="smooth" shadow-offset="2,2" shadow-visible="true" shadow-color="#3A555555" shadow-radius="8" wrap-name-text="true" wrap-other-text="true" padding="2" margin="1" glow-color="#FFFFFFFF" accuracy="0.9">
+        <text-style type="name" use-defaults="false" color="#FF555555" font="Segoe UI;11.25;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="text" use-defaults="false" color="#FF555555" font="Segoe UI;9.75;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+        <text-style type="tagged-value" use-defaults="false" color="#FF555555" font="Segoe UI;9.75;" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="stereotype" use-defaults="false" color="#FF555555" font="Segoe UI;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <background type="solid" colors="#FFF2F2F2,#FFF2F2F2" />
+        <border color="#FF555555" width="2" dash-style="Solid" />
+        <label-connector color="#80000000" width="1" dash-style="Dash" />
+        <alternate-styles>
+          <alternate-style style-name="Alternate" shadow-type="smooth" shadow-offset="2,2" shadow-visible="true" shadow-color="#322A2A2A" shadow-radius="8" wrap-name-text="true" wrap-other-text="true" padding="2" margin="1" glow-color="#FFFFFFFF" accuracy="0.9">
+            <text-style type="name" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;11.25;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="text" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9.75;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+            <text-style type="tagged-value" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9.75;" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="stereotype" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <background type="solid" colors="#FF203D85,#FF203D85" />
+            <border color="#FF203D85" width="2" dash-style="Solid" />
+            <label-connector color="#80000000" width="1" dash-style="Dash" />
+          </alternate-style>
+        </alternate-styles>
+      </style>
+      <feature />
+      <structural-feature type="" type-id="" />
+      <property />
+    </item>
+    <item id="2a23d5a19cd848a8b3a41e2d3f2ee886" cid="PROP006" type="property" name="IsTest" style-class="" owner="270ad5efb5d64112afacbeca5ffeca86" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:05:23" visibility="public">
+      <style style-name="Custom Style" shadow-type="smooth" shadow-offset="2,2" shadow-visible="true" shadow-color="#3A555555" shadow-radius="8" wrap-name-text="true" wrap-other-text="true" padding="2" margin="1" glow-color="#FFFFFFFF" accuracy="0.9">
+        <text-style type="name" use-defaults="false" color="#FF555555" font="Segoe UI;11.25;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="text" use-defaults="false" color="#FF555555" font="Segoe UI;9.75;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+        <text-style type="tagged-value" use-defaults="false" color="#FF555555" font="Segoe UI;9.75;" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="stereotype" use-defaults="false" color="#FF555555" font="Segoe UI;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <background type="solid" colors="#FFF2F2F2,#FFF2F2F2" />
+        <border color="#FF555555" width="2" dash-style="Solid" />
+        <label-connector color="#80000000" width="1" dash-style="Dash" />
+        <alternate-styles>
+          <alternate-style style-name="Alternate" shadow-type="smooth" shadow-offset="2,2" shadow-visible="true" shadow-color="#322A2A2A" shadow-radius="8" wrap-name-text="true" wrap-other-text="true" padding="2" margin="1" glow-color="#FFFFFFFF" accuracy="0.9">
+            <text-style type="name" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;11.25;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="text" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9.75;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+            <text-style type="tagged-value" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9.75;" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="stereotype" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <background type="solid" colors="#FF203D85,#FF203D85" />
+            <border color="#FF203D85" width="2" dash-style="Solid" />
+            <label-connector color="#80000000" width="1" dash-style="Dash" />
+          </alternate-style>
+        </alternate-styles>
+      </style>
+      <feature />
+      <structural-feature type="" type-id="" />
+      <property />
+    </item>
+    <item id="5ed1b0ad3800445a852c688e71a6c3de" cid="PROP004" type="property" name="BillingInfoCopy" style-class="" owner="4603ec6ea7b8400d81d3a658cd91d7b2" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:03:59" visibility="public">
+      <style style-name="Custom Style" shadow-type="smooth" shadow-offset="2,2" shadow-visible="true" shadow-color="#3A555555" shadow-radius="8" wrap-name-text="true" wrap-other-text="true" padding="2" margin="1" glow-color="#FFFFFFFF" accuracy="0.9">
+        <text-style type="name" use-defaults="false" color="#FF555555" font="Segoe UI;11.25;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="text" use-defaults="false" color="#FF555555" font="Segoe UI;9.75;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+        <text-style type="tagged-value" use-defaults="false" color="#FF555555" font="Segoe UI;9.75;" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="stereotype" use-defaults="false" color="#FF555555" font="Segoe UI;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <background type="solid" colors="#FFF2F2F2,#FFF2F2F2" />
+        <border color="#FF555555" width="2" dash-style="Solid" />
+        <label-connector color="#80000000" width="1" dash-style="Dash" />
+        <alternate-styles>
+          <alternate-style style-name="Alternate" shadow-type="smooth" shadow-offset="2,2" shadow-visible="true" shadow-color="#322A2A2A" shadow-radius="8" wrap-name-text="true" wrap-other-text="true" padding="2" margin="1" glow-color="#FFFFFFFF" accuracy="0.9">
+            <text-style type="name" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;11.25;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="text" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9.75;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+            <text-style type="tagged-value" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9.75;" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="stereotype" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <background type="solid" colors="#FF203D85,#FF203D85" />
+            <border color="#FF203D85" width="2" dash-style="Solid" />
+            <label-connector color="#80000000" width="1" dash-style="Dash" />
+          </alternate-style>
+        </alternate-styles>
+      </style>
+      <feature />
+      <structural-feature type="" type-id="" />
+      <property />
+    </item>
+    <item id="4ec933cf2fc84617a9a8494196004a90" cid="PROP008" type="property" name="Created" style-class="" owner="d197a10d487f4feca76eaaa52539564d" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:08:53" visibility="public">
+      <style style-name="Custom Style" shadow-type="smooth" shadow-offset="2,2" shadow-visible="true" shadow-color="#3A555555" shadow-radius="8" wrap-name-text="true" wrap-other-text="true" padding="2" margin="1" glow-color="#FFFFFFFF" accuracy="0.9">
+        <text-style type="name" use-defaults="false" color="#FF555555" font="Segoe UI;11.25;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="text" use-defaults="false" color="#FF555555" font="Segoe UI;9.75;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+        <text-style type="tagged-value" use-defaults="false" color="#FF555555" font="Segoe UI;9.75;" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <text-style type="stereotype" use-defaults="false" color="#FF555555" font="Segoe UI;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+        <background type="solid" colors="#FFF2F2F2,#FFF2F2F2" />
+        <border color="#FF555555" width="2" dash-style="Solid" />
+        <label-connector color="#80000000" width="1" dash-style="Dash" />
+        <alternate-styles>
+          <alternate-style style-name="Alternate" shadow-type="smooth" shadow-offset="2,2" shadow-visible="true" shadow-color="#322A2A2A" shadow-radius="8" wrap-name-text="true" wrap-other-text="true" padding="2" margin="1" glow-color="#FFFFFFFF" accuracy="0.9">
+            <text-style type="name" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;11.25;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="text" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9.75;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+            <text-style type="tagged-value" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9.75;" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <text-style type="stereotype" use-defaults="false" color="#FFE9E9E9" font="Segoe UI;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+            <background type="solid" colors="#FF203D85,#FF203D85" />
+            <border color="#FF203D85" width="2" dash-style="Solid" />
+            <label-connector color="#80000000" width="1" dash-style="Dash" />
+          </alternate-style>
+        </alternate-styles>
+      </style>
+      <feature />
+      <structural-feature type="" type-id="" />
+      <property />
+    </item>
+    <item id="778e3a04993a40949b4d0902a423a9cd" cid="CMT029" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:15:01">
+      <comment>Alwais contins output + logs</comment>
+    </item>
+    <item id="difeabfe1a98284539a828ad5a1c9340e04599" cid="CN029" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:15:01" from="778e3a04993a40949b4d0902a423a9cd" to="7bcf0587342a44d88b5682fde3ae1153" />
+    <item id="5b1add093daa4ce586ea80244612469e" cid="CMT030" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:15:50">
+      <comment>IsGold means that workspace has PresetCustomBillingPlan</comment>
+    </item>
+    <item id="di7097db1372c949a8a2c0ed56df76831f6863" cid="CN030" type="comment-connector" name="" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:15:50" from="5b1add093daa4ce586ea80244612469e" to="13a6b5d699e34724b34d2f0e3cf411f6" />
+  </items>
+  <models>
+    <model id="p57fd86bed30d49b2a5908f75c57a5e76_108725137" name="Database" namespace="" order-index="1" expanded="true">
+      <meta>
+        <authors>
+          <author> </author>
+        </authors>
+        <description />
+        <creation-date>07/26/2021 15:41:20</creation-date>
+        <change-date>01/01/0001 00:00:00</change-date>
+        <revision-count>0</revision-count>
+        <version />
+      </meta>
+      <abstract-items />
+      <sub-models>
+        <model id="pda6634ef975b4e34bc77896db8ca3c12_953410162" name="AppServer" namespace="dbo" order-index="2" expanded="true">
+          <meta>
+            <authors>
+              <author>Dalibor Votruba</author>
+            </authors>
+            <description />
+            <creation-date>07/26/2021 15:45:27</creation-date>
+            <change-date>01/01/0001 00:00:00</change-date>
+            <revision-count>0</revision-count>
+            <version />
+          </meta>
+          <documentation>
+            <text>
+              <default>
+                <style font-name="Segoe UI" font-size="11.25">
+                  <text>
+                    <solid-brush color="#FF000000" />
+                  </text>
+                </style>
+              </default>
+              <styles />
+              <content>
+                <paragraph>
+                  <style numbering-type="None">
+                    <numbering name="" multi-level="false">
+                      <numbering-level type="None" level="0" format="{0}." />
+                    </numbering>
+                  </style>
+                  <p>
+                    <t>AppServer </t>
+                  </p>
+                  <p>
+                    <t>stores </t>
+                  </p>
+                  <p>
+                    <t>whole </t>
+                  </p>
+                  <p>
+                    <t>business </t>
+                  </p>
+                  <p>
+                    <t>logic </t>
+                  </p>
+                  <p>
+                    <t>and </t>
+                  </p>
+                  <p>
+                    <t>provide </t>
+                  </p>
+                  <p>
+                    <t>access </t>
+                  </p>
+                  <p>
+                    <t>to </t>
+                  </p>
+                  <p>
+                    <t>Web </t>
+                  </p>
+                  <p>
+                    <t>application </t>
+                  </p>
+                  <p>
+                    <t>pages </t>
+                  </p>
+                  <p>
+                    <t>and </t>
+                  </p>
+                  <p>
+                    <t>B2B </t>
+                  </p>
+                  <p>
+                    <t>API. </t>
+                  </p>
+                  <p>
+                    <t>Provides </t>
+                  </p>
+                  <p>
+                    <t>internal </t>
+                  </p>
+                  <p>
+                    <t>ProcessServer </t>
+                  </p>
+                  <p>
+                    <t>API</t>
+                  </p>
+                  <p>
+                    <t> 
+</t>
+                  </p>
+                </paragraph>
+              </content>
+            </text>
+          </documentation>
+          <abstract-items />
+          <sub-models />
+          <diagram type="entity-relationship" id="pca974f586cd54eb2957d89ec61c4843d_762498462" name="BOServer" order-index="0" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default" default-type-set="MSSQL" view-location="901,469">
+            <style>
+              <background-color index="1" color="#FFFFFFFF" />
+              <background-color index="2" color="#FFFFFFFF" />
+              <background-type type="solid" />
+            </style>
+            <meta>
+              <authors>
+                <author>Dalibor Votruba</author>
+              </authors>
+              <description>AppServer database model</description>
+              <creation-date>07/26/2021 15:41:20</creation-date>
+              <change-date>08/02/2021 08:20:06</change-date>
+              <revision-count>0</revision-count>
+              <version>1.0.7.</version>
+            </meta>
+            <documentation>
+              <text>
+                <default>
+                  <style font-name="Segoe UI" font-size="11.25">
+                    <text>
+                      <solid-brush color="#FF000000" />
+                    </text>
+                  </style>
+                </default>
+                <styles />
+                <content>
+                  <paragraph>
+                    <style numbering-type="None">
+                      <numbering name="" multi-level="false">
+                        <numbering-level type="None" level="0" format="{0}." />
+                      </numbering>
+                    </style>
+                    <p>
+                      <t>Database </t>
+                    </p>
+                    <p>
+                      <t>structure </t>
+                    </p>
+                    <p>
+                      <t>holds </t>
+                    </p>
+                    <p>
+                      <t>combi</t>
+                    </p>
+                    <p>
+                      <t>nation </t>
+                    </p>
+                    <p>
+                      <t>of </t>
+                    </p>
+                    <p>
+                      <t>User, </t>
+                    </p>
+                    <p>
+                      <t>Workspace, </t>
+                    </p>
+                    <p>
+                      <t>Metadocument </t>
+                    </p>
+                    <p>
+                      <t>and </t>
+                    </p>
+                    <p>
+                      <t>BillingPlan</t>
+                    </p>
+                    <p>
+                      <t> 
+</t>
+                    </p>
+                  </paragraph>
+                </content>
+              </text>
+            </documentation>
+            <abstract-items>
+              <item id="ef322c9446f34d3db88bcf4cbdcbbbda" cid="TBL_USER" type="erd-entity" name="User" style-class="Flat Light Red" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:46:45">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Defines </t>
+                        </p>
+                        <p>
+                          <t>User </t>
+                        </p>
+                        <p>
+                          <t>identity </t>
+                        </p>
+                        <p>
+                          <t>with </t>
+                        </p>
+                        <p>
+                          <t>statistics </t>
+                        </p>
+                        <p>
+                          <t>informations. </t>
+                        </p>
+                        <p>
+                          <t>Defines </t>
+                        </p>
+                        <p>
+                          <t>if </t>
+                        </p>
+                        <p>
+                          <t>user </t>
+                        </p>
+                        <p>
+                          <t>is </t>
+                        </p>
+                        <p>
+                          <t>enabled </t>
+                        </p>
+                        <p>
+                          <t>and/or </t>
+                        </p>
+                        <p>
+                          <t>user </t>
+                        </p>
+                        <p>
+                          <t>is </t>
+                        </p>
+                        <p>
+                          <t>system </t>
+                        </p>
+                        <p>
+                          <t>account </t>
+                        </p>
+                        <p>
+                          <t>also.
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="ef322c9446f34d3db88bcf4cbdcbbbda_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Red" />
+                <entity pk-constraint-name="PK_USER_ID" description="User identity with properties" />
+                <attributes>
+                  <attribute uid="a807a3f93ff154a9bbd2f13a3b9971b2c353" cid="ELEM001" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="User primary key" default-value="" auto-increment="true" creation-date="07/26/2021 18:28:25" />
+                  <attribute uid="a8df35a3fedec4a2da81098969d616742952" cid="ELEM227" name="IFReference" type="varchar" type-id="MsSql.varchar" type-size="50" foreign-key="false" primary-key="false" nullable="false" description="Reference to Identity framework IdentityUser.Id" default-value="" auto-increment="false" creation-date="08/09/2021 11:13:37" />
+                  <attribute uid="af2aada1143c0454582eb5ce89cd7e0c5110" cid="ELEM002" name="Name" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Full user name" default-value="" auto-increment="false" creation-date="07/26/2021 18:30:17" />
+                  <attribute uid="ad820f4fba89f4aefa0a201a4c21c24d5686" cid="ELEM003" name="LastLogged" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp of user last successful login" default-value="" auto-increment="false" creation-date="07/26/2021 18:34:21" />
+                  <attribute uid="a9f312cbcaba34308b81953bc5e1739fd997" cid="ELEM004" name="LastDisabled" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp of last user set to be disabled" default-value="" auto-increment="false" creation-date="07/26/2021 18:35:20" />
+                  <attribute uid="a2ca3b65eabeb4b0a95f884824be19722909" cid="ELEM005" name="LastEnabled" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp of last user set to be enabled" default-value="" auto-increment="false" creation-date="07/26/2021 18:36:03" />
+                  <attribute uid="a74202276558347b488dad2a1eb91ae18277" cid="ELEM006" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when user was created" default-value="getdate()" auto-increment="false" creation-date="07/26/2021 18:37:18" />
+                  <attribute uid="aea67f2c3c2754db0a19af1140da6f5de405" cid="ELEM007" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when user was modified" default-value="" auto-increment="false" creation-date="07/26/2021 18:38:00" />
+                  <attribute uid="a90748420ab054594a440a98c1ee497d4141" cid="ELEM008" name="LangLCID" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="LCID of preffered user language" default-value="1033" auto-increment="false" creation-date="07/26/2021 18:39:23" />
+                  <attribute uid="a231e64e539214ac0b987c6d3b07af98d382" cid="ELEM010" name="IsSystem" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Flag if user is system only account. Cannot log in." default-value="0" auto-increment="false" creation-date="07/27/2021 05:19:55" />
+                  <attribute uid="a55c73c68ee184ad5828d5f13ef76adb9389" cid="ELEM009" name="IsEnabled" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Flag if user can sign on" default-value="0" auto-increment="false" creation-date="07/26/2021 18:38:44" />
+                </attributes>
+                <indexes>
+                  <index uid="ix044460b596d542d6b5bc04614407816f115" cid="ELEM060" name="IDX_IFREFERENCE" is-unique="true">
+                    <index-attributes>
+                      <index-attribute ref="a8df35a3fedec4a2da81098969d616742952" sort="Asc" />
+                    </index-attributes>
+                  </index>
+                  <index uid="ix4617440266464ba1b17b13770a37e00f475" cid="ELEM061" name="IDX_USER_NAME" is-unique="true">
+                    <index-attributes>
+                      <index-attribute ref="af2aada1143c0454582eb5ce89cd7e0c5110" sort="Asc" />
+                    </index-attributes>
+                  </index>
+                </indexes>
+              </item>
+              <item id="cf2ea12ad0ab48b1961d886a52ca9617" cid="TBL_USER_WORKSPACE" type="erd-entity" name="UserWorkspace" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 05:24:19">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Association </t>
+                        </p>
+                        <p>
+                          <t>between </t>
+                        </p>
+                        <p>
+                          <t>User </t>
+                        </p>
+                        <p>
+                          <t>and </t>
+                        </p>
+                        <p>
+                          <t>Workspace. </t>
+                        </p>
+                        <p>
+                          <t>Which </t>
+                        </p>
+                        <p>
+                          <t>Workspace </t>
+                        </p>
+                        <p>
+                          <t>is </t>
+                        </p>
+                        <p>
+                          <t>assigned </t>
+                        </p>
+                        <p>
+                          <t>to </t>
+                        </p>
+                        <p>
+                          <t>user.
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="cf2ea12ad0ab48b1961d886a52ca9617_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_USER_WORKSPACE_ID" description="Association between User and Workspace. Which Workspace is assigned to user." />
+                <attributes>
+                  <attribute uid="a7b25f4d46e644460bef81e952da93157988" cid="ELEM011" name="UserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user record" default-value="" auto-increment="false" creation-date="07/27/2021 05:26:07" />
+                  <attribute uid="a3760d4d680f3493381a84c48261911af977" cid="ELEM012" name="WorkspaceId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to workspace record" default-value="" auto-increment="false" creation-date="07/27/2021 05:26:42" />
+                  <attribute uid="a08b6ae4483eb4566841a7f1ba263b49f722" cid="ELEM013" name="IsDefault" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Flag if relation is default" default-value="0" auto-increment="false" creation-date="07/27/2021 05:34:30" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="52988c995dbd4461914ed99b6307b1f8" cid="REL001" type="erd-relationship" name="REL_UserWorkspace_User" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 05:28:53" from="cf2ea12ad0ab48b1961d886a52ca9617" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="52988c995dbd4461914ed99b6307b1f8_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a7b25f4d46e644460bef81e952da93157988" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="24a5c2e6d7df4dd380da583904b6e81c" cid="TBL_WORKSPACE" type="erd-entity" name="Workspace" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 05:33:16">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Main </t>
+                        </p>
+                        <p>
+                          <t>workspace </t>
+                        </p>
+                        <p>
+                          <t>root </t>
+                        </p>
+                        <p>
+                          <t>structure </t>
+                        </p>
+                        <p>
+                          <t>holds </t>
+                        </p>
+                        <p>
+                          <t>information </t>
+                        </p>
+                        <p>
+                          <t>about </t>
+                        </p>
+                        <p>
+                          <t>working </t>
+                        </p>
+                        <p>
+                          <t>space </t>
+                        </p>
+                        <p>
+                          <t>(set </t>
+                        </p>
+                        <p>
+                          <t>of </t>
+                        </p>
+                        <p>
+                          <t>documents) </t>
+                        </p>
+                        <p>
+                          <t>and </t>
+                        </p>
+                        <p>
+                          <t>their </t>
+                        </p>
+                        <p>
+                          <t>business </t>
+                        </p>
+                        <p>
+                          <t>plan
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="24a5c2e6d7df4dd380da583904b6e81c_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_WORKSPACE_ID" description="Main workspace root structure holds information about working space (set of documents) and their business plan" />
+                <attributes>
+                  <attribute uid="a7dde6800c37940389459c8caf8b01322535" cid="ELEM014" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Workspace primary key" default-value="" auto-increment="true" creation-date="07/27/2021 05:37:32" />
+                  <attribute uid="ae5aa34dfd38f4a4eb0e6d7cffa4d0b5c913" cid="ELEM015" name="Name" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Workspace name" default-value="" auto-increment="false" creation-date="07/27/2021 05:38:27" />
+                  <attribute uid="a496263d90bf347b99c6ee14a5044ee26898" cid="ELEM026" name="BillingInfoId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to current billing info record" default-value="" auto-increment="false" creation-date="07/27/2021 06:03:38" />
+                  <attribute uid="af6b373e37760465b901a02daa2115dee68" cid="ELEM092" name="BillingPlanId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to current billing plan record" default-value="" auto-increment="false" creation-date="07/27/2021 08:24:31" />
+                  <attribute uid="a5837b2881cc04111aac3df09439d6e43297" cid="ELEM115" name="APIKey" type="uniqueidentifier" type-id="MsSql.uniqueidentifier" type-size="" foreign-key="false" primary-key="false" nullable="false" description="API Key for access to workspace via B2B interface" default-value="newid()" auto-increment="false" creation-date="07/27/2021 19:44:05">
+                    <documentation>
+                      <text>
+                        <default>
+                          <style font-name="Verdana" font-size="12">
+                            <text>
+                              <solid-brush color="#FF000000" />
+                            </text>
+                          </style>
+                        </default>
+                        <styles />
+                        <definition>
+                          <sections>
+                            <section name="">
+                              <default-page>
+                                <page size="210,297" header-offset="15" footer-offset="15" unit="mm">
+                                  <margins left="20" right="20" top="20" bottom="20" />
+                                </page>
+                              </default-page>
+                            </section>
+                          </sections>
+                        </definition>
+                        <content>
+                          <paragraph>
+                            <style numbering-type="None">
+                              <numbering name="" multi-level="false">
+                                <numbering-level type="None" level="0" format="{0}." />
+                              </numbering>
+                            </style>
+                            <p>
+                              <t>API </t>
+                            </p>
+                            <p>
+                              <t>Key </t>
+                            </p>
+                            <p>
+                              <t>for </t>
+                            </p>
+                            <p>
+                              <t>access </t>
+                            </p>
+                            <p>
+                              <t>to </t>
+                            </p>
+                            <p>
+                              <t>workspace </t>
+                            </p>
+                            <p>
+                              <t>via </t>
+                            </p>
+                            <p>
+                              <t>B2B </t>
+                            </p>
+                            <p>
+                              <t>interface
+</t>
+                            </p>
+                          </paragraph>
+                        </content>
+                      </text>
+                    </documentation>
+                  </attribute>
+                  <attribute uid="a846af96f9f7a4660bff3215a0a2c05d2867" cid="ELEM130" name="APIPassword" type="nvarchar" type-id="MsSql.nvarchar" type-size="50" foreign-key="false" primary-key="false" nullable="false" description="API Key Password for access to workspace via B2B interface" default-value="" auto-increment="false" creation-date="07/30/2021 10:30:47" />
+                  <attribute uid="a6c1ce118efaa4d4c8c5b5397568e1bfd252" cid="ELEM016" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when workspace was created" default-value="getdate()" auto-increment="false" creation-date="07/27/2021 05:39:28" />
+                  <attribute uid="af237a39a584e403b897b4522204fdd7f980" cid="ELEM017" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when workspace was modified" default-value="" auto-increment="false" creation-date="07/27/2021 05:39:44" />
+                  <attribute uid="afbf05134d6804f18a42e118f2be93395452" cid="ELEM018" name="CreatedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user who created workspace" default-value="" auto-increment="false" creation-date="07/27/2021 05:43:46" />
+                  <attribute uid="a2d6410d2a3cc498880eae4fa10d65477142" cid="ELEM019" name="ModifiedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="true" description="Reference to user who updated workspace" default-value="" auto-increment="false" creation-date="07/27/2021 05:44:28" />
+                  <attribute uid="a7dd17cc98f1d427a9112957769f13d78228" cid="ELEM137" name="IsGold" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Define if workspace is GOLD mode (has custom billing plan)" default-value="0" auto-increment="false" creation-date="07/30/2021 10:32:50" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="c42c71b7a8114423ba97db944a9144b8" cid="REL002" type="erd-relationship" name="REL_Workspace_User_Created" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 05:45:27" from="24a5c2e6d7df4dd380da583904b6e81c" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="c42c71b7a8114423ba97db944a9144b8_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="afbf05134d6804f18a42e118f2be93395452" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="88c72fd856bb4d0aaafef6cc85a7369a" cid="REL003" type="erd-relationship" name="REL_Workspace_User_Modified" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 05:46:21" from="24a5c2e6d7df4dd380da583904b6e81c" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="88c72fd856bb4d0aaafef6cc85a7369a_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a2d6410d2a3cc498880eae4fa10d65477142" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="65cd1e707d594ac4b17e91ddd56e0dd8" cid="REL004" type="erd-relationship" name="REL_UserWorkspace_Workspace" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 05:47:09" from="cf2ea12ad0ab48b1961d886a52ca9617" to="24a5c2e6d7df4dd380da583904b6e81c">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="65cd1e707d594ac4b17e91ddd56e0dd8_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a3760d4d680f3493381a84c48261911af977" to-attribute="a7dde6800c37940389459c8caf8b01322535" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="ffff693c63d845f9b0e790d6a21b9e82" cid="TBL_BILLING_INFO" type="erd-entity" name="BillingInfo" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 05:53:23">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Workspace </t>
+                        </p>
+                        <p>
+                          <t>billing </t>
+                        </p>
+                        <p>
+                          <t>information </t>
+                        </p>
+                        <p>
+                          <t>for </t>
+                        </p>
+                        <p>
+                          <t>invoicing
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="ffff693c63d845f9b0e790d6a21b9e82_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_BILLING_INFO_ID" description="Workspace billing information for invoicing" />
+                <attributes>
+                  <attribute uid="a30fbe5330e3e4ee3a90358bf418197bc703" cid="ELEM020" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Primary key of billing information record" default-value="" auto-increment="true" creation-date="07/27/2021 05:55:45" />
+                  <attribute uid="af8c40d1e7095452ba8dfacbf59c966b8323" cid="ELEM021" name="WorkspaceId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to owning workspace" default-value="" auto-increment="false" creation-date="07/27/2021 05:57:31" />
+                  <attribute uid="a1bd1d7594e6f4300a98a5d871fe39bdd409" cid="ELEM105" name="SubjectName" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Billing Subject name" default-value="" auto-increment="false" creation-date="07/27/2021 19:28:07" />
+                  <attribute uid="aecd5f410ddc74c4185548a5acb0057e4716" cid="ELEM106" name="Address1" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Billing Address line 1" default-value="" auto-increment="false" creation-date="07/27/2021 19:34:02" />
+                  <attribute uid="abdfec431fb5542a585cf1305edf2d458716" cid="ELEM107" name="Address2" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="true" description="Billing Address line 2" default-value="" auto-increment="false" creation-date="07/27/2021 19:34:02" />
+                  <attribute uid="a9716ba42dabd4f9ab1f6454d5c74c34a716" cid="ELEM108" name="City" type="nvarchar" type-id="MsSql.nvarchar" type-size="100" foreign-key="false" primary-key="false" nullable="false" description="Billing Address city" default-value="" auto-increment="false" creation-date="07/27/2021 19:34:02" />
+                  <attribute uid="a3821c45d4af940cfafd05509c6c6d8d0716" cid="ELEM109" name="ZIP" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="false" description="Billing Address ZIP" default-value="" auto-increment="false" creation-date="07/27/2021 19:34:02" />
+                  <attribute uid="a2bbdb5d9bfe24cc287136e88815ff6c9716" cid="ELEM110" name="Country" type="nvarchar" type-id="MsSql.nvarchar" type-size="50" foreign-key="false" primary-key="false" nullable="false" description="Billing Address country" default-value="" auto-increment="false" creation-date="07/27/2021 19:34:02" />
+                  <attribute uid="a8d2e218aa22242da91954a73ba0151d2716" cid="ELEM111" name="TaxNumber" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="false" description="Billing Tax number" default-value="" auto-increment="false" creation-date="07/27/2021 19:34:02" />
+                  <attribute uid="a192a3fb15f044dbdb528d8ba299b566e716" cid="ELEM112" name="VATNumber" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="true" description="Billing VAT number" default-value="" auto-increment="false" creation-date="07/27/2021 19:34:02" />
+                  <attribute uid="a46f45db00dbf430bad2da0fe91813d75716" cid="ELEM113" name="Phone" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="true" description="Billing phone with format +XXXXXXXXX" default-value="" auto-increment="false" creation-date="07/27/2021 19:34:02" />
+                  <attribute uid="ab905c31f2b8e4a65a6018cc9223f87ce716" cid="ELEM114" name="Email" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="false" description="Billing email" default-value="" auto-increment="false" creation-date="07/27/2021 19:34:02" />
+                  <attribute uid="a35b9248a0e434596bd3648bacd9170f1768" cid="ELEM022" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when billing info was created" default-value="getdate()" auto-increment="false" creation-date="07/27/2021 05:59:27" />
+                  <attribute uid="aa12ad55ee4cd4198ac9af1328eba6cee768" cid="ELEM023" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when billing info was modified" default-value="" auto-increment="false" creation-date="07/27/2021 05:59:27" />
+                  <attribute uid="a969e5033108d44839b2c6e20934ff723771" cid="ELEM024" name="CreatedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user who created billing info" default-value="" auto-increment="false" creation-date="07/27/2021 05:59:27" />
+                  <attribute uid="aa7fe8303ed02425b806a3557b09e5bcd771" cid="ELEM025" name="ModifiedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="true" description="Reference to user who updated billing info" default-value="" auto-increment="false" creation-date="07/27/2021 05:59:27" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="a0a6de69d8864c6f90ebdc1bea52e94d" cid="REL005" type="erd-relationship" name="REL_BillingInfo_Workspace" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 05:59:43" from="ffff693c63d845f9b0e790d6a21b9e82" to="24a5c2e6d7df4dd380da583904b6e81c">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="a0a6de69d8864c6f90ebdc1bea52e94d_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="af8c40d1e7095452ba8dfacbf59c966b8323" to-attribute="a7dde6800c37940389459c8caf8b01322535" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="fbe54a26bbf94981828cdb3f61873087" cid="REL006" type="erd-relationship" name="REL_BillingInfo_User_Created" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 06:00:38" from="ffff693c63d845f9b0e790d6a21b9e82" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="fbe54a26bbf94981828cdb3f61873087_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a969e5033108d44839b2c6e20934ff723771" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="eb1bf976e7604502a16014cec07f2bf6" cid="REL007" type="erd-relationship" name="REL_BillingInfo_User_Modified" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 06:01:43" from="ffff693c63d845f9b0e790d6a21b9e82" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="eb1bf976e7604502a16014cec07f2bf6_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="aa7fe8303ed02425b806a3557b09e5bcd771" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="656dc0086cd74ae99b835bcbb97ced93" cid="REL008" type="erd-relationship" name="REL_Workspace_BillingInfo" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 06:03:58" from="24a5c2e6d7df4dd380da583904b6e81c" to="ffff693c63d845f9b0e790d6a21b9e82">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="656dc0086cd74ae99b835bcbb97ced93_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a496263d90bf347b99c6ee14a5044ee26898" to-attribute="a30fbe5330e3e4ee3a90358bf418197bc703" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="80e14dbf9d8f4a9f9e52efcb92fe8e97" cid="TBL_STRUCTURE" type="erd-entity" name="Structure" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 06:05:06">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Abstract </t>
+                        </p>
+                        <p>
+                          <t>repository </t>
+                        </p>
+                        <p>
+                          <t>structure </t>
+                        </p>
+                        <p>
+                          <t>(folder-like) </t>
+                        </p>
+                        <p>
+                          <t>where </t>
+                        </p>
+                        <p>
+                          <t>documents </t>
+                        </p>
+                        <p>
+                          <t>are </t>
+                        </p>
+                        <p>
+                          <t>assignig
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="80e14dbf9d8f4a9f9e52efcb92fe8e97_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_STRUCTURE_ID" description="Abstract repository structure (folder-like) where documents are assignig" />
+                <attributes>
+                  <attribute uid="af143d15824124110b676deab330b5bfd973" cid="ELEM027" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Structure primary key" default-value="" auto-increment="true" creation-date="07/27/2021 06:06:34" />
+                  <attribute uid="a40e2c86bdfd547b38d74e04459c33bfb973" cid="ELEM028" name="Name" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Structure name" default-value="" auto-increment="false" creation-date="07/27/2021 06:06:34" />
+                  <attribute uid="ae420ab80ac584385b1426d0202fef72114" cid="ELEM033" name="WorkspaceId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to owning workspace" default-value="" auto-increment="false" creation-date="07/27/2021 07:01:05" />
+                  <attribute uid="ad209340532f94e32b4cf1917e5a20cd6364" cid="ELEM034" name="ParentId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="true" description="Reference to parent structure (folder). If null then record is root" default-value="" auto-increment="false" creation-date="07/27/2021 07:02:06" />
+                  <attribute uid="ae40a948b283e4bd1a384dc4d3d87c6ff463" cid="ELEM029" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when workspace was created" default-value="getdate()" auto-increment="false" creation-date="07/27/2021 06:06:57" />
+                  <attribute uid="a412668a5027c4985a777096e50aa01cf463" cid="ELEM030" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when workspace was modified" default-value="" auto-increment="false" creation-date="07/27/2021 06:06:57" />
+                  <attribute uid="a297dde1429414f4d8f123da148499e8f463" cid="ELEM031" name="CreatedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user who created workspace" default-value="" auto-increment="false" creation-date="07/27/2021 06:06:57" />
+                  <attribute uid="a61e3dd5ab1d04929bb2bb3cdb4138f9d463" cid="ELEM032" name="ModifiedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="true" description="Reference to user who updated workspace" default-value="" auto-increment="false" creation-date="07/27/2021 06:06:57" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="e2e6ca43a64545698cedbf9cceb58a46" cid="REL009" type="erd-relationship" name="REL_Structure_Workspace" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:02:26" from="80e14dbf9d8f4a9f9e52efcb92fe8e97" to="24a5c2e6d7df4dd380da583904b6e81c">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="e2e6ca43a64545698cedbf9cceb58a46_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="ae420ab80ac584385b1426d0202fef72114" to-attribute="a7dde6800c37940389459c8caf8b01322535" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="d89142916c59480eb82462bf6adff7d8" cid="REL010" type="erd-relationship" name="REL_Structure_Structure_Parent" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:03:03" from="80e14dbf9d8f4a9f9e52efcb92fe8e97" to="80e14dbf9d8f4a9f9e52efcb92fe8e97">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="d89142916c59480eb82462bf6adff7d8_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="0..1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="af143d15824124110b676deab330b5bfd973" to-attribute="ad209340532f94e32b4cf1917e5a20cd6364" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="f19722e950a347d9946336728e7a9b9c" cid="TBL_METADOCUMENT" type="erd-entity" name="Metadocument" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:05:30">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Abstract </t>
+                        </p>
+                        <p>
+                          <t>single </t>
+                        </p>
+                        <p>
+                          <t>document </t>
+                        </p>
+                        <p>
+                          <t>header </t>
+                        </p>
+                        <p>
+                          <t>to </t>
+                        </p>
+                        <p>
+                          <t>process. </t>
+                        </p>
+                        <p>
+                          <t>Has </t>
+                        </p>
+                        <p>
+                          <t>setting </t>
+                        </p>
+                        <p>
+                          <t>parameters </t>
+                        </p>
+                        <p>
+                          <t>for </t>
+                        </p>
+                        <p>
+                          <t>computing </t>
+                        </p>
+                        <p>
+                          <t>and </t>
+                        </p>
+                        <p>
+                          <t>status
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="f19722e950a347d9946336728e7a9b9c_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_METADOCUMENT_ID" description="Abstract single document header to process. Has setting parameters for computing and status" />
+                <attributes>
+                  <attribute uid="a7b64ac4b5cba4a7e9b2cb89ee667f597861" cid="ELEM035" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Primary key of metadocument record" default-value="" auto-increment="true" creation-date="07/27/2021 07:12:40" />
+                  <attribute uid="a1f51f395d6344cc4a44d1de584a84ee0454" cid="ELEM043" name="StructureId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to owning structure (workspace)" default-value="" auto-increment="false" creation-date="07/27/2021 07:13:18" />
+                  <attribute uid="a03021f927afd46c188f82453bfa62acf934" cid="ELEM044" name="Name" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Metadocument name" default-value="" auto-increment="false" creation-date="07/27/2021 07:14:12" />
+                  <attribute uid="a5d2e6bc47b834f189d267ec4f6465349709" cid="ELEM045" name="Status" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Metadocument status" default-value="0" auto-increment="false" creation-date="07/27/2021 07:17:39" />
+                  <attribute uid="a8011f93790eb4392a5e8f2a10aa58fcc862" cid="ELEM037" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when metadocument was created (uploaded)" default-value="getdate()" auto-increment="false" creation-date="07/27/2021 07:12:40" />
+                  <attribute uid="a6b7c3eda094743b9a022f88d07b59b71862" cid="ELEM038" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when metadocument was modified" default-value="" auto-increment="false" creation-date="07/27/2021 07:12:40" />
+                  <attribute uid="a7ae57714973c413786f43df6f0d80921862" cid="ELEM039" name="LastDowloaded" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when metadocument was last downloaded" default-value="" auto-increment="false" creation-date="07/27/2021 07:12:40" />
+                  <attribute uid="a2618fb81e27a4e63b381d4bffca2fdfe862" cid="ELEM040" name="CreatedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user who created (uploaded) metadocument" default-value="" auto-increment="false" creation-date="07/27/2021 07:12:40" />
+                  <attribute uid="ae0f42fa3a0a64040b5c052f8aa77802f862" cid="ELEM041" name="ModifiedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="true" description="Reference to user who updated metadocument" default-value="" auto-increment="false" creation-date="07/27/2021 07:12:40" />
+                  <attribute uid="aaf62aac4ebed4babb6d55a02d89a1a05862" cid="ELEM042" name="LastDownloadedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="true" description="Reference to user who last metadocument dowloaded" default-value="" auto-increment="false" creation-date="07/27/2021 07:12:40" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="508e601ed32f4ca29e4b5289575ba795" cid="TBL_STATUS_HISTORY" type="erd-entity" name="StatusHistory" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:18:10">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Stores </t>
+                        </p>
+                        <p>
+                          <t>metadocument </t>
+                        </p>
+                        <p>
+                          <t>status </t>
+                        </p>
+                        <p>
+                          <t>changing </t>
+                        </p>
+                        <p>
+                          <t>log </t>
+                        </p>
+                        <p>
+                          <t>with </t>
+                        </p>
+                        <p>
+                          <t>messages
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="508e601ed32f4ca29e4b5289575ba795_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_STATUS_HISTORY_ID" description="Stores metadocument status changing log with messages" />
+                <attributes>
+                  <attribute uid="adbbd05e78a6c410a820be98c737420da373" cid="ELEM046" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Primary key of metadocument status history record" default-value="" auto-increment="true" creation-date="07/27/2021 07:21:05" />
+                  <attribute uid="af15e8a4f21fb4834b6479b09c3cfd211374" cid="ELEM047" name="MetadocumentId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to owning metadocument" default-value="" auto-increment="false" creation-date="07/27/2021 07:21:05" />
+                  <attribute uid="a296c03c7607c4ceaaf64aa27153f42b4374" cid="ELEM048" name="Status" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Metadocument status" default-value="0" auto-increment="false" creation-date="07/27/2021 07:21:05" />
+                  <attribute uid="a61798126a4504fa0b51fd95cb1f701c0489" cid="ELEM051" name="Message" type="nvarchar" type-id="MsSql.nvarchar" type-size="4000" foreign-key="false" primary-key="false" nullable="true" description="Status change message or error message. This value is optional." default-value="" auto-increment="false" creation-date="07/27/2021 07:25:25" />
+                  <attribute uid="aa7c1c6586f7c4477b87aefc2692d7235374" cid="ELEM049" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when metadocument was created (uploaded)" default-value="getdate()" auto-increment="false" creation-date="07/27/2021 07:21:05" />
+                  <attribute uid="a3f10c23945c6454f8ea4cd5572de2077374" cid="ELEM050" name="CreatedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user who created (uploaded) metadocument" default-value="" auto-increment="false" creation-date="07/27/2021 07:21:05" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="66aaf293e08545e697730b154b412ac2" cid="TBL_ARTIFACT" type="erd-entity" name="Artifact" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:26:13">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Stores </t>
+                        </p>
+                        <p>
+                          <t>single </t>
+                        </p>
+                        <p>
+                          <t>part </t>
+                        </p>
+                        <p>
+                          <t>of </t>
+                        </p>
+                        <p>
+                          <t>metadocument </t>
+                        </p>
+                        <p>
+                          <t>(called </t>
+                        </p>
+                        <p>
+                          <t>artifact). </t>
+                        </p>
+                        <p>
+                          <t>Refresents </t>
+                        </p>
+                        <p>
+                          <t>fingle </t>
+                        </p>
+                        <p>
+                          <t>physical </t>
+                        </p>
+                        <p>
+                          <t>file </t>
+                        </p>
+                        <p>
+                          <t>included </t>
+                        </p>
+                        <p>
+                          <t>for </t>
+                        </p>
+                        <p>
+                          <t>processing.
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="66aaf293e08545e697730b154b412ac2_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_ARTIFACT_ID" description="Stores single part of metadocument (called artifact). Refresents fingle physical file included for processing." />
+                <attributes>
+                  <attribute uid="a90e3b7c9cb3b4444956052427eefa411595" cid="ELEM052" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Primary key of artifact record" default-value="" auto-increment="true" creation-date="07/27/2021 07:33:15" />
+                  <attribute uid="afbf1bfe4382a419a97afc0b6365ccc3f595" cid="ELEM053" name="MetadocumentId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to owning metadocument" default-value="" auto-increment="false" creation-date="07/27/2021 07:33:15" />
+                  <attribute uid="ab91ab5acc42347099e3f268da4c7bd6d595" cid="ELEM054" name="Name" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Artifact file name without extension" default-value="" auto-increment="false" creation-date="07/27/2021 07:33:15" />
+                  <attribute uid="a8e19f22d0ae241d98a947115c79449c6595" cid="ELEM055" name="Extension" type="nvarchar" type-id="MsSql.nvarchar" type-size="10" foreign-key="false" primary-key="false" nullable="true" description="Artifact file  extension" default-value="" auto-increment="false" creation-date="07/27/2021 07:33:15" />
+                  <attribute uid="a0df7e12153fc41f9b9f268692348fd89595" cid="ELEM056" name="MimeTypeId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to MIME Type enumeration" default-value="" auto-increment="false" creation-date="07/27/2021 07:33:15" />
+                  <attribute uid="a2f17ba92ee204144be78a3781f48f5ed958" cid="ELEM071" name="Type" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Defines type of artifact. 0 - Input, 1 - Output" default-value="0" auto-increment="false" creation-date="07/27/2021 07:43:27" />
+                  <attribute uid="a6545a5c448b1416c973a84c2c61a2e8d257" cid="ELEM226" name="Length" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Defines file content length in bytes" default-value="0" auto-increment="false" creation-date="08/02/2021 13:47:48" />
+                  <attribute uid="ad5e730d7551c457ba37f4bf9a8d33427595" cid="ELEM057" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when artifact was created (uploaded)" default-value="getdate()" auto-increment="false" creation-date="07/27/2021 07:33:15" />
+                  <attribute uid="a6713b9cac63c4b1797fea4349fd90f64595" cid="ELEM058" name="CreatedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user who created (uploaded) artifact" default-value="" auto-increment="false" creation-date="07/27/2021 07:33:15" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="b67864ae142447b087be3d82e8f18e70" cid="TBL_MIMETYPE" type="erd-entity" name="MimeType" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:33:33">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>MIME </t>
+                        </p>
+                        <p>
+                          <t>Types </t>
+                        </p>
+                        <p>
+                          <t>global </t>
+                        </p>
+                        <p>
+                          <t>enumeration. </t>
+                        </p>
+                        <p>
+                          <t>Defines </t>
+                        </p>
+                        <p>
+                          <t>file </t>
+                        </p>
+                        <p>
+                          <t>extension </t>
+                        </p>
+                        <p>
+                          <t>and </t>
+                        </p>
+                        <p>
+                          <t>MIME </t>
+                        </p>
+                        <p>
+                          <t>type </t>
+                        </p>
+                        <p>
+                          <t>association, </t>
+                        </p>
+                        <p>
+                          <t>This </t>
+                        </p>
+                        <p>
+                          <t>table </t>
+                        </p>
+                        <p>
+                          <t>is </t>
+                        </p>
+                        <p>
+                          <t>managed </t>
+                        </p>
+                        <p>
+                          <t>only </t>
+                        </p>
+                        <p>
+                          <t>with </t>
+                        </p>
+                        <p>
+                          <t>administrator.
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="b67864ae142447b087be3d82e8f18e70_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Yellow" />
+                <entity pk-constraint-name="PK_MIMETYPE_ID" description="MIME Types global enumeration. Defines file extension and MIME type association, This table is managed only with administrator." />
+                <attributes>
+                  <attribute uid="a1e031483005544c58999300837dd9ed5825" cid="ELEM059" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Primary key of MIMEType record" default-value="" auto-increment="true" creation-date="07/27/2021 07:37:51" />
+                  <attribute uid="aad32dc23f7d9469c836b3a94d60f6c8b740" cid="ELEM066" name="MIMEType" type="nvarchar" type-id="MsSql.nvarchar" type-size="500" foreign-key="false" primary-key="false" nullable="false" description="MIMEType code" default-value="" auto-increment="false" creation-date="07/27/2021 07:41:40" />
+                  <attribute uid="aa80f2df3dc5a4d7db9cb9475fb61610c740" cid="ELEM067" name="Extensions" type="nvarchar" type-id="MsSql.nvarchar" type-size="500" foreign-key="false" primary-key="false" nullable="false" description="Extensions for mime type separated by semicolomn (example cad; cat; txt)" default-value="" auto-increment="false" creation-date="07/27/2021 07:41:40" />
+                  <attribute uid="af3dcb1ffaec445178711ab1b85fedec2740" cid="ELEM068" name="Description" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Short description of MIMEType" default-value="" auto-increment="false" creation-date="07/27/2021 07:41:40" />
+                  <attribute uid="a08990f9537164e5a8b35509cf654ab7e825" cid="ELEM064" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when metadocument was created (uploaded)" default-value="getdate()" auto-increment="false" creation-date="07/27/2021 07:37:51" />
+                  <attribute uid="a39449b47348c4a44a0d02bdb0db2d545740" cid="ELEM069" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when metadocument was modified" default-value="" auto-increment="false" creation-date="07/27/2021 07:41:40" />
+                  <attribute uid="acb7fdb81aa7d4cbd8201246a008003dd825" cid="ELEM065" name="CreatedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user who created (uploaded) metadocument" default-value="" auto-increment="false" creation-date="07/27/2021 07:37:51" />
+                  <attribute uid="a2da35409cd704d75b9a8472accca9a93740" cid="ELEM070" name="ModifiedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="true" description="Reference to user who updated metadocument" default-value="" auto-increment="false" creation-date="07/27/2021 07:41:40" />
+                  <attribute uid="acf4484ca617842cba2131777eacc1117394" cid="ELEM090" name="IsEnabled" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Flag if record is active, otherwise shuld be delete" default-value="0" auto-increment="false" creation-date="07/27/2021 08:21:17" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="d136e0ee86b243bbabd24753bb9000b0" cid="REL011" type="erd-relationship" name="REL_MimeType_User_Created" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:53:36" from="b67864ae142447b087be3d82e8f18e70" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="d136e0ee86b243bbabd24753bb9000b0_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="acb7fdb81aa7d4cbd8201246a008003dd825" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="e0acb2e495b1499cb7a30d9f33c090f8" cid="REL012" type="erd-relationship" name="REL_MimeType_User_Modified" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:54:03" from="b67864ae142447b087be3d82e8f18e70" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="e0acb2e495b1499cb7a30d9f33c090f8_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="0..1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a2da35409cd704d75b9a8472accca9a93740" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="c0ce9ad877694d26bc57b50f21db5a58" cid="REL013" type="erd-relationship" name="REL_Metadocument_Structure" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:56:09" from="f19722e950a347d9946336728e7a9b9c" to="80e14dbf9d8f4a9f9e52efcb92fe8e97">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="c0ce9ad877694d26bc57b50f21db5a58_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a1f51f395d6344cc4a44d1de584a84ee0454" to-attribute="af143d15824124110b676deab330b5bfd973" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="51a32d625c574fdcb3a4d01803f57cea" cid="REL014" type="erd-relationship" name="REL_Metadocument_User_Created" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:57:05" from="f19722e950a347d9946336728e7a9b9c" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="51a32d625c574fdcb3a4d01803f57cea_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a2618fb81e27a4e63b381d4bffca2fdfe862" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="3201398364364830a132932fd99e7394" cid="REL016" type="erd-relationship" name="REL_Metadocument_User_Modified" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:57:46" from="f19722e950a347d9946336728e7a9b9c" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="3201398364364830a132932fd99e7394_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="0..1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="ae0f42fa3a0a64040b5c052f8aa77802f862" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="84566c0ddc1c4285b8a7b7c00283733d" cid="REL017" type="erd-relationship" name="REL_Metadocument_User_Downloaded" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:58:16" from="f19722e950a347d9946336728e7a9b9c" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="84566c0ddc1c4285b8a7b7c00283733d_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="0..1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="aaf62aac4ebed4babb6d55a02d89a1a05862" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="2d73b15dbbd448018ff60fcde9ea98a9" cid="REL018" type="erd-relationship" name="REL_Artifact_Metadocument" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:00:15" from="66aaf293e08545e697730b154b412ac2" to="f19722e950a347d9946336728e7a9b9c">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="2d73b15dbbd448018ff60fcde9ea98a9_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="afbf1bfe4382a419a97afc0b6365ccc3f595" to-attribute="a7b64ac4b5cba4a7e9b2cb89ee667f597861" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="199d967437494e89ac1e51d9864ca901" cid="REL019" type="erd-relationship" name="REL_Artifact_MimeType" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:00:47" from="66aaf293e08545e697730b154b412ac2" to="b67864ae142447b087be3d82e8f18e70">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="199d967437494e89ac1e51d9864ca901_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a0df7e12153fc41f9b9f268692348fd89595" to-attribute="a1e031483005544c58999300837dd9ed5825" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="c6de4fa0f7524f62a8a4e22204b2177a" cid="REL020" type="erd-relationship" name="REL_Artifact_User_Created" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:01:34" from="66aaf293e08545e697730b154b412ac2" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="c6de4fa0f7524f62a8a4e22204b2177a_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a6713b9cac63c4b1797fea4349fd90f64595" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="032c7b170b9c4f22bb29e7c66d131845" cid="REL021" type="erd-relationship" name="REL_StatusHistory_User_Created" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:02:17" from="508e601ed32f4ca29e4b5289575ba795" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="032c7b170b9c4f22bb29e7c66d131845_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a3f10c23945c6454f8ea4cd5572de2077374" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="7838665b6ec7474ea14f53946f2181ff" cid="REL022" type="erd-relationship" name="REL_StatusHistory_Metadocument" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:02:58" from="508e601ed32f4ca29e4b5289575ba795" to="f19722e950a347d9946336728e7a9b9c">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="7838665b6ec7474ea14f53946f2181ff_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="af15e8a4f21fb4834b6479b09c3cfd211374" to-attribute="a7b64ac4b5cba4a7e9b2cb89ee667f597861" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="e625c48cb2dc457ca67b3439a13f2859" cid="TBL_TAG" type="erd-entity" name="Tag" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:03:55">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Declares </t>
+                        </p>
+                        <p>
+                          <t>tag </t>
+                        </p>
+                        <p>
+                          <t>for </t>
+                        </p>
+                        <p>
+                          <t>workspace </t>
+                        </p>
+                        <p>
+                          <t>scope. </t>
+                        </p>
+                        <p>
+                          <t>Tag </t>
+                        </p>
+                        <p>
+                          <t>is </t>
+                        </p>
+                        <p>
+                          <t>used </t>
+                        </p>
+                        <p>
+                          <t>on </t>
+                        </p>
+                        <p>
+                          <t>metadocument.
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="e625c48cb2dc457ca67b3439a13f2859_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_TAG_ID" description="Declares tag for workspace scope. Tag is used on metadocument." />
+                <attributes>
+                  <attribute uid="a4ded5b1e1e7a49daa7d843e6dba2ce46106" cid="ELEM072" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Primary key of tag record" default-value="" auto-increment="true" creation-date="07/27/2021 08:06:05" />
+                  <attribute uid="aa3b587d5fb034328a4991dcbc7daf00b106" cid="ELEM073" name="WorkspaceId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to owning workspace" default-value="" auto-increment="false" creation-date="07/27/2021 08:06:05" />
+                  <attribute uid="a9081c241ebde465885a46a4e1d070075585" cid="ELEM078" name="Name" type="nvarchar" type-id="MsSql.nvarchar" type-size="50" foreign-key="false" primary-key="false" nullable="false" description="Tag name" default-value="" auto-increment="false" creation-date="07/27/2021 08:07:13" />
+                  <attribute uid="ad813698acd794796a4ae260ef37db500585" cid="ELEM079" name="RGB" type="varchar" type-id="MsSql.varchar" type-size="50" foreign-key="false" primary-key="false" nullable="false" description="Tag color in RGB format" default-value="" auto-increment="false" creation-date="07/27/2021 08:07:13" />
+                  <attribute uid="ab47e274ca68b42cb91ba1929b44f451b106" cid="ELEM074" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when billing info was created" default-value="getdate()" auto-increment="false" creation-date="07/27/2021 08:06:05" />
+                  <attribute uid="aaab840bf249245e38d3d3e3fccc2f009106" cid="ELEM075" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when billing info was modified" default-value="" auto-increment="false" creation-date="07/27/2021 08:06:05" />
+                  <attribute uid="a035a95b39fdf4b9d96110cf3895f6076106" cid="ELEM076" name="CreatedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user who created billing info" default-value="" auto-increment="false" creation-date="07/27/2021 08:06:05" />
+                  <attribute uid="a9db7711b42354ce1814b2febf64e1c7f106" cid="ELEM077" name="ModifiedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="true" description="Reference to user who updated billing info" default-value="" auto-increment="false" creation-date="07/27/2021 08:06:05" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="f777fa33a2e642e5a85752fda0dbc5af" cid="REL024" type="erd-relationship" name="REL_Tag_Workspace" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:07:55" from="e625c48cb2dc457ca67b3439a13f2859" to="24a5c2e6d7df4dd380da583904b6e81c">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="f777fa33a2e642e5a85752fda0dbc5af_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="aa3b587d5fb034328a4991dcbc7daf00b106" to-attribute="a7dde6800c37940389459c8caf8b01322535" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="41c493b34a4740ed82e16919f89fbba3" cid="TBL_METADOCUMENT_TAG" type="erd-entity" name="MetadocumentTag" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:08:34">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Association </t>
+                        </p>
+                        <p>
+                          <t>of </t>
+                        </p>
+                        <p>
+                          <t>metadocument </t>
+                        </p>
+                        <p>
+                          <t>and </t>
+                        </p>
+                        <p>
+                          <t>tag
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="41c493b34a4740ed82e16919f89fbba3_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_METADOCUMENT_TAG_ID" description="Association of metadocument and tag" />
+                <attributes>
+                  <attribute uid="a9f40b3045d534715bc75f93b5de3cd74905" cid="ELEM080" name="MetadocumentId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to owning metadocument" default-value="" auto-increment="false" creation-date="07/27/2021 08:09:24" />
+                  <attribute uid="aa7d5cd971646424ab02fb990e6823b3b905" cid="ELEM081" name="TagId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to Tag" default-value="" auto-increment="false" creation-date="07/27/2021 08:09:24" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="c3f22d02ade24ffd981ca1a609f73825" cid="REL025" type="erd-relationship" name="REL_MetadocumentTag_Metadocument" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:10:25" from="41c493b34a4740ed82e16919f89fbba3" to="f19722e950a347d9946336728e7a9b9c">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="c3f22d02ade24ffd981ca1a609f73825_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a9f40b3045d534715bc75f93b5de3cd74905" to-attribute="a7b64ac4b5cba4a7e9b2cb89ee667f597861" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="6034e62ca4ba43d69abeadeee64def53" cid="REL026" type="erd-relationship" name="REL_MetadocumentTag_Tag" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:11:10" from="41c493b34a4740ed82e16919f89fbba3" to="e625c48cb2dc457ca67b3439a13f2859">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="6034e62ca4ba43d69abeadeee64def53_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="aa7d5cd971646424ab02fb990e6823b3b905" to-attribute="a4ded5b1e1e7a49daa7d843e6dba2ce46106" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="172a3651648c44b8b661ba763f4664b8" cid="REL027" type="erd-relationship" name="REL_Tag_User_Created" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:11:58" from="e625c48cb2dc457ca67b3439a13f2859" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="172a3651648c44b8b661ba763f4664b8_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a035a95b39fdf4b9d96110cf3895f6076106" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="39833c754fd241e99f91c02bbd9619f6" cid="REL028" type="erd-relationship" name="REL_Tag_User_Modified" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:12:23" from="e625c48cb2dc457ca67b3439a13f2859" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="39833c754fd241e99f91c02bbd9619f6_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="0..1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a9db7711b42354ce1814b2febf64e1c7f106" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="f37cd509043e4341b287f015399edb95" cid="TBL_BILLINGPLAN" type="erd-entity" name="BillingPlan" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:15:58">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Defines </t>
+                        </p>
+                        <p>
+                          <t>global </t>
+                        </p>
+                        <p>
+                          <t>Billing </t>
+                        </p>
+                        <p>
+                          <t>plan </t>
+                        </p>
+                        <p>
+                          <t>strategies </t>
+                        </p>
+                        <p>
+                          <t>(how </t>
+                        </p>
+                        <p>
+                          <t>to </t>
+                        </p>
+                        <p>
+                          <t>bill </t>
+                        </p>
+                        <p>
+                          <t>document </t>
+                        </p>
+                        <p>
+                          <t>processing </t>
+                        </p>
+                        <p>
+                          <t>in </t>
+                        </p>
+                        <p>
+                          <t>workspace). </t>
+                        </p>
+                        <p>
+                          <t>This </t>
+                        </p>
+                        <p>
+                          <t>table </t>
+                        </p>
+                        <p>
+                          <t>is </t>
+                        </p>
+                        <p>
+                          <t>managed </t>
+                        </p>
+                        <p>
+                          <t>only </t>
+                        </p>
+                        <p>
+                          <t>with </t>
+                        </p>
+                        <p>
+                          <t>administrator.
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="f37cd509043e4341b287f015399edb95_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Yellow" />
+                <entity pk-constraint-name="PK_BILLINGPLAN_ID" description="Defines global Billing plan strategies (how to bill document processing in workspace). This table is managed only with administrator." />
+                <attributes>
+                  <attribute uid="acd3b80d7b7ca448b98699942d2ca060a959" cid="ELEM082" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Primary key of BillingPlan record" default-value="" auto-increment="true" creation-date="07/27/2021 08:19:45" />
+                  <attribute uid="a9fdce7e8c2684df081f839a67e93ffbc959" cid="ELEM083" name="Name" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Billing plan name" default-value="" auto-increment="false" creation-date="07/27/2021 08:19:45" />
+                  <attribute uid="abdf41ea6e7a943638069a55913e71fc1959" cid="ELEM084" name="Code" type="nvarchar" type-id="MsSql.nvarchar" type-size="10" foreign-key="false" primary-key="false" nullable="false" description="Billing plan short code" default-value="" auto-increment="false" creation-date="07/27/2021 08:19:45" />
+                  <attribute uid="a481bc5b68a664aeeb58584f2320a5417959" cid="ELEM085" name="Description" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Billing plan short description" default-value="" auto-increment="false" creation-date="07/27/2021 08:19:45" />
+                  <attribute uid="a6325d0141cf74be18b20c2bda24c6f89960" cid="ELEM123" name="PSTInitialCredits" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Preset - initial credit amount" default-value="" auto-increment="false" creation-date="07/30/2021 10:24:49" />
+                  <attribute uid="aee312c9fced745c395ca2b5856bc4810961" cid="ELEM124" name="PSTCreditsPerItem" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Preset - single item credit cost" default-value="" auto-increment="false" creation-date="07/30/2021 10:24:49" />
+                  <attribute uid="a8040cf5905a341f2ab5d3d3bbfdaf47e118" cid="ELEM117" name="PSTWatermark" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Preset - watermarked" default-value="0" auto-increment="false" creation-date="07/30/2021 10:22:49" />
+                  <attribute uid="a92e1f2f1a3a746eda07a61be2395a832119" cid="ELEM118" name="PSTQuality" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Preset - process quality 0 = lowest" default-value="0" auto-increment="false" creation-date="07/30/2021 10:22:49" />
+                  <attribute uid="add8ea6f6c4344331aad00c8bbf49dce4119" cid="ELEM119" name="PSTProcessProfile" type="varchar" type-id="MsSql.varchar" type-size="5" foreign-key="false" primary-key="false" nullable="true" description="Preset - processing profile code" default-value="" auto-increment="false" creation-date="07/30/2021 10:22:49" />
+                  <attribute uid="a568f8224197d4175bc11483df5409592119" cid="ELEM120" name="PSTTest" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Preset - testing mode" default-value="0" auto-increment="false" creation-date="07/30/2021 10:22:49" />
+                  <attribute uid="a28198b23d16846249accc5020a242de2556" cid="ELEM161" name="Price" type="decimal" type-id="MsSql.decimal" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Billing plan price" default-value="0" auto-increment="false" creation-date="07/30/2021 18:56:37" />
+                  <attribute uid="ac19119088e82487e810226508dc13ff7556" cid="ELEM162" name="Currency" type="varchar" type-id="MsSql.varchar" type-size="3" foreign-key="false" primary-key="false" nullable="false" description="Billing plan price currency" default-value="" auto-increment="false" creation-date="07/30/2021 18:56:37" />
+                  <attribute uid="aa94c88a245e246689f0f1f0059bee5e6959" cid="ELEM086" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when metadocument was created (uploaded)" default-value="getdate()" auto-increment="false" creation-date="07/27/2021 08:19:45" />
+                  <attribute uid="a0c8dad7b8a7a41baa6288b81009a48db959" cid="ELEM087" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when metadocument was modified" default-value="" auto-increment="false" creation-date="07/27/2021 08:19:45" />
+                  <attribute uid="a65c1c1d127734c39935e405aae8193ac959" cid="ELEM088" name="CreatedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user who created (uploaded) metadocument" default-value="" auto-increment="false" creation-date="07/27/2021 08:19:45" />
+                  <attribute uid="af234efad39804df2888a5629fdc290d9959" cid="ELEM089" name="ModifiedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="true" description="Reference to user who updated metadocument" default-value="" auto-increment="false" creation-date="07/27/2021 08:19:45" />
+                  <attribute uid="a66b2368c93d14ec38971e72e86e61c1e130" cid="ELEM121" name="IsCustom" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Flag if billing plan is custom dependent" default-value="0" auto-increment="false" creation-date="07/30/2021 10:22:49" />
+                  <attribute uid="a96d75ab07bcf484483c57acc34a4ad6e130" cid="ELEM122" name="IsHidden" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Flag if billing plan is private for use, only SuperAdmin can use it" default-value="0" auto-increment="false" creation-date="07/30/2021 10:22:49" />
+                  <attribute uid="a53b37958aef1402fa79a4a2068be8685347" cid="ELEM091" name="IsEnabled" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Flag if record is active, otherwise shuld be delete" default-value="0" auto-increment="false" creation-date="07/27/2021 08:21:38" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="99ecd9947c8e41048d60312c34fac142" cid="REL029" type="erd-relationship" name="REL_BillingPlan_User_Created" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:22:11" from="f37cd509043e4341b287f015399edb95" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="99ecd9947c8e41048d60312c34fac142_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a65c1c1d127734c39935e405aae8193ac959" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="22d72ed3bd4e468da95c6ef166ad6830" cid="REL030" type="erd-relationship" name="REL_BillingPlan_User_Modified" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:22:44" from="f37cd509043e4341b287f015399edb95" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="22d72ed3bd4e468da95c6ef166ad6830_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="0..1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="af234efad39804df2888a5629fdc290d9959" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="e80985e7fce14193b34889876668ff81" cid="TBL_WORKSPACE_BILLING" type="erd-entity" name="WorkspaceBilling" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:32:24">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Deffines </t>
+                        </p>
+                        <p>
+                          <t>current </t>
+                        </p>
+                        <p>
+                          <t>state </t>
+                        </p>
+                        <p>
+                          <t>of </t>
+                        </p>
+                        <p>
+                          <t>billing </t>
+                        </p>
+                        <p>
+                          <t>plan </t>
+                        </p>
+                        <p>
+                          <t>for </t>
+                        </p>
+                        <p>
+                          <t>workspace
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="e80985e7fce14193b34889876668ff81_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_WORKSPACE_BILLINGPLAN_ID" description="Deffines current state of billing plan for workspace" />
+                <attributes>
+                  <attribute uid="a909885cbfed747b798799b779e7fcfab446" cid="ELEM097" name="WorkspaceId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to owning workspace" default-value="" auto-increment="false" creation-date="07/27/2021 08:35:14" />
+                  <attribute uid="a99ec607b847d4f78beae62fd8ac95f4d636" cid="ELEM096" name="BillingPlanId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to billing plan" default-value="" auto-increment="false" creation-date="07/27/2021 08:34:05" />
+                  <attribute uid="a83e725096a954d0ca3b709613d71a68c446" cid="ELEM098" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when billing was created" default-value="getdate()" auto-increment="false" creation-date="07/27/2021 08:35:14" />
+                  <attribute uid="a6cd2365648bf4e6997da8c009de994a0446" cid="ELEM099" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when billing was modified" default-value="" auto-increment="false" creation-date="07/27/2021 08:35:14" />
+                  <attribute uid="a38b822e4efec48cea97da2bf810ef91b136" cid="ELEM102" name="ValueNumber" type="decimal" type-id="MsSql.decimal" type-size="16,4" foreign-key="false" primary-key="false" nullable="false" description="Numeric value of billing plan spending. Depends on BillingPlan." default-value="0" auto-increment="false" creation-date="07/27/2021 08:41:44" />
+                  <attribute uid="af249241f15654d9faf019cab77b01848716" cid="ELEM103" name="ValueDate" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="DateTime value of billing plan spending. Depends on BillingPlan" default-value="" auto-increment="false" creation-date="07/27/2021 08:42:45" />
+                  <attribute uid="a5bb143d4f8d842329045c1396831ce08281" cid="ELEM138" name="CustomPSTInitialCredits" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Custom Preset Override - initial credit amount" default-value="" auto-increment="false" creation-date="07/30/2021 10:57:25" />
+                  <attribute uid="a9f6241e9225e455d92df3b8369120911282" cid="ELEM139" name="CustomPSTCreditsPerItem" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Custom Preset Override - single item credit cost" default-value="" auto-increment="false" creation-date="07/30/2021 10:57:25" />
+                  <attribute uid="a5a52487311a94ce19e8d18ea2b10bced282" cid="ELEM140" name="CustomPSTWatermark" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Custom Preset Override - watermarked" default-value="0" auto-increment="false" creation-date="07/30/2021 10:57:25" />
+                  <attribute uid="a24df944de0d04c428765c79836232c91282" cid="ELEM141" name="CustomPSTQuality" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Custom Preset Override - process quality 0 = lowest" default-value="0" auto-increment="false" creation-date="07/30/2021 10:57:25" />
+                  <attribute uid="a6293db83d4b34e738a0d6403a36df2cc282" cid="ELEM142" name="CustomPSTProcessProfile" type="varchar" type-id="MsSql.varchar" type-size="5" foreign-key="false" primary-key="false" nullable="true" description="Custom Preset Override - processing profile code" default-value="" auto-increment="false" creation-date="07/30/2021 10:57:25" />
+                  <attribute uid="ac792ba27a07d44519eaf658d7413f71d282" cid="ELEM143" name="CustomPSTTest" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Custom Preset Override - testing mode" default-value="0" auto-increment="false" creation-date="07/30/2021 10:57:25" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="4629c8efe5764821a4f2ffb806413d2d" cid="TBL_METADOCUMENT_BILLING" type="erd-entity" name="MetadocumentBilling" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:26:11">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Association </t>
+                        </p>
+                        <p>
+                          <t>of </t>
+                        </p>
+                        <p>
+                          <t>metadocument </t>
+                        </p>
+                        <p>
+                          <t>and </t>
+                        </p>
+                        <p>
+                          <t>billing </t>
+                        </p>
+                        <p>
+                          <t>plan
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="4629c8efe5764821a4f2ffb806413d2d_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_METADOCUMENT_BILLING_PLAN_ID" description="Association of metadocument and billing plan" />
+                <attributes>
+                  <attribute uid="a11608f1f311d4da09f10c0070b88b5f2306" cid="ELEM093" name="MetadocumentId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to owning metadocument" default-value="" auto-increment="false" creation-date="07/27/2021 08:29:14" />
+                  <attribute uid="a2f2c9c5672b7413aba974fc785737ec5306" cid="ELEM094" name="BillingPlanId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to billing plan" default-value="" auto-increment="false" creation-date="07/27/2021 08:29:14" />
+                  <attribute uid="a231a79cc69c44756aacc257f404b281c276" cid="ELEM125" name="CreditCost" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Numeric value of billing plan spending. Depends on BillingPlan." default-value="0" auto-increment="false" creation-date="07/30/2021 10:28:09" />
+                  <attribute uid="a6ce05ddc36634bdf9842d4420fffb834276" cid="ELEM126" name="Watermark" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Flag if watermarked" default-value="0" auto-increment="false" creation-date="07/30/2021 10:28:09" />
+                  <attribute uid="a40369693656f47a2a85c1834048a7542276" cid="ELEM127" name="Quality" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Process quality 0 = lowest" default-value="0" auto-increment="false" creation-date="07/30/2021 10:28:09" />
+                  <attribute uid="ae7e135e729e048f5bca1988ef7120faa276" cid="ELEM128" name="ProcessProfile" type="varchar" type-id="MsSql.varchar" type-size="5" foreign-key="false" primary-key="false" nullable="true" description="Processing profile code" default-value="" auto-increment="false" creation-date="07/30/2021 10:28:09" />
+                  <attribute uid="aa39c2b230da148bebd9c7d8a0730cc09277" cid="ELEM129" name="Test" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Flag if testing mode" default-value="0" auto-increment="false" creation-date="07/30/2021 10:28:09" />
+                  <attribute uid="a5dd36ba234fa45179cd10df803b9c3aa821" cid="ELEM100" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when billing was created" default-value="getdate()" auto-increment="false" creation-date="07/27/2021 08:35:33" />
+                  <attribute uid="a3ccab2f5210a4039b5d8c86ab7e4056c821" cid="ELEM101" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when billing was modified" default-value="" auto-increment="false" creation-date="07/27/2021 08:35:33" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="6b0f4effcc524aaa89b6ea063ce02c78" cid="REL032" type="erd-relationship" name="REL_WorkspaceBilling_Workspace" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:35:48" from="e80985e7fce14193b34889876668ff81" to="24a5c2e6d7df4dd380da583904b6e81c">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="6b0f4effcc524aaa89b6ea063ce02c78_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a909885cbfed747b798799b779e7fcfab446" to-attribute="a7dde6800c37940389459c8caf8b01322535" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="01ce4003e9ff46e890652dffa23fe01b" cid="REL033" type="erd-relationship" name="REL_MetadocumentBilling_Metadocument" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:36:33" from="4629c8efe5764821a4f2ffb806413d2d" to="f19722e950a347d9946336728e7a9b9c">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="01ce4003e9ff46e890652dffa23fe01b_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a11608f1f311d4da09f10c0070b88b5f2306" to-attribute="a7b64ac4b5cba4a7e9b2cb89ee667f597861" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="167a4ad792514f09a7ae7527b8d0e7f6" cid="REL034" type="erd-relationship" name="REL_MetadocumentBilling_BillingPlan" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:37:11" from="4629c8efe5764821a4f2ffb806413d2d" to="f37cd509043e4341b287f015399edb95">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="167a4ad792514f09a7ae7527b8d0e7f6_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a2f2c9c5672b7413aba974fc785737ec5306" to-attribute="acd3b80d7b7ca448b98699942d2ca060a959" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="559c3bab33704212a52e594be57174e9" cid="REL035" type="erd-relationship" name="REL_WorkspaceBilling_BillingPlan" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 08:37:45" from="e80985e7fce14193b34889876668ff81" to="f37cd509043e4341b287f015399edb95">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="559c3bab33704212a52e594be57174e9_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a99ec607b847d4f78beae62fd8ac95f4d636" to-attribute="acd3b80d7b7ca448b98699942d2ca060a959" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="9780151cdc1c40fbb9227d75cac4e47f" cid="ENT015" type="erd-entity" name="Invoice" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 18:43:54">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Sto</t>
+                        </p>
+                        <p>
+                          <t>res </t>
+                        </p>
+                        <p>
+                          <t>invoice </t>
+                        </p>
+                        <p>
+                          <t>information </t>
+                        </p>
+                        <p>
+                          <t>of</t>
+                        </p>
+                        <p>
+                          <t> Workspace </t>
+                        </p>
+                        <p>
+                          <t>BusinessPlan 
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="9780151cdc1c40fbb9227d75cac4e47f_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_INVOICE_ID" description="Stores invoice information of Workspace BusinessPlan " />
+                <attributes>
+                  <attribute uid="a836d1470167941b0bc7b67325c2656a542" cid="ELEM144" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Primary key of invoice record" default-value="" auto-increment="true" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="ae2285b7d2710460c91b8a2b1aa77652649" cid="ELEM145" name="WorkspaceId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to owning workspace" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="acbabbdba19d5413aafc26efe82a5b8f6891" cid="ELEM194" name="InvoiceIssuerId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to invoice issuer record" default-value="" auto-increment="false" creation-date="07/30/2021 19:13:55" />
+                  <attribute uid="ae9678c074ff840eb9732efda7215605c219" cid="ELEM195" name="Code" type="varchar" type-id="MsSql.varchar" type-size="12" foreign-key="false" primary-key="false" nullable="false" description="Invoice number" default-value="" auto-increment="false" creation-date="07/30/2021 19:19:49" />
+                  <attribute uid="a52a76e440b784b8f990f1c00bae33a5c49" cid="ELEM146" name="SubjectName" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Billing Subject name" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="a95d061ecab004f9d8a23bb3cf3a122e649" cid="ELEM147" name="Address1" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Billing Address line 1" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="a66ab5d7556d647e28dedc812d00c1a3149" cid="ELEM148" name="Address2" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="true" description="Billing Address line 2" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="a593a9fa7af9d4734ada9ffc5935da2dc49" cid="ELEM149" name="City" type="nvarchar" type-id="MsSql.nvarchar" type-size="100" foreign-key="false" primary-key="false" nullable="false" description="Billing Address city" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="ad08fd2e2a30049aca2e076c9d7024f1949" cid="ELEM150" name="ZIP" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="false" description="Billing Address ZIP" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="a1fa651bf670249f18547cca056d9f01049" cid="ELEM151" name="Country" type="nvarchar" type-id="MsSql.nvarchar" type-size="50" foreign-key="false" primary-key="false" nullable="false" description="Billing Address country" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="aaeec3504d05f4ac8802cbd1a87583e0249" cid="ELEM152" name="TaxNumber" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="false" description="Billing Tax number" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="a847f22fa4c524440a39787932b5242a149" cid="ELEM153" name="VATNumber" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="true" description="Billing VAT number" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="af64e007d961e4bea93755790d18ed88951" cid="ELEM154" name="Phone" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="true" description="Billing phone with format +XXXXXXXXX" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="a83815078dcc542a4a6717b98d2d4db0c51" cid="ELEM155" name="Email" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="false" description="Billing email" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="a0a9ac4b75f0f4642bc3faef9fd8f23b0282" cid="ELEM164" name="TotalBasePrice" type="decimal" type-id="MsSql.decimal" type-size="16,4" foreign-key="false" primary-key="false" nullable="false" description="Total base price (w/o VAT)" default-value="0" auto-increment="false" creation-date="07/30/2021 19:00:13" />
+                  <attribute uid="aa7591f08e1e841b79631303c01196c09612" cid="ELEM166" name="TotalBaseCurrency" type="varchar" type-id="MsSql.varchar" type-size="3" foreign-key="false" primary-key="false" nullable="false" description="Total base price currency (w/o VAT)" default-value="" auto-increment="false" creation-date="07/30/2021 19:00:42" />
+                  <attribute uid="af12d3bb1b2664c1e97fc9645657b2dff222" cid="ELEM196" name="Channel" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="false" description="Pay channel" default-value="" auto-increment="false" creation-date="07/30/2021 19:19:49" />
+                  <attribute uid="a887f585529b1416a8135c63befab7ce2222" cid="ELEM197" name="ChannelReference" type="nvarchar" type-id="MsSql.nvarchar" type-size="50" foreign-key="false" primary-key="false" nullable="false" description="Pay channel reference (account number)" default-value="" auto-increment="false" creation-date="07/30/2021 19:19:49" />
+                  <attribute uid="ad9f24c4734fd4ad79466d1c5dc0db3e5222" cid="ELEM198" name="DueDate" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Due date" default-value="" auto-increment="false" creation-date="07/30/2021 19:19:49" />
+                  <attribute uid="a838ab042f4c34a999f54f8529fd09f0e222" cid="ELEM199" name="TaxDate" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Tax date" default-value="" auto-increment="false" creation-date="07/30/2021 19:19:49" />
+                  <attribute uid="a8e8b44d47b934d0d92ea0c8abd41235251" cid="ELEM156" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when billing info was created" default-value="getdate()" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="a08fbcd7b7cde45e789d9df398544af0751" cid="ELEM157" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when billing info was modified" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="a438eedb4a324498a84a5d3e9138f3b3551" cid="ELEM158" name="CreatedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user who created billing info" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                  <attribute uid="ab2a2917382a640a9af87c3c19051169951" cid="ELEM159" name="ModifiedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="true" description="Reference to user who updated billing info" default-value="" auto-increment="false" creation-date="07/30/2021 18:48:50" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="2fd41530778f42de8956c9feeb3bbf41" cid="ENT016" type="erd-entity" name="InvoiceItem" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 19:01:29">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="2fd41530778f42de8956c9feeb3bbf41_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_INVOICE_ITEM" description="Invoice item" />
+                <attributes>
+                  <attribute uid="a9287f4ac2bc74a94a00083c856600ca8688" cid="ELEM167" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Primary key of invoice item record" default-value="" auto-increment="true" creation-date="07/30/2021 19:04:50" />
+                  <attribute uid="aec5726bbb3ef45ae96fd7e61eaf18450688" cid="ELEM168" name="InvoiceId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to owning invoice" default-value="" auto-increment="false" creation-date="07/30/2021 19:04:50" />
+                  <attribute uid="a4d1399a1d86a42df9c9641271aa01d41689" cid="ELEM169" name="BillingPlanId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to billing plan" default-value="" auto-increment="false" creation-date="07/30/2021 19:04:50" />
+                  <attribute uid="aa6b25269425643ecb2aa07b45d5b03bf689" cid="ELEM170" name="BillingPlanCode" type="nvarchar" type-id="MsSql.nvarchar" type-size="10" foreign-key="false" primary-key="false" nullable="false" description="Billing plan short code" default-value="" auto-increment="false" creation-date="07/30/2021 19:04:50" />
+                  <attribute uid="ad79de49d986a425790913609ad6e83af689" cid="ELEM171" name="UnitQuantity" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Unit quantity" default-value="1" auto-increment="false" creation-date="07/30/2021 19:04:50" />
+                  <attribute uid="a2a1d4ad6c69842f59e8d8fed4ded80bc689" cid="ELEM172" name="UnitBasePrice" type="decimal" type-id="MsSql.decimal" type-size="16,4" foreign-key="false" primary-key="false" nullable="false" description="Unit base price (w/o VAT)" default-value="0" auto-increment="false" creation-date="07/30/2021 19:04:50" />
+                  <attribute uid="a4abe2287f23b4abbaf94105124ccf985689" cid="ELEM173" name="UnitBaseCurrency" type="varchar" type-id="MsSql.varchar" type-size="3" foreign-key="false" primary-key="false" nullable="false" description="Unit base price currency (w/o VAT)" default-value="" auto-increment="false" creation-date="07/30/2021 19:04:50" />
+                  <attribute uid="a861be40763bd4bc58536c4dd2423d939689" cid="ELEM174" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when billing info was created" default-value="getdate()" auto-increment="false" creation-date="07/30/2021 19:04:50" />
+                  <attribute uid="a864e1d2e7e7b46c0ba86332fe2979a13689" cid="ELEM175" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when billing info was modified" default-value="" auto-increment="false" creation-date="07/30/2021 19:04:50" />
+                  <attribute uid="ab90a9250329346a8a3d9d0fbf6524ee9689" cid="ELEM176" name="CreatedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user who created billing info" default-value="" auto-increment="false" creation-date="07/30/2021 19:04:50" />
+                  <attribute uid="a126e4e7b67984579bebb002927b8b5f9689" cid="ELEM177" name="ModifiedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="true" description="Reference to user who updated billing info" default-value="" auto-increment="false" creation-date="07/30/2021 19:04:50" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="d1c3e65e95da47eab43c9ba895d6142e" cid="ENT017" type="erd-entity" name="InvoiceIssuer" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 19:06:37">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles />
+                    <definition>
+                      <sections>
+                        <section name="">
+                          <default-page>
+                            <page size="224,316.8" header-offset="15" footer-offset="15" unit="mm">
+                              <margins left="20" right="20" top="20" bottom="20" />
+                            </page>
+                          </default-page>
+                        </section>
+                      </sections>
+                    </definition>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Defines </t>
+                        </p>
+                        <p>
+                          <t>information </t>
+                        </p>
+                        <p>
+                          <t>about </t>
+                        </p>
+                        <p>
+                          <t>Invoice </t>
+                        </p>
+                        <p>
+                          <t>Issuer </t>
+                        </p>
+                        <p>
+                          <t>and </t>
+                        </p>
+                        <p>
+                          <t>its </t>
+                        </p>
+                        <p>
+                          <t>contacts </t>
+                        </p>
+                        <p>
+                          <t>information </t>
+                        </p>
+                        <p>
+                          <t>(used </t>
+                        </p>
+                        <p>
+                          <t>in </t>
+                        </p>
+                        <p>
+                          <t>invoice </t>
+                        </p>
+                        <p>
+                          <t>header)
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <stereotype-instances>
+                  <stereotype id="d1c3e65e95da47eab43c9ba895d6142e_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Green" />
+                <entity pk-constraint-name="PK_INVOICE_ISSUER" description="Defines information about Invoice Issuer and its contacts information (used in invoice header)" />
+                <attributes>
+                  <attribute uid="ae147cba260b242c894a5af6f9110bef1688" cid="ELEM178" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Primary key of invoice issuer record" default-value="" auto-increment="true" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="acf52803c24c543eba1355e0c50761b95689" cid="ELEM179" name="SubjectName" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Billing Subject name" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="a440460d27be049d1a7034a3abc519578689" cid="ELEM180" name="Address1" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="false" description="Billing Address line 1" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="a257d3e7ea6a24fe7815fdc3b9725628e689" cid="ELEM181" name="Address2" type="nvarchar" type-id="MsSql.nvarchar" type-size="200" foreign-key="false" primary-key="false" nullable="true" description="Billing Address line 2" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="a0b60ad7fe89e46c991f512e5fd26a5f8690" cid="ELEM182" name="City" type="nvarchar" type-id="MsSql.nvarchar" type-size="100" foreign-key="false" primary-key="false" nullable="false" description="Billing Address city" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="a67d2491451334bd9a16ed0c66a2e5876690" cid="ELEM183" name="ZIP" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="false" description="Billing Address ZIP" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="a9073df93a14e4458bcd4f8220389bbfc690" cid="ELEM184" name="Country" type="nvarchar" type-id="MsSql.nvarchar" type-size="50" foreign-key="false" primary-key="false" nullable="false" description="Billing Address country" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="a7b8905dfb6d04d509e6a11676f1e7512690" cid="ELEM185" name="TaxNumber" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="false" description="Billing Tax number" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="af9ddcc7d4247444c8518c4628243b02e690" cid="ELEM186" name="VATNumber" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="true" description="Billing VAT number" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="a6da857514d9a42368711a74300fc02df690" cid="ELEM187" name="Phone" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="true" description="Billing phone with format +XXXXXXXXX" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="aefae5ef2f3ad49458c3f9762c4cde25d690" cid="ELEM188" name="Email" type="nvarchar" type-id="MsSql.nvarchar" type-size="20" foreign-key="false" primary-key="false" nullable="false" description="Billing email" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="a04af9f497abf431c8ae21a13e3645555690" cid="ELEM189" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when billing info was created" default-value="getdate()" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="afadd3246e222435e952286c05e6d88f3690" cid="ELEM190" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when billing info was modified" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="a20e8dcf379084851a37dcc019320cf7a690" cid="ELEM191" name="CreatedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="false" description="Reference to user who created billing info" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="a1e260767b3c44d3887ce747ee6ce2c43691" cid="ELEM192" name="ModifiedByUserId" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="true" primary-key="false" nullable="true" description="Reference to user who updated billing info" default-value="" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                  <attribute uid="ae9790050c0a04ba59901930be22b01c1691" cid="ELEM193" name="IsEnabled" type="bit" type-id="MsSql.bit" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Flag if record is enabled" default-value="0" auto-increment="false" creation-date="07/30/2021 19:11:38" />
+                </attributes>
+                <indexes />
+              </item>
+              <item id="1cc24f2dd2ac464587d23aab5417cd19" cid="REL038" type="erd-relationship" name="REL_InvoiceItem_Invoice" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 19:20:26" from="2fd41530778f42de8956c9feeb3bbf41" to="9780151cdc1c40fbb9227d75cac4e47f">
+                <stereotypes>
+                  <stereotype name="relation" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="1cc24f2dd2ac464587d23aab5417cd19_relation_c" type="relation" ref="" />
+                </stereotype-instances>
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="aec5726bbb3ef45ae96fd7e61eaf18450688" to-attribute="a836d1470167941b0bc7b67325c2656a542" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="95efd1bdeb554b6c916e300354b3ccc3" cid="REL039" type="erd-relationship" name="REL_InvoiceItem_BillingPlan" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 19:22:30" from="2fd41530778f42de8956c9feeb3bbf41" to="f37cd509043e4341b287f015399edb95">
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a4d1399a1d86a42df9c9641271aa01d41689" to-attribute="acd3b80d7b7ca448b98699942d2ca060a959" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="3a7fc8f0ab3f4497b47cabeff2cc069f" cid="REL047" type="erd-relationship" name="REL_InvoiceItem_User_Modified" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 19:25:19" from="2fd41530778f42de8956c9feeb3bbf41" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="0..1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a126e4e7b67984579bebb002927b8b5f9689" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="906eead6a8354ae99b0f0695156219ba" cid="REL043" type="erd-relationship" name="REL_InvoiceItem_User_Created" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 19:23:50" from="2fd41530778f42de8956c9feeb3bbf41" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="ab90a9250329346a8a3d9d0fbf6524ee9689" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="f918772a8d8c43479ad823d1bf5d3a10" cid="REL051" type="erd-relationship" name="REL_Invoice_InvoiceIssuer" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 19:26:13" from="9780151cdc1c40fbb9227d75cac4e47f" to="d1c3e65e95da47eab43c9ba895d6142e">
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="acbabbdba19d5413aafc26efe82a5b8f6891" to-attribute="ae147cba260b242c894a5af6f9110bef1688" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="2448cc44809742289e2467ea6f26d01b" cid="REL055" type="erd-relationship" name="REL_Invoice_Workspace" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 19:27:05" from="9780151cdc1c40fbb9227d75cac4e47f" to="24a5c2e6d7df4dd380da583904b6e81c">
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="ae2285b7d2710460c91b8a2b1aa77652649" to-attribute="a7dde6800c37940389459c8caf8b01322535" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="8aea7379f8474a04b5e51b7b9fbbc356" cid="REL056" type="erd-relationship" name="REL_Invoice_User_Created" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 19:27:42" from="9780151cdc1c40fbb9227d75cac4e47f" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a438eedb4a324498a84a5d3e9138f3b3551" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="141789e5d3ac4fe09df788270eb54442" cid="REL057" type="erd-relationship" name="REL_Invoice_User_Modified" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 19:28:02" from="9780151cdc1c40fbb9227d75cac4e47f" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="0..1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="ab2a2917382a640a9af87c3c19051169951" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="0a05eb01810048d3a58d3644b1dcd3e1" cid="REL058" type="erd-relationship" name="REL_InvoiceIssuer_User_Created" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 19:29:05" from="d1c3e65e95da47eab43c9ba895d6142e" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a20e8dcf379084851a37dcc019320cf7a690" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="a8ae5cb0e7c54b33b02261f80eb94ce0" cid="REL059" type="erd-relationship" name="REL_InvoiceIssuer_User_Modified" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 19:29:31" from="d1c3e65e95da47eab43c9ba895d6142e" to="ef322c9446f34d3db88bcf4cbdcbbbda">
+                <erd-relation type="Identifying" multiplicity-from="1" multiplicity-to="0..1">
+                  <attribute-pairs>
+                    <attribute-pair from-attribute="a1e260767b3c44d3887ce747ee6ce2c43691" to-attribute="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+                  </attribute-pairs>
+                </erd-relation>
+              </item>
+              <item id="6edb189ac3fd441594f0948a4b16169b" cid="ENT018" type="erd-entity" name="Statistic" style-class="Flat Light Red" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="08/02/2021 08:20:06">
+                <stereotypes>
+                  <stereotype name="table" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="6edb189ac3fd441594f0948a4b16169b_table_c" type="table" ref="" />
+                </stereotype-instances>
+                <style class="Flat Light Red" />
+                <entity pk-constraint-name="PK_STA_ID" description="Holds statistics information on daily base" />
+                <attributes>
+                  <attribute uid="a3f32da09fefe4fc3b6a7f8ba10b84f8a902" cid="ELEM230" name="Id" type="bigint" type-id="MsSql.bigint" type-size="" foreign-key="false" primary-key="true" nullable="false" description="Primary key of Statistic record" default-value="" auto-increment="true" creation-date="08/12/2021 05:36:38" />
+                  <attribute uid="ac4cbc1337a5a4e40bd515b180ea06405403" cid="ELEM200" name="Year" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Year number" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="aa54da814d7ea492f9c013b7085bd8e54408" cid="ELEM201" name="Month" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Month number" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="ad9dec40284ca4f1789942ebaba74f80d408" cid="ELEM202" name="Day" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Day number" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="a6d415fc3e8844cecbeb678a8afb49c6b408" cid="ELEM203" name="UserNewCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of new created users" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="a892089cd018c483bbb98862978750ee3408" cid="ELEM204" name="UserLoginCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of logged users (incl B2B)" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="a665a44ee2645433aaa76f92461a4fb76408" cid="ELEM205" name="UserLoginB2BCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of logged B2B users" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="af319ddfb62d64abe9ff0fb8336d6f63e408" cid="ELEM206" name="UserTotalCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of all users (incl system)" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="ad7ee0916e5e649beb9a2073432c833a9403" cid="ELEM228" name="WorkspaceNewCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of new created workspaces" default-value="" auto-increment="false" creation-date="08/11/2021 11:01:36" />
+                  <attribute uid="aacd2d6fd394d44a18f3d11277a354e44403" cid="ELEM229" name="WorkspaceTotalCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of all workspaces" default-value="" auto-increment="false" creation-date="08/11/2021 11:01:36" />
+                  <attribute uid="ac22dd5b877b64540a721ea7fdf6a495c411" cid="ELEM209" name="InvoiceNewCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of new created invoices" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="af4b64237bb734ef98bf937d122a2f3b6411" cid="ELEM210" name="DocumentNewCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of new created/uploaded documents" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="a46b2de646bbb4878911b3a52ed125d6c412" cid="ELEM211" name="DocumentFailedCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of failed documents" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="a58814f9725544a4cb015365cd37c9069412" cid="ELEM212" name="DocumentDownloadedCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of downloaded documents" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="a5b412eb9e2a94dc2a831462f0df9dbf1412" cid="ELEM213" name="DocumentTotalCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of all available documents" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="add341970e2f1447f9f99374c08d549f3412" cid="ELEM214" name="DocumentProcessedCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of processed documents" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="ad27f7bd490be49d5af8485e4687633cf412" cid="ELEM215" name="PSActiveCnt" type="int" type-id="MsSql.int" type-size="" foreign-key="false" primary-key="false" nullable="false" description="# of active ProcessServer instances" default-value="" auto-increment="false" creation-date="08/02/2021 08:38:24" />
+                  <attribute uid="a1d06e539a17649b4be623b703bce9ff5382" cid="ELEM222" name="YieldWorthSum" type="decimal" type-id="MsSql.decimal" type-size="16,4" foreign-key="false" primary-key="false" nullable="false" description="sum of daily yield worth" default-value="" auto-increment="false" creation-date="08/02/2021 09:32:47" />
+                  <attribute uid="afc73303387064a059c00b94709f423d7382" cid="ELEM223" name="YieldWorthCurrency" type="varchar" type-id="MsSql.varchar" type-size="3" foreign-key="false" primary-key="false" nullable="false" description="currency code of yieldworth" default-value="" auto-increment="false" creation-date="08/02/2021 09:32:47" />
+                  <attribute uid="a57d9aa2e6cbe4d86be5df80accd75f89383" cid="ELEM224" name="YieldWorthTotalSum" type="decimal" type-id="MsSql.decimal" type-size="16,4" foreign-key="false" primary-key="false" nullable="false" description="sum of daily yield worth" default-value="" auto-increment="false" creation-date="08/02/2021 09:32:47" />
+                  <attribute uid="a7f9efeccfcd149ffaa63ddac6f25eb73383" cid="ELEM225" name="YieldWorthTotalCurrency" type="varchar" type-id="MsSql.varchar" type-size="3" foreign-key="false" primary-key="false" nullable="false" description="currency code of yieldworth" default-value="" auto-increment="false" creation-date="08/02/2021 09:32:47" />
+                  <attribute uid="a5cfce34bf9654383b09c9166254010a4355" cid="ELEM220" name="Created" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="false" description="Timestamp when billing info was created" default-value="getdate()" auto-increment="false" creation-date="08/02/2021 08:39:27" />
+                  <attribute uid="ac23f0f25f6754efcba9b25769f7524d8356" cid="ELEM221" name="Modified" type="datetime" type-id="MsSql.datetime" type-size="" foreign-key="false" primary-key="false" nullable="true" description="Timestamp when billing info was modified" default-value="" auto-increment="false" creation-date="08/02/2021 08:39:27" />
+                </attributes>
+                <indexes>
+                  <index uid="ix87f52e791a5a412bac8b7233807b2b1f356" cid="ELEM036" name="IDX_DATE" is-unique="true">
+                    <index-attributes>
+                      <index-attribute ref="ac4cbc1337a5a4e40bd515b180ea06405403" sort="Desc" />
+                      <index-attribute ref="aa54da814d7ea492f9c013b7085bd8e54408" sort="Desc" />
+                      <index-attribute ref="ad9dec40284ca4f1789942ebaba74f80d408" sort="Desc" />
+                    </index-attributes>
+                  </index>
+                </indexes>
+              </item>
+            </abstract-items>
+            <layer id="6fa09190adbe4d97861d913962fcbf64" name="Default" visible="true" enabled="true" locked="false">
+              <item id="ef322c9446f34d3db88bcf4cbdcbbbda" iid="68002f8afdb045bea4ad4abf68c5d193" creation-date="07/26/2021 15:46:45" order-index="0" type="entity">
+                <layout ax="1862" ay="1176" awidth="302" aheight="320" x="1862" y="1176" width="302" height="320" rotation-center="-81,-44" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="cf2ea12ad0ab48b1961d886a52ca9617" iid="dbc09317f996480497834aef343b332a" creation-date="07/27/2021 05:24:19" order-index="1" type="entity">
+                <layout ax="1496" ay="868" awidth="326" aheight="205" x="1496" y="868" width="326" height="205" rotation-center="-93,-22.5" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="52988c995dbd4461914ed99b6307b1f8" iid="c8f489ed074c4b8c8dde7e0ee8b7bc8c" creation-date="07/27/2021 05:28:53" order-index="2" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="1822" y1="972" x2="1862" y2="1262" start-border-pos="0.376219512195122" end-border-pos="0.932421875" start-local-pos="104" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="1822" y="972" />
+                    <point x="1862" y="1262" />
+                  </points>
+                </layout>
+                <relation from="cf2ea12ad0ab48b1961d886a52ca9617" from-iid="dbc09317f996480497834aef343b332a" from-field="a7b25f4d46e644460bef81e952da93157988" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="24a5c2e6d7df4dd380da583904b6e81c" iid="79f5dcb934c842a1bddc246988b2b33b" creation-date="07/27/2021 05:33:16" order-index="3" type="entity">
+                <layout ax="1884" ay="476" awidth="429" aheight="472" x="1884" y="476" width="429" height="472" rotation-center="-85.5,-11.5" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="c42c71b7a8114423ba97db944a9144b8" iid="705e6de36da44d2b955387e9f53c8144" creation-date="07/27/2021 05:45:27" order-index="4" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="1884" y1="731" x2="2164" y2="1262" start-border-pos="0.864671610169492" end-border-pos="0.317578125" start-local-pos="255" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="1884" y="731" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="24a5c2e6d7df4dd380da583904b6e81c" from-iid="79f5dcb934c842a1bddc246988b2b33b" from-field="afbf05134d6804f18a42e118f2be93395452" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="88c72fd856bb4d0aaafef6cc85a7369a" iid="0024127d1ba44d6f8fbb86c649465262" creation-date="07/27/2021 05:46:21" order-index="5" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="1884" y1="750" x2="2164" y2="1262" start-border-pos="0.854608050847458" end-border-pos="0.317578125" start-local-pos="274" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="1884" y="750" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="24a5c2e6d7df4dd380da583904b6e81c" from-iid="79f5dcb934c842a1bddc246988b2b33b" from-field="a2d6410d2a3cc498880eae4fa10d65477142" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="65cd1e707d594ac4b17e91ddd56e0dd8" iid="72864f05453047dbadb9dcc4387f4da7" creation-date="07/27/2021 05:47:09" order-index="6" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="1822" y1="990" x2="1884" y2="579" start-border-pos="0.399390243902439" end-border-pos="0.945180084745763" start-local-pos="122" end-local-pos="103" name-position="0,20">
+                  <points>
+                    <point x="1822" y="990" />
+                    <point x="1884" y="579" />
+                  </points>
+                </layout>
+                <relation from="cf2ea12ad0ab48b1961d886a52ca9617" from-iid="dbc09317f996480497834aef343b332a" from-field="a3760d4d680f3493381a84c48261911af977" to="24a5c2e6d7df4dd380da583904b6e81c" to-iid="79f5dcb934c842a1bddc246988b2b33b" to-field="a7dde6800c37940389459c8caf8b01322535" />
+              </item>
+              <item id="ffff693c63d845f9b0e790d6a21b9e82" iid="d3884eea96d146279273a0380a41471b" creation-date="07/27/2021 05:53:23" order-index="7" type="entity">
+                <layout ax="2492" ay="-25" awidth="266" aheight="456" x="2492" y="-25" width="140" height="456" rotation-center="0,103" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="a0a6de69d8864c6f90ebdc1bea52e94d" iid="cb25dbc600494f69b1e2525385f5e157" creation-date="07/27/2021 05:59:43" order-index="8" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="2492" y1="80" x2="2313" y2="580" start-border-pos="0.942160087719298" end-border-pos="0.304819915254237" start-local-pos="105" end-local-pos="104" name-position="0,20">
+                  <points>
+                    <point x="2492" y="80" />
+                    <point x="2313" y="580" />
+                  </points>
+                </layout>
+                <relation from="ffff693c63d845f9b0e790d6a21b9e82" from-iid="d3884eea96d146279273a0380a41471b" from-field="af8c40d1e7095452ba8dfacbf59c966b8323" to="24a5c2e6d7df4dd380da583904b6e81c" to-iid="79f5dcb934c842a1bddc246988b2b33b" to-field="a7dde6800c37940389459c8caf8b01322535" />
+              </item>
+              <item id="fbe54a26bbf94981828cdb3f61873087" iid="5574b8b692514d05b0de7b0fb5fbca23" creation-date="07/27/2021 06:00:38" order-index="9" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="2492" y1="327" x2="2164" y2="1262" start-border-pos="0.806743421052632" end-border-pos="0.317578125" start-local-pos="352" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2492" y="327" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="ffff693c63d845f9b0e790d6a21b9e82" from-iid="d3884eea96d146279273a0380a41471b" from-field="a969e5033108d44839b2c6e20934ff723771" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="eb1bf976e7604502a16014cec07f2bf6" iid="bd487bd6c98f470e9f388097427830be" creation-date="07/27/2021 06:01:43" order-index="10" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="2492" y1="346" x2="2164" y2="1262" start-border-pos="0.796326754385965" end-border-pos="0.317578125" start-local-pos="371" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2492" y="346" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="ffff693c63d845f9b0e790d6a21b9e82" from-iid="d3884eea96d146279273a0380a41471b" from-field="aa7fe8303ed02425b806a3557b09e5bcd771" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="656dc0086cd74ae99b835bcbb97ced93" iid="231f42826d72480fa533ddc63e7b8c0d" creation-date="07/27/2021 06:03:58" order-index="11" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="2313" y1="618" x2="2492" y2="62" start-border-pos="0.324947033898305" end-border-pos="0.952576754385965" start-local-pos="142" end-local-pos="87" name-position="0,20">
+                  <points>
+                    <point x="2313" y="618" />
+                    <point x="2492" y="62" />
+                  </points>
+                </layout>
+                <relation from="24a5c2e6d7df4dd380da583904b6e81c" from-iid="79f5dcb934c842a1bddc246988b2b33b" from-field="a496263d90bf347b99c6ee14a5044ee26898" to="ffff693c63d845f9b0e790d6a21b9e82" to-iid="d3884eea96d146279273a0380a41471b" to-field="a30fbe5330e3e4ee3a90358bf418197bc703" />
+              </item>
+              <item id="80e14dbf9d8f4a9f9e52efcb92fe8e97" iid="227931401c474ce3953e7ec02287e8a4" creation-date="07/27/2021 06:05:06" order-index="12" type="entity">
+                <layout ax="2409" ay="565" awidth="326" aheight="303" x="2409" y="565" width="326" height="303" rotation-center="-93,-8.5" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="e2e6ca43a64545698cedbf9cceb58a46" iid="277446c0927c46fcaa7f0a46fa8e62f4" creation-date="07/27/2021 07:02:26" order-index="13" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="2409" y1="707" x2="2313" y2="580" start-border-pos="0.883250825082508" end-border-pos="0.304819915254237" start-local-pos="142" end-local-pos="104" name-position="0,20">
+                  <points>
+                    <point x="2409" y="707" />
+                    <point x="2313" y="580" />
+                  </points>
+                </layout>
+                <relation from="80e14dbf9d8f4a9f9e52efcb92fe8e97" from-iid="227931401c474ce3953e7ec02287e8a4" from-field="ae420ab80ac584385b1426d0202fef72114" to="24a5c2e6d7df4dd380da583904b6e81c" to-iid="79f5dcb934c842a1bddc246988b2b33b" to-field="a7dde6800c37940389459c8caf8b01322535" />
+              </item>
+              <item id="d89142916c59480eb82462bf6adff7d8" iid="8a9b142cb3d54eb3a29bbc4179892c7d" creation-date="07/27/2021 07:03:03" order-index="14" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="true" auto-path="" x1="2409" y1="668" x2="2409" y2="726" start-border-pos="0.91460396039604" end-border-pos="0.867574257425743" start-local-pos="103" end-local-pos="161" name-position="0,20">
+                  <points>
+                    <point x="2409" y="668" />
+                    <point x="2208" y="727.5" />
+                    <point x="2206" y="670" />
+                    <point x="2409" y="726" />
+                  </points>
+                </layout>
+                <relation from="80e14dbf9d8f4a9f9e52efcb92fe8e97" from-iid="227931401c474ce3953e7ec02287e8a4" from-field="af143d15824124110b676deab330b5bfd973" to="80e14dbf9d8f4a9f9e52efcb92fe8e97" to-iid="227931401c474ce3953e7ec02287e8a4" to-field="ad209340532f94e32b4cf1917e5a20cd6364" />
+              </item>
+              <item id="f19722e950a347d9946336728e7a9b9c" iid="779a4cd4f1d1476ea87da5d9a66f8c12" creation-date="07/27/2021 07:05:30" order-index="15" type="entity">
+                <layout ax="2600" ay="1638" awidth="381" aheight="320" x="2600" y="1638" width="381" height="320" rotation-center="-120.5,-80" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="508e601ed32f4ca29e4b5289575ba795" iid="dbcd2881d0eb490e8f664d543a32091c" creation-date="07/27/2021 07:18:10" order-index="16" type="entity">
+                <layout ax="2839" ay="1290" awidth="302" aheight="229" x="2839" y="1290" width="302" height="229" rotation-center="-7,15.5" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="66aaf293e08545e697730b154b412ac2" iid="792bc5686e0e434bb3a945fbb24901e8" creation-date="07/27/2021 07:26:13" order-index="17" type="entity">
+                <layout ax="1970.5" ay="1865" awidth="326" aheight="295" x="1970.5" y="1865" width="326" height="295" rotation-center="-93,-67.5" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="b67864ae142447b087be3d82e8f18e70" iid="4f2ffee5135f42ba8190dd0911d849e9" creation-date="07/27/2021 07:33:33" order-index="18" type="entity">
+                <layout ax="2953" ay="880" awidth="350" aheight="296" x="2953" y="880" width="350" height="296" rotation-center="-57,-82" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="d136e0ee86b243bbabd24753bb9000b0" iid="19b59219801b4b1286f26bded79bb508" creation-date="07/27/2021 07:53:36" order-index="19" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="2953" y1="1114" x2="2164" y2="1262" start-border-pos="0.801942567567568" end-border-pos="0.317578125" start-local-pos="234" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2953" y="1114" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="b67864ae142447b087be3d82e8f18e70" from-iid="4f2ffee5135f42ba8190dd0911d849e9" from-field="acb7fdb81aa7d4cbd8201246a008003dd825" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="e0acb2e495b1499cb7a30d9f33c090f8" iid="c3e2cc6fe7b64ef4bfa123c92ccb6d20" creation-date="07/27/2021 07:54:03" order-index="20" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-end-point="true" lock-to-fields="true" auto-path="" x1="2953" y1="1134" x2="2164" y2="1262" start-border-pos="0.78589527027027" end-border-pos="0.317578125" start-local-pos="254" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2953" y="1134" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="b67864ae142447b087be3d82e8f18e70" from-iid="4f2ffee5135f42ba8190dd0911d849e9" from-field="a2da35409cd704d75b9a8472accca9a93740" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="c0ce9ad877694d26bc57b50f21db5a58" iid="9362b9135d9a4f22a87420b2a82ae008" creation-date="07/27/2021 07:56:09" order-index="21" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="2600" y1="1760" x2="2735" y2="668" start-border-pos="0.904296875" end-border-pos="0.33539603960396" start-local-pos="122" end-local-pos="103" name-position="0,20">
+                  <points>
+                    <point x="2600" y="1760" />
+                    <point x="2735" y="668" />
+                  </points>
+                </layout>
+                <relation from="f19722e950a347d9946336728e7a9b9c" from-iid="779a4cd4f1d1476ea87da5d9a66f8c12" from-field="a1f51f395d6344cc4a44d1de584a84ee0454" to="80e14dbf9d8f4a9f9e52efcb92fe8e97" to-iid="227931401c474ce3953e7ec02287e8a4" to-field="af143d15824124110b676deab330b5bfd973" />
+              </item>
+              <item id="51a32d625c574fdcb3a4d01803f57cea" iid="54e09d9a34a641ec948a97bdbb3e9054" creation-date="07/27/2021 07:57:05" order-index="22" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="2600" y1="1874" x2="2164" y2="1262" start-border-pos="0.815234375" end-border-pos="0.317578125" start-local-pos="236" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2600" y="1874" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="f19722e950a347d9946336728e7a9b9c" from-iid="779a4cd4f1d1476ea87da5d9a66f8c12" from-field="a2618fb81e27a4e63b381d4bffca2fdfe862" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="3201398364364830a132932fd99e7394" iid="9be38ab764134998aeeac0f1cab70637" creation-date="07/27/2021 07:57:46" order-index="23" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="2600" y1="1894" x2="2164" y2="1262" start-border-pos="0.800390625" end-border-pos="0.317578125" start-local-pos="256" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2600" y="1894" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="f19722e950a347d9946336728e7a9b9c" from-iid="779a4cd4f1d1476ea87da5d9a66f8c12" from-field="ae0f42fa3a0a64040b5c052f8aa77802f862" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="84566c0ddc1c4285b8a7b7c00283733d" iid="5cba0dae595747c2a6ff8e4eec92bf42" creation-date="07/27/2021 07:58:16" order-index="24" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="2600" y1="1912" x2="2164" y2="1262" start-border-pos="0.785546875" end-border-pos="0.317578125" start-local-pos="274" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2600" y="1912" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="f19722e950a347d9946336728e7a9b9c" from-iid="779a4cd4f1d1476ea87da5d9a66f8c12" from-field="aaf62aac4ebed4babb6d55a02d89a1a05862" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="2d73b15dbbd448018ff60fcde9ea98a9" iid="224942db504945f7ae0e8b0559ff84dd" creation-date="07/27/2021 08:00:15" order-index="25" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="2296" y1="1988" x2="2600" y2="1742" start-border-pos="0.353813559322034" end-border-pos="0.919140625" start-local-pos="123" end-local-pos="104" name-position="0,20">
+                  <points>
+                    <point x="2296" y="1988" />
+                    <point x="2600" y="1742" />
+                  </points>
+                </layout>
+                <relation from="66aaf293e08545e697730b154b412ac2" from-iid="792bc5686e0e434bb3a945fbb24901e8" from-field="afbf1bfe4382a419a97afc0b6365ccc3f595" to="f19722e950a347d9946336728e7a9b9c" to-iid="779a4cd4f1d1476ea87da5d9a66f8c12" to-field="a7b64ac4b5cba4a7e9b2cb89ee667f597861" />
+              </item>
+              <item id="199d967437494e89ac1e51d9864ca901" iid="5cf04c06684c4b909d738371ae410e63" creation-date="07/27/2021 08:00:47" order-index="26" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="2296" y1="2044" x2="2953" y2="1000" start-border-pos="0.402118644067797" end-border-pos="0.898226351351351" start-local-pos="179" end-local-pos="120" name-position="0,20">
+                  <points>
+                    <point x="2296" y="2044" />
+                    <point x="2953" y="1000" />
+                  </points>
+                </layout>
+                <relation from="66aaf293e08545e697730b154b412ac2" from-iid="792bc5686e0e434bb3a945fbb24901e8" from-field="a0df7e12153fc41f9b9f268692348fd89595" to="b67864ae142447b087be3d82e8f18e70" to-iid="4f2ffee5135f42ba8190dd0911d849e9" to-field="a1e031483005544c58999300837dd9ed5825" />
+              </item>
+              <item id="c6de4fa0f7524f62a8a4e22204b2177a" iid="0ebda705d5e941b9a0c03efd5da2e4a8" creation-date="07/27/2021 08:01:34" order-index="27" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="1970" y1="2120" x2="2164" y2="1262" start-border-pos="0.783474576271186" end-border-pos="0.317578125" start-local-pos="255" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="1970" y="2120" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="66aaf293e08545e697730b154b412ac2" from-iid="792bc5686e0e434bb3a945fbb24901e8" from-field="a6713b9cac63c4b1797fea4349fd90f64595" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="032c7b170b9c4f22bb29e7c66d131845" iid="14090c13f4b04efab919e5bceef50aa8" creation-date="07/27/2021 08:02:17" order-index="28" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="2839" y1="1488" x2="2164" y2="1262" start-border-pos="0.783296943231441" end-border-pos="0.317578125" start-local-pos="198" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2839" y="1488" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="508e601ed32f4ca29e4b5289575ba795" from-iid="dbcd2881d0eb490e8f664d543a32091c" from-field="a3f10c23945c6454f8ea4cd5572de2077374" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="7838665b6ec7474ea14f53946f2181ff" iid="fec87ab4264e4ae7a435e35126a26e19" creation-date="07/27/2021 08:02:58" order-index="29" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="2839" y1="1412" x2="2981" y2="1742" start-border-pos="0.866266375545852" end-border-pos="0.330859375" start-local-pos="122" end-local-pos="104" name-position="0,20">
+                  <points>
+                    <point x="2839" y="1412" />
+                    <point x="2981" y="1742" />
+                  </points>
+                </layout>
+                <relation from="508e601ed32f4ca29e4b5289575ba795" from-iid="dbcd2881d0eb490e8f664d543a32091c" from-field="af15e8a4f21fb4834b6479b09c3cfd211374" to="f19722e950a347d9946336728e7a9b9c" to-iid="779a4cd4f1d1476ea87da5d9a66f8c12" to-field="a7b64ac4b5cba4a7e9b2cb89ee667f597861" />
+              </item>
+              <item id="e625c48cb2dc457ca67b3439a13f2859" iid="c95d6f52160043beb94d8cd8cc8b8ca8" creation-date="07/27/2021 08:03:55" order-index="30" type="entity">
+                <layout ax="873.5" ay="542" awidth="302" aheight="255" x="873.5" y="542" width="302" height="255" rotation-center="81,-47" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="f777fa33a2e642e5a85752fda0dbc5af" iid="434cb1ae7efb4037b66c862abeed0425" creation-date="07/27/2021 08:07:55" order-index="31" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="1176" y1="664" x2="1884" y2="579" start-border-pos="0.370098039215686" end-border-pos="0.945180084745763" start-local-pos="122" end-local-pos="103" name-position="0,20">
+                  <points>
+                    <point x="1176" y="664" />
+                    <point x="1884" y="579" />
+                  </points>
+                </layout>
+                <relation from="e625c48cb2dc457ca67b3439a13f2859" from-iid="c95d6f52160043beb94d8cd8cc8b8ca8" from-field="aa3b587d5fb034328a4991dcbc7daf00b106" to="24a5c2e6d7df4dd380da583904b6e81c" to-iid="79f5dcb934c842a1bddc246988b2b33b" to-field="a7dde6800c37940389459c8caf8b01322535" />
+              </item>
+              <item id="41c493b34a4740ed82e16919f89fbba3" iid="ea106ef76fdd45f5839feffbac78ee3f" creation-date="07/27/2021 08:08:34" order-index="32" type="entity">
+                <layout ax="1033" ay="1073" awidth="239" aheight="161" x="1033" y="1073" width="239" height="160" rotation-center="-49.5,0" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="c3f22d02ade24ffd981ca1a609f73825" iid="d4b130aacdf4473d8d6f1ae9b35cda0d" creation-date="07/27/2021 08:10:25" order-index="33" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="1272" y1="1160" x2="2600" y2="1742" start-border-pos="0.384316770186335" end-border-pos="0.919140625" start-local-pos="87" end-local-pos="104" name-position="0,20">
+                  <points>
+                    <point x="1272" y="1160" />
+                    <point x="2600" y="1742" />
+                  </points>
+                </layout>
+                <relation from="41c493b34a4740ed82e16919f89fbba3" from-iid="ea106ef76fdd45f5839feffbac78ee3f" from-field="a9f40b3045d534715bc75f93b5de3cd74905" to="f19722e950a347d9946336728e7a9b9c" to-iid="779a4cd4f1d1476ea87da5d9a66f8c12" to-field="a7b64ac4b5cba4a7e9b2cb89ee667f597861" />
+              </item>
+              <item id="6034e62ca4ba43d69abeadeee64def53" iid="b8b0da12dfac4024bf340983f9f0d712" creation-date="07/27/2021 08:11:10" order-index="34" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-end-point="true" lock-to-fields="true" auto-path="" x1="1033" y1="1178" x2="1176" y2="646" start-border-pos="0.836180124223602" end-border-pos="0.351470588235294" start-local-pos="105" end-local-pos="104" name-position="0,20">
+                  <points>
+                    <point x="1033" y="1178" />
+                    <point x="1176" y="646" />
+                  </points>
+                </layout>
+                <relation from="41c493b34a4740ed82e16919f89fbba3" from-iid="ea106ef76fdd45f5839feffbac78ee3f" from-field="aa7d5cd971646424ab02fb990e6823b3b905" to="e625c48cb2dc457ca67b3439a13f2859" to-iid="c95d6f52160043beb94d8cd8cc8b8ca8" to-field="a4ded5b1e1e7a49daa7d843e6dba2ce46106" />
+              </item>
+              <item id="172a3651648c44b8b661ba763f4664b8" iid="36e9a4eb41f8496bb4a1cb1f625a3b51" creation-date="07/27/2021 08:11:58" order-index="35" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="1176" y1="760" x2="1862" y2="1262" start-border-pos="0.463235294117647" end-border-pos="0.932421875" start-local-pos="218" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="1176" y="760" />
+                    <point x="1862" y="1262" />
+                  </points>
+                </layout>
+                <relation from="e625c48cb2dc457ca67b3439a13f2859" from-iid="c95d6f52160043beb94d8cd8cc8b8ca8" from-field="a035a95b39fdf4b9d96110cf3895f6076106" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="39833c754fd241e99f91c02bbd9619f6" iid="3ca02bd0165941b284a204572d187e43" creation-date="07/27/2021 08:12:23" order-index="36" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="1176" y1="778" x2="1862" y2="1262" start-border-pos="0.481862745098039" end-border-pos="0.932421875" start-local-pos="236" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="1176" y="778" />
+                    <point x="1862" y="1262" />
+                  </points>
+                </layout>
+                <relation from="e625c48cb2dc457ca67b3439a13f2859" from-iid="c95d6f52160043beb94d8cd8cc8b8ca8" from-field="a9db7711b42354ce1814b2febf64e1c7f106" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="f37cd509043e4341b287f015399edb95" iid="0b76e177c91146009ba75aebd5a5517c" creation-date="07/27/2021 08:15:58" order-index="37" type="entity">
+                <layout ax="831" ay="1915" awidth="441" aheight="472" x="831" y="1915" width="441" height="472" rotation-center="-57.5,-155.5" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="99ecd9947c8e41048d60312c34fac142" iid="44978904104341feb8ff4e98b166b358" creation-date="07/27/2021 08:22:11" order-index="38" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="1272" y1="2284" x2="1862" y2="1262" start-border-pos="0.445709745762712" end-border-pos="0.932421875" start-local-pos="369" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="1272" y="2284" />
+                    <point x="1862" y="1262" />
+                  </points>
+                </layout>
+                <relation from="f37cd509043e4341b287f015399edb95" from-iid="0b76e177c91146009ba75aebd5a5517c" from-field="a65c1c1d127734c39935e405aae8193ac959" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="22d72ed3bd4e468da95c6ef166ad6830" iid="61f35c078734479a8ac44b4175009daa" creation-date="07/27/2021 08:22:44" order-index="39" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="1272" y1="2304" x2="1862" y2="1262" start-border-pos="0.455773305084746" end-border-pos="0.932421875" start-local-pos="389" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="1272" y="2304" />
+                    <point x="1862" y="1262" />
+                  </points>
+                </layout>
+                <relation from="f37cd509043e4341b287f015399edb95" from-iid="0b76e177c91146009ba75aebd5a5517c" from-field="af234efad39804df2888a5629fdc290d9959" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="4629c8efe5764821a4f2ffb806413d2d" iid="a8224407a4be49b9a96cdea96c056054" creation-date="07/27/2021 08:26:11" order-index="41" type="entity">
+                <layout ax="970" ay="1546" awidth="403" aheight="289" x="970" y="1546" width="403" height="289" rotation-center="-131.5,-64" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="e80985e7fce14193b34889876668ff81" iid="aed881e5e9074359a10bd1cac19d9d0e" creation-date="07/27/2021 08:32:24" order-index="42" type="entity">
+                <layout ax="970" ay="1276" awidth="302" aheight="255" x="970" y="1276" width="302" height="255" rotation-center="-81,3" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="6b0f4effcc524aaa89b6ea063ce02c78" iid="9fabc9f3a31e41c3a1efa275bcf8c796" creation-date="07/27/2021 08:35:48" order-index="43" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="1272" y1="1380" x2="1884" y2="579" start-border-pos="0.351470588235294" end-border-pos="0.945180084745763" start-local-pos="104" end-local-pos="103" name-position="0,20">
+                  <points>
+                    <point x="1272" y="1380" />
+                    <point x="1884" y="579" />
+                  </points>
+                </layout>
+                <relation from="e80985e7fce14193b34889876668ff81" from-iid="aed881e5e9074359a10bd1cac19d9d0e" from-field="a909885cbfed747b798799b779e7fcfab446" to="24a5c2e6d7df4dd380da583904b6e81c" to-iid="79f5dcb934c842a1bddc246988b2b33b" to-field="a7dde6800c37940389459c8caf8b01322535" />
+              </item>
+              <item id="01ce4003e9ff46e890652dffa23fe01b" iid="6a21714cd4d74d6a8a44368ec3ef7a96" creation-date="07/27/2021 08:36:33" order-index="44" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="1373" y1="1632" x2="2600" y2="1742" start-border-pos="0.324826989619377" end-border-pos="0.919140625" start-local-pos="86" end-local-pos="104" name-position="0,20">
+                  <points>
+                    <point x="1373" y="1632" />
+                    <point x="2600" y="1742" />
+                  </points>
+                </layout>
+                <relation from="4629c8efe5764821a4f2ffb806413d2d" from-iid="a8224407a4be49b9a96cdea96c056054" from-field="a11608f1f311d4da09f10c0070b88b5f2306" to="f19722e950a347d9946336728e7a9b9c" to-iid="779a4cd4f1d1476ea87da5d9a66f8c12" to-field="a7b64ac4b5cba4a7e9b2cb89ee667f597861" />
+              </item>
+              <item id="167a4ad792514f09a7ae7527b8d0e7f6" iid="2b905595bd564a4d83a81604e4aa9664" creation-date="07/27/2021 08:37:11" order-index="45" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="970" y1="1652" x2="1272" y2="2018" start-border-pos="0.908737024221453" end-border-pos="0.304819915254237" start-local-pos="106" end-local-pos="103" name-position="0,20">
+                  <points>
+                    <point x="970" y="1652" />
+                    <point x="1272" y="2018" />
+                  </points>
+                </layout>
+                <relation from="4629c8efe5764821a4f2ffb806413d2d" from-iid="a8224407a4be49b9a96cdea96c056054" from-field="a2f2c9c5672b7413aba974fc785737ec5306" to="f37cd509043e4341b287f015399edb95" to-iid="0b76e177c91146009ba75aebd5a5517c" to-field="acd3b80d7b7ca448b98699942d2ca060a959" />
+              </item>
+              <item id="559c3bab33704212a52e594be57174e9" iid="83cdd40be1a34a8cb05c7c64b6720ff2" creation-date="07/27/2021 08:37:45" order-index="46" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="970" y1="1398" x2="1272" y2="2018" start-border-pos="0.879901960784314" end-border-pos="0.304819915254237" start-local-pos="122" end-local-pos="103" name-position="0,20">
+                  <points>
+                    <point x="970" y="1398" />
+                    <point x="1272" y="2018" />
+                  </points>
+                </layout>
+                <relation from="e80985e7fce14193b34889876668ff81" from-iid="aed881e5e9074359a10bd1cac19d9d0e" from-field="a99ec607b847d4f78beae62fd8ac95f4d636" to="f37cd509043e4341b287f015399edb95" to-iid="0b76e177c91146009ba75aebd5a5517c" to-field="acd3b80d7b7ca448b98699942d2ca060a959" />
+              </item>
+              <item id="di695f5776397544efaecb3f3c01c329ca5845" iid="43c4e7069183458cbcca98a0aa160a0d" name="" creation-date="07/27/2021 08:48:41" order-index="47" type="diagram-description">
+                <layout ax="1023" ay="213" awidth="350" aheight="180" x="1023" y="213" width="350" height="180" />
+              </item>
+              <item id="9780151cdc1c40fbb9227d75cac4e47f" iid="e1b5eaa7341c435daba5b4b05028b878" creation-date="07/30/2021 18:43:54" order-index="48" type="entity">
+                <layout ax="1495" ay="-288" awidth="389" aheight="536" x="1495" y="-288" width="389" height="504" rotation-center="127.5,8" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="2fd41530778f42de8956c9feeb3bbf41" iid="f853dd7ab8424defa7f69407e41629a7" creation-date="07/30/2021 19:01:29" order-index="49" type="entity">
+                <layout ax="2017" ay="-40" awidth="350" aheight="351" x="2017" y="-40" width="350" height="351" rotation-center="-77,-88" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="d1c3e65e95da47eab43c9ba895d6142e" iid="81cf584b5dfe4dc6b47cbbb6e69d42e0" creation-date="07/30/2021 19:06:37" order-index="50" type="entity">
+                <layout ax="2007" ay="-475" awidth="345" aheight="402" x="2007" y="-475" width="326" height="180" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+              <item id="1cc24f2dd2ac464587d23aab5417cd19" iid="35bcb5ab9cd7483695d73bab41dd3310" creation-date="07/30/2021 19:20:26" order-index="51" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="2017" y1="66" x2="1884" y2="-202" start-border-pos="0.92485754985755" end-border-pos="0.290345149253731" start-local-pos="106" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2017" y="66" />
+                    <point x="1884" y="-202" />
+                  </points>
+                </layout>
+                <relation from="2fd41530778f42de8956c9feeb3bbf41" from-iid="f853dd7ab8424defa7f69407e41629a7" from-field="aec5726bbb3ef45ae96fd7e61eaf18450688" to="9780151cdc1c40fbb9227d75cac4e47f" to-iid="e1b5eaa7341c435daba5b4b05028b878" to-field="a836d1470167941b0bc7b67325c2656a542" />
+              </item>
+              <item id="95efd1bdeb554b6c916e300354b3ccc3" iid="1c0ac9892e064c9ca2d29a32da2290ac" creation-date="07/30/2021 19:22:30" order-index="52" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="2017" y1="85" x2="1272" y2="2018" start-border-pos="0.911324786324786" end-border-pos="0.304819915254237" start-local-pos="125" end-local-pos="103" name-position="0,20">
+                  <points>
+                    <point x="2017" y="85" />
+                    <point x="1272" y="2018" />
+                  </points>
+                </layout>
+                <relation from="2fd41530778f42de8956c9feeb3bbf41" from-iid="f853dd7ab8424defa7f69407e41629a7" from-field="a4d1399a1d86a42df9c9641271aa01d41689" to="f37cd509043e4341b287f015399edb95" to-iid="0b76e177c91146009ba75aebd5a5517c" to-field="acd3b80d7b7ca448b98699942d2ca060a959" />
+              </item>
+              <item id="906eead6a8354ae99b0f0695156219ba" iid="b93f994935a046efb8b6730c3978f99d" creation-date="07/30/2021 19:23:50" order-index="54" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="2017" y1="217" x2="2164" y2="1262" start-border-pos="0.816595441595442" end-border-pos="0.317578125" start-local-pos="257" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2017" y="217" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="2fd41530778f42de8956c9feeb3bbf41" from-iid="f853dd7ab8424defa7f69407e41629a7" from-field="ab90a9250329346a8a3d9d0fbf6524ee9689" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="3a7fc8f0ab3f4497b47cabeff2cc069f" iid="475a07fec22340e8b38a94395342285b" creation-date="07/30/2021 19:25:19" order-index="55" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="2017" y1="236" x2="2164" y2="1262" start-border-pos="0.803062678062678" end-border-pos="0.317578125" start-local-pos="276" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2017" y="236" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="2fd41530778f42de8956c9feeb3bbf41" from-iid="f853dd7ab8424defa7f69407e41629a7" from-field="a126e4e7b67984579bebb002927b8b5f9689" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="f918772a8d8c43479ad823d1bf5d3a10" iid="ca9ea41e37dc475aa64b7ac9e5b3fa3a" creation-date="07/30/2021 19:26:13" order-index="56" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="1884" y1="-164" x2="2007" y2="-371" start-border-pos="0.308069029850746" end-border-pos="0.935634328358209" start-local-pos="124" end-local-pos="104" name-position="0,20">
+                  <points>
+                    <point x="1884" y="-164" />
+                    <point x="2007" y="-371" />
+                  </points>
+                </layout>
+                <relation from="9780151cdc1c40fbb9227d75cac4e47f" from-iid="e1b5eaa7341c435daba5b4b05028b878" from-field="acbabbdba19d5413aafc26efe82a5b8f6891" to="d1c3e65e95da47eab43c9ba895d6142e" to-iid="81cf584b5dfe4dc6b47cbbb6e69d42e0" to-field="ae147cba260b242c894a5af6f9110bef1688" />
+              </item>
+              <item id="2448cc44809742289e2467ea6f26d01b" iid="b1406eafb52443e795b2ba6fb46f1310" creation-date="07/30/2021 19:27:05" order-index="57" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="1884" y1="-183" x2="1884" y2="579" start-border-pos="0.299207089552239" end-border-pos="0.945180084745763" start-local-pos="105" end-local-pos="103" name-position="0,20">
+                  <points>
+                    <point x="1884" y="-183" />
+                    <point x="1884" y="579" />
+                  </points>
+                </layout>
+                <relation from="9780151cdc1c40fbb9227d75cac4e47f" from-iid="e1b5eaa7341c435daba5b4b05028b878" from-field="ae2285b7d2710460c91b8a2b1aa77652649" to="24a5c2e6d7df4dd380da583904b6e81c" to-iid="79f5dcb934c842a1bddc246988b2b33b" to-field="a7dde6800c37940389459c8caf8b01322535" />
+              </item>
+              <item id="8aea7379f8474a04b5e51b7b9fbbc356" iid="baa28d2dbba242ce914492489dbbae96" creation-date="07/30/2021 19:27:42" order-index="58" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="1884" y1="217" x2="1862" y2="1262" start-border-pos="0.485307835820896" end-border-pos="0.932421875" start-local-pos="505" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="1884" y="217" />
+                    <point x="1862" y="1262" />
+                  </points>
+                </layout>
+                <relation from="9780151cdc1c40fbb9227d75cac4e47f" from-iid="e1b5eaa7341c435daba5b4b05028b878" from-field="a438eedb4a324498a84a5d3e9138f3b3551" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="141789e5d3ac4fe09df788270eb54442" iid="06a1acfaf8714478afd09d0c43f1bae6" creation-date="07/30/2021 19:28:02" order-index="59" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-start-point="true" lock-to-fields="true" auto-path="" x1="1884" y1="236" x2="1862" y2="1262" start-border-pos="0.494169776119403" end-border-pos="0.932421875" start-local-pos="524" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="1884" y="236" />
+                    <point x="1862" y="1262" />
+                  </points>
+                </layout>
+                <relation from="9780151cdc1c40fbb9227d75cac4e47f" from-iid="e1b5eaa7341c435daba5b4b05028b878" from-field="ab2a2917382a640a9af87c3c19051169951" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="0a05eb01810048d3a58d3644b1dcd3e1" iid="a5cd7a33338b40b8897c2932a43338f1" creation-date="07/30/2021 19:29:05" order-index="60" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="2007" y1="-125" x2="2164" y2="1262" start-border-pos="0.78202736318408" end-border-pos="0.317578125" start-local-pos="350" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2007" y="-125" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="d1c3e65e95da47eab43c9ba895d6142e" from-iid="81cf584b5dfe4dc6b47cbbb6e69d42e0" from-field="a20e8dcf379084851a37dcc019320cf7a690" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="a8ae5cb0e7c54b33b02261f80eb94ce0" iid="7163c81550fe48f09f07ee740174dd45" creation-date="07/30/2021 19:29:31" order-index="61" type="relation">
+                <layout start-role-position="25,15" end-role-position="25,-15" line-style="straight" lock-to-fields="true" auto-path="" x1="2007" y1="-106" x2="2164" y2="1262" start-border-pos="0.77021144278607" end-border-pos="0.317578125" start-local-pos="369" end-local-pos="86" name-position="0,20">
+                  <points>
+                    <point x="2007" y="-106" />
+                    <point x="2164" y="1262" />
+                  </points>
+                </layout>
+                <relation from="d1c3e65e95da47eab43c9ba895d6142e" from-iid="81cf584b5dfe4dc6b47cbbb6e69d42e0" from-field="a1e260767b3c44d3887ce747ee6ce2c43691" to="ef322c9446f34d3db88bcf4cbdcbbbda" to-iid="68002f8afdb045bea4ad4abf68c5d193" to-field="a807a3f93ff154a9bbd2f13a3b9971b2c353" />
+              </item>
+              <item id="6edb189ac3fd441594f0948a4b16169b" iid="fa54f73371fc4274a89ca4a1e1dbf0b8" creation-date="08/02/2021 08:20:06" order-index="62" type="entity">
+                <layout ax="1050" ay="-326" awidth="322" aheight="517" x="1050" y="-326" width="322" height="515" rotation-center="-94,-37.5" />
+                <erd-entity show-nullability="true" show-description="true" />
+              </item>
+            </layer>
+          </diagram>
+        </model>
+        <model id="pa83819adb3344100a6abf2bd7dedc302_998672692" name="ProcessServer" namespace="" order-index="3">
+          <meta>
+            <authors>
+              <author>Dalibor Votruba</author>
+            </authors>
+            <description />
+            <creation-date>07/26/2021 15:51:41</creation-date>
+            <change-date>01/01/0001 00:00:00</change-date>
+            <revision-count>0</revision-count>
+            <version />
+          </meta>
+          <documentation>
+            <text>
+              <default>
+                <style font-name="Segoe UI" font-size="11.25">
+                  <text>
+                    <solid-brush color="#FF000000" />
+                  </text>
+                </style>
+              </default>
+              <styles />
+              <content>
+                <paragraph>
+                  <style numbering-type="None">
+                    <numbering name="" multi-level="false">
+                      <numbering-level type="None" level="0" format="{0}." />
+                    </numbering>
+                  </style>
+                  <p>
+                    <t>Provides </t>
+                  </p>
+                  <p>
+                    <t>whole </t>
+                  </p>
+                  <p>
+                    <t>document </t>
+                  </p>
+                  <p>
+                    <t>processing </t>
+                  </p>
+                  <p>
+                    <t>pipeline</t>
+                  </p>
+                  <p>
+                    <t> </t>
+                  </p>
+                  <p>
+                    <t>(via </t>
+                  </p>
+                  <p>
+                    <t>Houdini </t>
+                  </p>
+                  <p>
+                    <t>application)
+</t>
+                  </p>
+                </paragraph>
+              </content>
+            </text>
+          </documentation>
+          <abstract-items />
+          <sub-models />
+        </model>
+      </sub-models>
+    </model>
+    <model id="pabb2782ea51644768fd569b1494af7dd_115017310" name="Application" namespace="" order-index="2" expanded="true">
+      <meta>
+        <authors>
+          <author>Dalibor Votruba</author>
+        </authors>
+        <description />
+        <creation-date>07/26/2021 15:51:57</creation-date>
+        <change-date>01/01/0001 00:00:00</change-date>
+        <revision-count>0</revision-count>
+        <version />
+      </meta>
+      <abstract-items />
+      <sub-models>
+        <model id="p235a72e88448453dae59194758ba09e0_767848966" name="AppServer" namespace="" order-index="2" expanded="true">
+          <meta>
+            <authors>
+              <author />
+            </authors>
+            <description />
+            <creation-date>07/27/2021 17:27:11</creation-date>
+            <change-date>01/01/0001 00:00:00</change-date>
+            <revision-count>0</revision-count>
+            <version />
+          </meta>
+          <documentation>
+            <text>
+              <default>
+                <style font-name="Segoe UI" font-size="11.25">
+                  <text>
+                    <solid-brush color="#FF000000" />
+                  </text>
+                </style>
+              </default>
+              <styles />
+              <content>
+                <paragraph>
+                  <style numbering-type="None">
+                    <numbering name="" multi-level="false">
+                      <numbering-level type="None" level="0" format="{0}." />
+                    </numbering>
+                  </style>
+                  <p>
+                    <t>AppServer </t>
+                  </p>
+                  <p>
+                    <t>provide </t>
+                  </p>
+                  <p>
+                    <t>following </t>
+                  </p>
+                  <p>
+                    <t>functionality:
+</t>
+                  </p>
+                </paragraph>
+                <paragraph>
+                  <style numbering-type="None">
+                    <numbering name="" multi-level="false">
+                      <numbering-level type="None" level="0" format="{0}." />
+                    </numbering>
+                  </style>
+                  <p>
+                    <t>- </t>
+                  </p>
+                  <p>
+                    <t>Web </t>
+                  </p>
+                  <p>
+                    <t>presentation
+</t>
+                  </p>
+                </paragraph>
+                <paragraph>
+                  <style numbering-type="None">
+                    <numbering name="" multi-level="false">
+                      <numbering-level type="None" level="0" format="{0}." />
+                    </numbering>
+                  </style>
+                  <p>
+                    <t>- </t>
+                  </p>
+                  <p>
+                    <t>Client </t>
+                  </p>
+                  <p>
+                    <t>workspace </t>
+                  </p>
+                  <p>
+                    <t>application
+</t>
+                  </p>
+                </paragraph>
+                <paragraph>
+                  <style numbering-type="None">
+                    <numbering name="" multi-level="false">
+                      <numbering-level type="None" level="0" format="{0}." />
+                    </numbering>
+                  </style>
+                  <p>
+                    <t>- </t>
+                  </p>
+                  <p>
+                    <t>B2B </t>
+                  </p>
+                  <p>
+                    <t>API
+</t>
+                  </p>
+                </paragraph>
+                <paragraph>
+                  <style numbering-type="None">
+                    <numbering name="" multi-level="false">
+                      <numbering-level type="None" level="0" format="{0}." />
+                    </numbering>
+                  </style>
+                  <p>
+                    <t>- </t>
+                  </p>
+                  <p>
+                    <t>Internal </t>
+                  </p>
+                  <p>
+                    <t>API </t>
+                  </p>
+                  <p>
+                    <t>(ProcessServer)</t>
+                  </p>
+                  <p>
+                    <t> 
+</t>
+                  </p>
+                </paragraph>
+              </content>
+            </text>
+          </documentation>
+          <abstract-items />
+          <sub-models>
+            <model id="p7c079f95c19c4380b2decd2fea2f51c7_866399183" name="UI" namespace="" order-index="1" expanded="true">
+              <meta>
+                <authors>
+                  <author> </author>
+                </authors>
+                <description />
+                <creation-date>07/27/2021 17:27:29</creation-date>
+                <change-date>01/01/0001 00:00:00</change-date>
+                <revision-count>0</revision-count>
+                <version />
+              </meta>
+              <abstract-items />
+              <sub-models>
+                <model id="p6b0a6315022f4794bbaff1d6616f17d2_903382229" name="Common" namespace="" order-index="2">
+                  <meta>
+                    <authors>
+                      <author />
+                    </authors>
+                    <description />
+                    <creation-date>07/27/2021 17:29:52</creation-date>
+                    <change-date>01/01/0001 00:00:00</change-date>
+                    <revision-count>0</revision-count>
+                    <version />
+                  </meta>
+                  <documentation>
+                    <text>
+                      <default>
+                        <style font-name="Segoe UI" font-size="11.25">
+                          <text>
+                            <solid-brush color="#FF000000" />
+                          </text>
+                        </style>
+                      </default>
+                      <styles />
+                      <content>
+                        <paragraph>
+                          <style numbering-type="None">
+                            <numbering name="" multi-level="false">
+                              <numbering-level type="None" level="0" format="{0}." />
+                            </numbering>
+                          </style>
+                          <p>
+                            <t>Common </t>
+                          </p>
+                          <p>
+                            <t>elements </t>
+                          </p>
+                          <p>
+                            <t>specification </t>
+                          </p>
+                          <p>
+                            <t>and </t>
+                          </p>
+                          <p>
+                            <t>behaviors
+</t>
+                          </p>
+                        </paragraph>
+                      </content>
+                    </text>
+                  </documentation>
+                  <abstract-items />
+                  <sub-models />
+                  <diagram type="web-page" id="pc0d1f9bf8ba74f3c998aa5b0550efba6_158460475" name="Layout" order-index="0" expanded="true" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default">
+                    <style>
+                      <background-color index="1" color="#FFFFFFFF" />
+                      <background-color index="2" color="#FFFFFFFF" />
+                      <background-type type="solid" />
+                    </style>
+                    <meta>
+                      <authors>
+                        <author>Dalibor Votruba</author>
+                      </authors>
+                      <description />
+                      <creation-date>07/27/2021 17:30:56</creation-date>
+                      <change-date>07/27/2021 17:40:04</change-date>
+                      <revision-count>0</revision-count>
+                      <version>1.0.0.</version>
+                    </meta>
+                    <documentation>
+                      <text>
+                        <default>
+                          <style font-name="Segoe UI" font-size="11.25">
+                            <text>
+                              <solid-brush color="#FF000000" />
+                            </text>
+                          </style>
+                        </default>
+                        <styles />
+                        <content>
+                          <paragraph>
+                            <style numbering-type="None">
+                              <numbering name="" multi-level="false">
+                                <numbering-level type="None" level="0" format="{0}." />
+                              </numbering>
+                            </style>
+                            <p>
+                              <t>Defines </t>
+                            </p>
+                            <p>
+                              <t>global</t>
+                            </p>
+                            <p>
+                              <t> </t>
+                            </p>
+                            <p>
+                              <t>page </t>
+                            </p>
+                            <p>
+                              <t>layout </t>
+                            </p>
+                            <p>
+                              <t>and </t>
+                            </p>
+                            <p>
+                              <t>namespace
+</t>
+                            </p>
+                          </paragraph>
+                        </content>
+                      </text>
+                    </documentation>
+                    <abstract-items>
+                      <item id="28f89d7e20304320acd1bb72a894d695" cid="ELEM029" type="ui-area" name="Header" style-class="Flat Light Cyan" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:40:04">
+                        <stereotypes>
+                          <stereotype name="block" />
+                        </stereotypes>
+                        <stereotype-instances>
+                          <stereotype id="28f89d7e20304320acd1bb72a894d695_block_c" type="block" encapsulated="false" />
+                        </stereotype-instances>
+                        <style class="Flat Light Cyan" />
+                      </item>
+                      <item id="37e604f9a2b848b69743cfd4dbaa5581" cid="ELEM026" type="ui-area" name="Menu" style-class="Flat Light Blue" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:32:15">
+                        <stereotypes>
+                          <stereotype name="block" />
+                        </stereotypes>
+                        <stereotype-instances>
+                          <stereotype id="37e604f9a2b848b69743cfd4dbaa5581_block_c" type="block" encapsulated="false" />
+                        </stereotype-instances>
+                        <style class="Flat Light Blue" />
+                      </item>
+                      <item id="ab8a712f3dcb429abcb5f042218489c6" cid="ELEM027" type="ui-area" name="Content" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:38:25">
+                        <stereotypes>
+                          <stereotype name="block" />
+                        </stereotypes>
+                        <stereotype-instances>
+                          <stereotype id="ab8a712f3dcb429abcb5f042218489c6_block_c" type="block" encapsulated="false" />
+                        </stereotype-instances>
+                        <style class="Flat Light Yellow" />
+                      </item>
+                      <item id="380def74f24d44ba98fefdbecab3861e" cid="ELEM028" type="ui-area" name="Footer" style-class="Flat Light Cyan" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:39:19">
+                        <stereotypes>
+                          <stereotype name="block" />
+                        </stereotypes>
+                        <stereotype-instances>
+                          <stereotype id="380def74f24d44ba98fefdbecab3861e_block_c" type="block" encapsulated="false" />
+                        </stereotype-instances>
+                        <style class="Flat Light Cyan" />
+                      </item>
+                    </abstract-items>
+                    <layer id="a1d2d5a8f4ca4a06b2e3de0e38782673" name="Default" visible="true" enabled="true" locked="false">
+                      <item id="37e604f9a2b848b69743cfd4dbaa5581" iid="3c75feb3053048f69c6b32a9c2f13a6d" show-name="true" show-stereotypes="true" creation-date="07/27/2021 17:32:15" order-index="1" presentation-style="classifier" type="ui-area">
+                        <layout ax="-21" ay="45" awidth="1221" aheight="66" x="-22" y="52" width="1221" height="66" rotation-center="-535.5,42" />
+                      </item>
+                      <item id="ab8a712f3dcb429abcb5f042218489c6" iid="f28524ee518940eea332145fd03c5447" show-stereotypes="true" creation-date="07/27/2021 17:38:25" order-index="2" presentation-style="classifier" type="ui-area">
+                        <layout ax="-22" ay="111" awidth="1223" aheight="302" x="-22" y="111" width="1223" height="302" />
+                      </item>
+                      <item id="380def74f24d44ba98fefdbecab3861e" iid="0e8d02c29ec14d0183a3ed8333675223" creation-date="07/27/2021 17:39:19" order-index="3" presentation-style="classifier" type="ui-area">
+                        <layout ax="-22.5" ay="413" awidth="1224" aheight="90" x="-22.5" y="413" width="1224" height="90" />
+                      </item>
+                      <item id="28f89d7e20304320acd1bb72a894d695" iid="2aad74b185ec48df87e4ff55c94e4459" creation-date="07/27/2021 17:40:04" order-index="4" presentation-style="classifier" type="ui-area">
+                        <layout ax="-21" ay="-17" awidth="1221" aheight="62" x="-21" y="-17" width="1221" height="62" />
+                      </item>
+                    </layer>
+                  </diagram>
+                </model>
+                <model id="p992e3702cd0d44da8dc8b36fc9b073c1_654616380" name="Contents" namespace="" order-index="5">
+                  <meta>
+                    <authors>
+                      <author>Dalibor Votruba</author>
+                    </authors>
+                    <description />
+                    <creation-date>07/27/2021 18:29:12</creation-date>
+                    <change-date>01/01/0001 00:00:00</change-date>
+                    <revision-count>0</revision-count>
+                    <version />
+                  </meta>
+                  <documentation>
+                    <text>
+                      <default>
+                        <style font-name="Segoe UI" font-size="11.25">
+                          <text>
+                            <solid-brush color="#FF000000" />
+                          </text>
+                        </style>
+                      </default>
+                      <styles />
+                      <content>
+                        <paragraph>
+                          <style numbering-type="None">
+                            <numbering name="" multi-level="false">
+                              <numbering-level type="None" level="0" format="{0}." />
+                            </numbering>
+                          </style>
+                          <p>
+                            <t>Describes </t>
+                          </p>
+                          <p>
+                            <t>how </t>
+                          </p>
+                          <p>
+                            <t>page </t>
+                          </p>
+                          <p>
+                            <t>content </t>
+                          </p>
+                          <p>
+                            <t>looks </t>
+                          </p>
+                          <p>
+                            <t>like </t>
+                          </p>
+                          <p>
+                            <t>depends </t>
+                          </p>
+                          <p>
+                            <t>on </t>
+                          </p>
+                          <p>
+                            <t>menu </t>
+                          </p>
+                          <p>
+                            <t>selection
+</t>
+                          </p>
+                        </paragraph>
+                      </content>
+                    </text>
+                  </documentation>
+                  <abstract-items />
+                  <sub-models />
+                  <diagram type="web-page" id="pa9e8615dc7934e09a02a6789ce6d8077_898314695" name="Home" order-index="1" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default">
+                    <style>
+                      <background-color index="1" color="#FFFFFFFF" />
+                      <background-color index="2" color="#FFFFFFFF" />
+                      <background-type type="solid" />
+                    </style>
+                    <meta>
+                      <authors>
+                        <author>Dalibor Votruba</author>
+                      </authors>
+                      <description />
+                      <creation-date>07/27/2021 18:31:18</creation-date>
+                      <change-date>07/27/2021 18:32:11</change-date>
+                      <revision-count>0</revision-count>
+                      <version />
+                    </meta>
+                    <abstract-items>
+                      <item id="536e596629294e408a9bb6c9e2706d83" cid="ELEM043" type="ui-panel" name="Content" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:31:52" />
+                      <item id="14e27863d1814c5c8c824973b787a302" cid="ELEM044" type="universal-connector" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:32:11" from="ab8a712f3dcb429abcb5f042218489c6" to="536e596629294e408a9bb6c9e2706d83">
+                        <connector />
+                      </item>
+                    </abstract-items>
+                    <layer id="6a08c506891f46aaa1ae6e3905c007de" name="Default" visible="true" enabled="true" locked="false">
+                      <item id="ab8a712f3dcb429abcb5f042218489c6" iid="85019daf3a2a4f12b484db140de3f13b" creation-date="07/27/2021 18:31:33" order-index="0" presentation-style="classifier" type="ui-area">
+                        <layout ax="-61" ay="138" awidth="150" aheight="150" x="-61" y="138" width="150" height="150" />
+                      </item>
+                      <item id="536e596629294e408a9bb6c9e2706d83" iid="0a37abac051b40159233abf796f39547" creation-date="07/27/2021 18:31:52" order-index="1" type="ui-panel">
+                        <layout ax="199" ay="132" awidth="953" aheight="568" x="199" y="132" width="953" height="568" />
+                      </item>
+                      <item id="14e27863d1814c5c8c824973b787a302" iid="0ddaac9527b34f9ba2609c945db86416" creation-date="07/27/2021 18:32:11" order-index="2" type="relation">
+                        <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="89" y1="213" x2="199" y2="214" start-border-pos="0.375" end-border-pos="0.963908450704225" start-local-pos="75" end-local-pos="82" name-position="0,20">
+                          <points>
+                            <point x="89" y="213" />
+                            <point x="199" y="214" />
+                          </points>
+                        </layout>
+                        <relation from="ab8a712f3dcb429abcb5f042218489c6" from-iid="85019daf3a2a4f12b484db140de3f13b" to="536e596629294e408a9bb6c9e2706d83" to-iid="0a37abac051b40159233abf796f39547" />
+                      </item>
+                    </layer>
+                  </diagram>
+                  <diagram type="web-page" id="p8db8321bf0794348ad450e194edbe0bf_648254925" name="Pricing" order-index="2" overview-order-index="0" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default" view-location="-100,-100">
+                    <style>
+                      <background-color index="1" color="#FFFFFFFF" />
+                      <background-color index="2" color="#FFFFFFFF" />
+                      <background-type type="solid" />
+                    </style>
+                    <meta>
+                      <authors>
+                        <author>Dalibor Votruba</author>
+                      </authors>
+                      <description />
+                      <creation-date>07/27/2021 18:32:57</creation-date>
+                      <change-date>07/27/2021 18:32:57</change-date>
+                      <revision-count>0</revision-count>
+                      <version />
+                    </meta>
+                    <abstract-items />
+                    <layer id="3d38995868e04180a77535ed131bb312" name="Default" visible="true" enabled="true" locked="false" />
+                  </diagram>
+                  <diagram type="web-page" id="pfba039763d6d4b1c994eafa404fb47ee_870563595" name="Documentation" order-index="3" overview-order-index="1" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default" view-location="-100,-100">
+                    <style>
+                      <background-color index="1" color="#FFFFFFFF" />
+                      <background-color index="2" color="#FFFFFFFF" />
+                      <background-type type="solid" />
+                    </style>
+                    <meta>
+                      <authors>
+                        <author>Dalibor Votruba</author>
+                      </authors>
+                      <description />
+                      <creation-date>07/27/2021 18:33:18</creation-date>
+                      <change-date>07/27/2021 18:33:18</change-date>
+                      <revision-count>0</revision-count>
+                      <version />
+                    </meta>
+                    <abstract-items />
+                    <layer id="d969cbedc70e4512b557caf096641ae5" name="Default" visible="true" enabled="true" locked="false" />
+                  </diagram>
+                  <diagram type="web-page" id="p9b326280fc3a4c74a6f15343f7793924_363568414" name="Support" order-index="4" overview-order-index="2" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default" view-location="-100,-100">
+                    <style>
+                      <background-color index="1" color="#FFFFFFFF" />
+                      <background-color index="2" color="#FFFFFFFF" />
+                      <background-type type="solid" />
+                    </style>
+                    <meta>
+                      <authors>
+                        <author>Dalibor Votruba</author>
+                      </authors>
+                      <description />
+                      <creation-date>07/27/2021 18:33:32</creation-date>
+                      <change-date>07/27/2021 18:33:32</change-date>
+                      <revision-count>0</revision-count>
+                      <version />
+                    </meta>
+                    <abstract-items />
+                    <layer id="523bb489e28445368a2244603dce0052" name="Default" visible="true" enabled="true" locked="false" />
+                  </diagram>
+                  <diagram type="web-page" id="p27882801a361488b92125253a94efbf8_939773975" name="Contacts" order-index="5" overview-order-index="3" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default" view-location="-100,-100">
+                    <style>
+                      <background-color index="1" color="#FFFFFFFF" />
+                      <background-color index="2" color="#FFFFFFFF" />
+                      <background-type type="solid" />
+                    </style>
+                    <meta>
+                      <authors>
+                        <author>Dalibor Votruba</author>
+                      </authors>
+                      <description />
+                      <creation-date>07/27/2021 18:33:51</creation-date>
+                      <change-date>07/27/2021 18:33:51</change-date>
+                      <revision-count>0</revision-count>
+                      <version />
+                    </meta>
+                    <abstract-items />
+                    <layer id="fdd04c7d2b9845d98d526fe7ae9c0798" name="Default" visible="true" enabled="true" locked="false" />
+                  </diagram>
+                  <diagram type="web-page" id="pf2c7e5e133694b60871182ec3e1099fc_466862063" name="Settings" order-index="6" overview-order-index="4" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default">
+                    <style>
+                      <background-color index="1" color="#FFFFFFFF" />
+                      <background-color index="2" color="#FFFFFFFF" />
+                      <background-type type="solid" />
+                    </style>
+                    <meta>
+                      <authors>
+                        <author>Dalibor Votruba</author>
+                      </authors>
+                      <description />
+                      <creation-date>07/27/2021 18:34:46</creation-date>
+                      <change-date>07/29/2021 15:30:34</change-date>
+                      <revision-count>0</revision-count>
+                      <version>1.0.0</version>
+                    </meta>
+                    <documentation>
+                      <text>
+                        <default>
+                          <style font-name="Segoe UI" font-size="11.25">
+                            <text>
+                              <solid-brush color="#FF000000" />
+                            </text>
+                          </style>
+                        </default>
+                        <styles />
+                        <content>
+                          <paragraph>
+                            <style numbering-type="None">
+                              <numbering name="" multi-level="false">
+                                <numbering-level type="None" level="0" format="{0}." />
+                              </numbering>
+                            </style>
+                            <p>
+                              <t>Content </t>
+                            </p>
+                            <p>
+                              <t>for </t>
+                            </p>
+                            <p>
+                              <t>Workspace </t>
+                            </p>
+                            <p>
+                              <t>edit </t>
+                            </p>
+                            <p>
+                              <t>(Settings)</t>
+                            </p>
+                            <p>
+                              <t> </t>
+                            </p>
+                            <p>
+                              <t>and </t>
+                            </p>
+                            <p>
+                              <t>new </t>
+                            </p>
+                            <p>
+                              <t>Workspace
+</t>
+                            </p>
+                          </paragraph>
+                        </content>
+                      </text>
+                    </documentation>
+                    <abstract-items>
+                      <item id="750d9ce0039b473cae878c55b91f30f4" cid="ELEM045" type="ui-panel" name="Content" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:36:35">
+                        <owned-items>
+                          <owned-item ref="b9fc662d5f2a4223a474dc64dbc50af1" />
+                          <owned-item ref="7cece9b6ef754c7cb94843618cd40ffb" />
+                        </owned-items>
+                      </item>
+                      <item id="bd76d20bad104c369e32529509179ce4" cid="ELEM046" type="universal-connector" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:37:20" from="ab8a712f3dcb429abcb5f042218489c6" to="750d9ce0039b473cae878c55b91f30f4">
+                        <connector />
+                      </item>
+                      <item id="b9fc662d5f2a4223a474dc64dbc50af1" cid="TBC001" type="ui-tab-control" name="TabControl1" style-class="" owner="750d9ce0039b473cae878c55b91f30f4" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:37:58">
+                        <owned-items>
+                          <owned-item ref="22743a3f7274406f8841e936d664c3c6" />
+                          <owned-item ref="fe106815c6b443e68f0dcd8eb2fa12ae" />
+                          <owned-item ref="2de3d1b0c1de4f7c8843aa22870c1d8f" />
+                          <owned-item ref="c630bfd53a2147a9ba1727a8ccc7bfa0" />
+                          <owned-item ref="4f1a4de9efef40329642ae1ddd71c33b" />
+                          <owned-item ref="b39132f92ffa40da83a8a11fe6b6bd3e" />
+                          <owned-item ref="f92a2f9e445544a9bbadbd1904af18a7" />
+                        </owned-items>
+                        <tab-control>
+                          <tabs>
+                            <tab id="uit-6dc91e09-33aa-4f7b-bab9-bd849de55ecd" active="true">Current</tab>
+                            <tab id="uit-73dd0100-4f94-4d70-9099-c46419417604">Addresses</tab>
+                            <tab id="uit-bf1ae456-c2b4-4c2b-bb3d-6c90087f9150" />
+                          </tabs>
+                        </tab-control>
+                      </item>
+                      <item id="7cece9b6ef754c7cb94843618cd40ffb" cid="BTN001" type="ui-button" name="New workspace" style-class="" owner="750d9ce0039b473cae878c55b91f30f4" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:39:26">
+                        <button />
+                      </item>
+                      <item id="22743a3f7274406f8841e936d664c3c6" cid="TXT001" type="ui-text-box" name="Name" style-class="" owner="b9fc662d5f2a4223a474dc64dbc50af1" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:39:59">
+                        <text-box password-dots="false" display-password-button="false" />
+                      </item>
+                      <item id="fe106815c6b443e68f0dcd8eb2fa12ae" cid="LBL008" type="ui-label" name="API Key" style-class="" owner="b9fc662d5f2a4223a474dc64dbc50af1" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:42:43" />
+                      <item id="2de3d1b0c1de4f7c8843aa22870c1d8f" cid="CMB001" type="ui-combo-box" name="CurrentBillingPlan" style-class="" owner="b9fc662d5f2a4223a474dc64dbc50af1" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:46:23" />
+                      <item id="c630bfd53a2147a9ba1727a8ccc7bfa0" cid="GRP001" type="ui-group-box" name="CurrentBillingPlan spending status" style-class="" owner="b9fc662d5f2a4223a474dc64dbc50af1" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:48:10" />
+                      <item id="4f1a4de9efef40329642ae1ddd71c33b" cid="BTN002" type="ui-button" name="Apply" style-class="" owner="b9fc662d5f2a4223a474dc64dbc50af1" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:48:54">
+                        <button />
+                      </item>
+                      <item id="c841c981fdc141a5a700c27552420b44" cid="ELEM047" type="ui-panel" name="Addresses" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:54:24">
+                        <owned-items>
+                          <owned-item ref="b0c27ce9882a4ace94f39e7001a645c2" />
+                          <owned-item ref="76b3ed0076134fdca03514dc1763856d" />
+                          <owned-item ref="f38650f2cd9a43d2ae8e195c6556da56" />
+                          <owned-item ref="8a9cff625cb44e6090ae18ef9ab4a8c1" />
+                          <owned-item ref="3b95ce4f203d4617834d9a2208526ab3" />
+                          <owned-item ref="698f4e8c9b7a4fcba311d00359ddc437" />
+                          <owned-item ref="2ac348442c8f4a4a8aa809ea31c895fa" />
+                          <owned-item ref="5b95ae76749d470f9d33e2c02a7e78da" />
+                          <owned-item ref="175431ed91bc4340b67810a522d635f5" />
+                          <owned-item ref="b6f7351cfff54aaf8d32aef84f71ffc4" />
+                          <owned-item ref="fd241a14ab9f4943b1c1cce0b6e9740d" />
+                          <owned-item ref="eb0366fc0a1748f3a81c1daa5d7cbbd7" />
+                          <owned-item ref="da884a0de168469a81304134345db574" />
+                          <owned-item ref="4efdfbae6ac5443bb0b631ba1f3b8dea" />
+                          <owned-item ref="e62cb3ca6e7b4486a276fac34dbc944b" />
+                        </owned-items>
+                      </item>
+                      <item id="52598f6b046b42ca883c7f402d6b9b28" cid="ELEM048" type="universal-connector" name="Addresses" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:55:03" from="c841c981fdc141a5a700c27552420b44" to="b9fc662d5f2a4223a474dc64dbc50af1">
+                        <connector />
+                      </item>
+                      <item id="b0c27ce9882a4ace94f39e7001a645c2" cid="LST001" type="ui-list-box" name="Addresses" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:55:33">
+                        <list-box>
+                          <list-items />
+                        </list-box>
+                      </item>
+                      <item id="76b3ed0076134fdca03514dc1763856d" cid="TXT002" type="ui-text-box" name="SubjectName" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:56:32">
+                        <text-box password-dots="false" display-password-button="false" />
+                      </item>
+                      <item id="f38650f2cd9a43d2ae8e195c6556da56" cid="TXT003" type="ui-text-box" name="Address1" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:57:01">
+                        <text-box password-dots="false" display-password-button="false" />
+                      </item>
+                      <item id="8a9cff625cb44e6090ae18ef9ab4a8c1" cid="TXT004" type="ui-text-box" name="Address2" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:57:15">
+                        <text-box password-dots="false" display-password-button="false" />
+                      </item>
+                      <item id="3b95ce4f203d4617834d9a2208526ab3" cid="TXT005" type="ui-text-box" name="City" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:57:40">
+                        <text-box password-dots="false" display-password-button="false" />
+                      </item>
+                      <item id="698f4e8c9b7a4fcba311d00359ddc437" cid="TXT006" type="ui-text-box" name="ZIP" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:58:18">
+                        <text-box password-dots="false" display-password-button="false" />
+                      </item>
+                      <item id="2ac348442c8f4a4a8aa809ea31c895fa" cid="TXT007" type="ui-text-box" name="Country" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:58:50">
+                        <text-box password-dots="false" display-password-button="false" />
+                      </item>
+                      <item id="5b95ae76749d470f9d33e2c02a7e78da" cid="TXT008" type="ui-text-box" name="TAXNumber" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:59:11">
+                        <text-box password-dots="false" display-password-button="false" />
+                      </item>
+                      <item id="175431ed91bc4340b67810a522d635f5" cid="TXT009" type="ui-text-box" name="VATNumber" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 19:59:29">
+                        <text-box password-dots="false" display-password-button="false" />
+                      </item>
+                      <item id="b6f7351cfff54aaf8d32aef84f71ffc4" cid="TXT010" type="ui-text-box" name="Phone" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 20:00:15">
+                        <text-box password-dots="false" display-password-button="false" />
+                      </item>
+                      <item id="fd241a14ab9f4943b1c1cce0b6e9740d" cid="TXT011" type="ui-text-box" name="Email" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 20:00:33">
+                        <text-box password-dots="false" display-password-button="false" />
+                      </item>
+                      <item id="eb0366fc0a1748f3a81c1daa5d7cbbd7" cid="BTN003" type="ui-button" name="New" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 20:01:05">
+                        <button />
+                      </item>
+                      <item id="da884a0de168469a81304134345db574" cid="BTN004" type="ui-button" name="Save" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 20:01:30">
+                        <button />
+                      </item>
+                      <item id="4efdfbae6ac5443bb0b631ba1f3b8dea" cid="BTN005" type="ui-button" name="Delete" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 20:01:49">
+                        <button />
+                      </item>
+                      <item id="e62cb3ca6e7b4486a276fac34dbc944b" cid="BTN006" type="ui-button" name="Set as default" style-class="" owner="c841c981fdc141a5a700c27552420b44" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 20:02:14">
+                        <button />
+                      </item>
+                      <item id="b39132f92ffa40da83a8a11fe6b6bd3e" cid="CMB002" type="ui-combo-box" name="CurrentBillingInfo" style-class="" owner="b9fc662d5f2a4223a474dc64dbc50af1" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 20:03:23" />
+                      <item id="f92a2f9e445544a9bbadbd1904af18a7" cid="LBL014" type="ui-label" name="API Key password" style-class="" owner="b9fc662d5f2a4223a474dc64dbc50af1" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/29/2021 15:16:42" />
+                    </abstract-items>
+                    <layer id="4bf0b15705844b48ba6835971930bad0" name="Default" visible="true" enabled="true" locked="false">
+                      <item id="ab8a712f3dcb429abcb5f042218489c6" iid="b6d6252499c64989b274af03ac0efbb8" creation-date="07/27/2021 18:36:07" order-index="0" presentation-style="classifier" type="ui-area">
+                        <layout ax="-558" ay="84" awidth="150" aheight="150" x="-558" y="84" width="150" height="150" />
+                      </item>
+                      <item id="750d9ce0039b473cae878c55b91f30f4" iid="1bebe0b44154420eb91c1e86a3ed5a65" creation-date="07/27/2021 19:36:35" order-index="1" type="ui-panel">
+                        <layout ax="146" ay="-18" awidth="1122" aheight="706" x="146" y="-18" width="1122" height="706" />
+                      </item>
+                      <item id="bd76d20bad104c369e32529509179ce4" iid="7c75ea1cd084437c9b20e17fd8d5a9f7" creation-date="07/27/2021 19:37:20" order-index="2" type="relation">
+                        <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="-408" y1="159" x2="146" y2="161" start-border-pos="0.375" end-border-pos="0.936614730878187" start-local-pos="75" end-local-pos="179" name-position="0,20">
+                          <points>
+                            <point x="-408" y="159" />
+                            <point x="146" y="161" />
+                          </points>
+                        </layout>
+                        <relation from="ab8a712f3dcb429abcb5f042218489c6" from-iid="b6d6252499c64989b274af03ac0efbb8" to="750d9ce0039b473cae878c55b91f30f4" to-iid="1bebe0b44154420eb91c1e86a3ed5a65" />
+                      </item>
+                      <item id="b9fc662d5f2a4223a474dc64dbc50af1" iid="c47d28a30ea940feb4e7947bc65e5c10" container="750d9ce0039b473cae878c55b91f30f4" container-iid="1bebe0b44154420eb91c1e86a3ed5a65" active-container-page="uit-6dc91e09-33aa-4f7b-bab9-bd849de55ecd" show-name="false" creation-date="07/27/2021 19:37:58" order-index="3" type="ui-tab-control">
+                        <layout ax="171" ay="38" awidth="1062" aheight="626" x="171" y="38" width="1062" height="626" rotation-center="7,0" container-layout="simple" />
+                        <tab-control active-tab="uit-6dc91e09-33aa-4f7b-bab9-bd849de55ecd" />
+                      </item>
+                      <item id="7cece9b6ef754c7cb94843618cd40ffb" iid="3b269c54e4114ece88dbc5cbc5708da5" container="750d9ce0039b473cae878c55b91f30f4" container-iid="1bebe0b44154420eb91c1e86a3ed5a65" creation-date="07/27/2021 19:39:26" order-index="4" type="ui-button">
+                        <layout ax="171" ay="0" awidth="150" aheight="28" x="171" y="0" width="150" height="28" />
+                      </item>
+                      <item id="22743a3f7274406f8841e936d664c3c6" iid="c991e1d189784df9b8b9f6d8f1b5ec01" container="b9fc662d5f2a4223a474dc64dbc50af1" container-iid="c47d28a30ea940feb4e7947bc65e5c10" container-page="uit-6dc91e09-33aa-4f7b-bab9-bd849de55ecd" creation-date="07/27/2021 19:39:59" order-index="5" type="ui-text-box">
+                        <layout ax="209" ay="95" awidth="202" aheight="28" x="209" y="95" width="202" height="28" rotation-center="-11.5,0" />
+                      </item>
+                      <item id="fe106815c6b443e68f0dcd8eb2fa12ae" iid="2783b226fdc34f239355f91421fbf4b5" container="b9fc662d5f2a4223a474dc64dbc50af1" container-iid="c47d28a30ea940feb4e7947bc65e5c10" container-page="uit-6dc91e09-33aa-4f7b-bab9-bd849de55ecd" creation-date="07/27/2021 19:42:43" order-index="6" type="ui-label">
+                        <layout ax="210" ay="133" awidth="201" aheight="28" x="210" y="133" width="201" height="28" />
+                      </item>
+                      <item id="24a5c2e6d7df4dd380da583904b6e81c" iid="ecc2d7084e914cd58d23d57fb90106ca" creation-date="07/27/2021 19:44:33" order-index="0" type="entity">
+                        <layout ax="-387" ay="269" awidth="427" aheight="380" x="-387" y="269" width="427" height="380" rotation-center="143.5,-110" />
+                        <erd-entity show-nullability="true" show-description="true" />
+                      </item>
+                      <item id="ffff693c63d845f9b0e790d6a21b9e82" iid="041fcaf1293844bbafc071ae742e3f11" creation-date="07/27/2021 19:44:57" order-index="0" type="entity">
+                        <layout ax="-398" ay="747" awidth="438" aheight="398" x="-398" y="747" width="438" height="398" rotation-center="-90,-119" />
+                        <erd-entity show-nullability="true" show-description="true" />
+                      </item>
+                      <item id="a0a6de69d8864c6f90ebdc1bea52e94d" iid="63669750130d4e4798207994f57e4735" creation-date="07/27/2021 19:45:42" order-index="0" type="relation">
+                        <layout start-role-position="25,15" end-role-position="25,-15" line-style="oblique" lock-to-fields="false" auto-path="" x1="-177" y1="747" x2="-176" y2="649" start-border-pos="0.126166165147198" end-border-pos="0.626434844327475" name-position="0,20">
+                          <points>
+                            <point x="-177" y="747" />
+                            <point x="-176" y="649" />
+                          </points>
+                        </layout>
+                        <relation from="ffff693c63d845f9b0e790d6a21b9e82" from-iid="041fcaf1293844bbafc071ae742e3f11" from-field="af8c40d1e7095452ba8dfacbf59c966b8323" to="24a5c2e6d7df4dd380da583904b6e81c" to-iid="ecc2d7084e914cd58d23d57fb90106ca" to-field="a7dde6800c37940389459c8caf8b01322535" />
+                      </item>
+                      <item id="2de3d1b0c1de4f7c8843aa22870c1d8f" iid="d86fd6fcd743439783230672a3388bb7" container="b9fc662d5f2a4223a474dc64dbc50af1" container-iid="c47d28a30ea940feb4e7947bc65e5c10" container-page="uit-6dc91e09-33aa-4f7b-bab9-bd849de55ecd" creation-date="07/27/2021 19:46:23" order-index="7" type="ui-combo-box">
+                        <layout ax="217" ay="187" awidth="194" aheight="36" x="217" y="187" width="194" height="25" />
+                      </item>
+                      <item id="c630bfd53a2147a9ba1727a8ccc7bfa0" iid="64301f597a644b9385731dce6ac81303" container="b9fc662d5f2a4223a474dc64dbc50af1" container-iid="c47d28a30ea940feb4e7947bc65e5c10" container-page="uit-6dc91e09-33aa-4f7b-bab9-bd849de55ecd" creation-date="07/27/2021 19:48:10" order-index="8" type="ui-group-box">
+                        <layout ax="206" ay="277" awidth="698" aheight="271" x="206" y="277" width="698" height="271" />
+                      </item>
+                      <item id="4f1a4de9efef40329642ae1ddd71c33b" iid="73ffe8b8093c4ea3bcad04a6dd1edd0b" container="b9fc662d5f2a4223a474dc64dbc50af1" container-iid="c47d28a30ea940feb4e7947bc65e5c10" container-page="uit-6dc91e09-33aa-4f7b-bab9-bd849de55ecd" creation-date="07/27/2021 19:48:54" order-index="9" type="ui-button">
+                        <layout ax="207" ay="597" awidth="131" aheight="28" x="207" y="597" width="131" height="28" />
+                      </item>
+                      <item id="bf07edeceba1459ab7447f62301670b1" iid="a69920c1ae7642e4a34153af366250bf" creation-date="07/27/2021 19:50:09" order-index="10" type="entity">
+                        <layout ax="-84" ay="-118" awidth="140" aheight="100" x="-84" y="-118" width="140" height="100" />
+                      </item>
+                      <item id="di8638d0f9b12a4a05a100540109e4f9854671" iid="70101f2c294f4ff88328cbf0b1c3fbbf" creation-date="07/27/2021 19:50:09" order-index="11" type="comment-connector">
+                        <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="56" y1="-46" x2="202" y2="0" start-border-pos="0.430192308425903" end-border-pos="0.0510162607828776" name-position="0,20">
+                          <points>
+                            <point x="56" y="-46" />
+                            <point x="202" y="0" />
+                          </points>
+                        </layout>
+                        <relation from="bf07edeceba1459ab7447f62301670b1" from-iid="a69920c1ae7642e4a34153af366250bf" to="7cece9b6ef754c7cb94843618cd40ffb" to-iid="3b269c54e4114ece88dbc5cbc5708da5" />
+                      </item>
+                      <item id="1fc85f58e930402981bb6a8f3528b1fc" iid="ad6f3f67fd6b444087ecd9e535adcca5" creation-date="07/27/2021 19:51:04" order-index="12" type="entity">
+                        <layout ax="-314" ay="-100" awidth="140" aheight="100" x="-314" y="-100" width="140" height="100" />
+                      </item>
+                      <item id="di03925af9acb34cc29100670b5f4167fd9644" iid="e79fc70b90cd4bdf8a4dc215ebe9625c" creation-date="07/27/2021 19:51:04" order-index="13" type="comment-connector">
+                        <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="-174" y1="-25" x2="271" y2="133" start-border-pos="0.437229242324829" end-border-pos="0.0754097706049829" name-position="0,20">
+                          <points>
+                            <point x="-174" y="-25" />
+                            <point x="271" y="133" />
+                          </points>
+                        </layout>
+                        <relation from="1fc85f58e930402981bb6a8f3528b1fc" from-iid="ad6f3f67fd6b444087ecd9e535adcca5" to="fe106815c6b443e68f0dcd8eb2fa12ae" to-iid="2783b226fdc34f239355f91421fbf4b5" />
+                      </item>
+                      <item id="20eb51b52c0648a4900ecb6c69fdd6e7" iid="c447d0fecde1413cbceff622199a2fac" creation-date="07/27/2021 19:51:46" order-index="14" type="entity">
+                        <layout ax="-361" ay="48" awidth="140" aheight="100" x="-361" y="48" width="140" height="100" />
+                      </item>
+                      <item id="diaea9d1f659d145cfb5ff03e01bedb5b63398" iid="64f275b4c4104b13aafddfbec2e86b0f" creation-date="07/27/2021 19:51:46" order-index="15" type="comment-connector">
+                        <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="-221" y1="110" x2="217" y2="188" start-border-pos="0.405950412750244" end-border-pos="0.99413447909885" name-position="0,20">
+                          <points>
+                            <point x="-221" y="110" />
+                            <point x="217" y="188" />
+                          </points>
+                        </layout>
+                        <relation from="20eb51b52c0648a4900ecb6c69fdd6e7" from-iid="c447d0fecde1413cbceff622199a2fac" to="2de3d1b0c1de4f7c8843aa22870c1d8f" to-iid="d86fd6fcd743439783230672a3388bb7" />
+                      </item>
+                      <item id="102670bd093d4af38a60fd41042076c0" iid="ad55daa801764a3da70bcf7c541240ab" creation-date="07/27/2021 19:52:29" order-index="16" type="entity">
+                        <layout ax="551" ay="714" awidth="140" aheight="100" x="551" y="714" width="140" height="100" />
+                      </item>
+                      <item id="di6a16f4700c8e43fc8c6fc05b77a8634e6024" iid="daa3c85e4f7e431d90812667ad7a6ff8" creation-date="07/27/2021 19:52:29" order-index="17" type="comment-connector">
+                        <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="612" y1="714" x2="580" y2="548" start-border-pos="0.108258928571429" end-border-pos="0.61586676217765" name-position="0,20">
+                          <points>
+                            <point x="612" y="714" />
+                            <point x="580" y="548" />
+                          </points>
+                        </layout>
+                        <relation from="102670bd093d4af38a60fd41042076c0" from-iid="ad55daa801764a3da70bcf7c541240ab" to="c630bfd53a2147a9ba1727a8ccc7bfa0" to-iid="64301f597a644b9385731dce6ac81303" />
+                      </item>
+                      <item id="8a472e81727344e5810fa3376341bf6b" iid="af2d3cc5526b43f0aaf7a6ff6c31c9da" creation-date="07/27/2021 19:53:02" order-index="18" type="entity">
+                        <layout ax="211.5" ay="725" awidth="140" aheight="100" x="50" y="50" width="140" height="100" />
+                      </item>
+                      <item id="di8d70f3342dec4a41be3cfd9c6d34e6fa9541" iid="5387eed6ebd74bd18d7205dfb4a37456" creation-date="07/27/2021 19:53:02" order-index="19" type="comment-connector">
+                        <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="279" y1="725" x2="273" y2="625" start-border-pos="0.120448630196708" end-border-pos="0.624325060662422" name-position="0,20">
+                          <points>
+                            <point x="279" y="725" />
+                            <point x="273" y="625" />
+                          </points>
+                        </layout>
+                        <relation from="8a472e81727344e5810fa3376341bf6b" from-iid="af2d3cc5526b43f0aaf7a6ff6c31c9da" to="4f1a4de9efef40329642ae1ddd71c33b" to-iid="73ffe8b8093c4ea3bcad04a6dd1edd0b" />
+                      </item>
+                      <item id="c841c981fdc141a5a700c27552420b44" iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 19:54:24" order-index="20" type="ui-panel">
+                        <layout ax="159" ay="895" awidth="821" aheight="482" x="159" y="895" width="821" height="482" rotation-center="0,-124" />
+                      </item>
+                      <item id="52598f6b046b42ca883c7f402d6b9b28" iid="6e4f23820e2a4c73980ad96c293394bf" creation-date="07/27/2021 19:55:03" order-index="21" type="relation">
+                        <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="392" y1="895" x2="393" y2="664" start-border-pos="0.07095006108284" end-border-pos="0.69774011299435" start-local-pos="233" end-local-pos="222" name-position="0,20">
+                          <points>
+                            <point x="392" y="895" />
+                            <point x="393" y="664" />
+                          </points>
+                        </layout>
+                        <relation from="c841c981fdc141a5a700c27552420b44" from-iid="d412b3839c884f28a972a54caa18642c" to="b9fc662d5f2a4223a474dc64dbc50af1" to-iid="c47d28a30ea940feb4e7947bc65e5c10" />
+                      </item>
+                      <item id="b0c27ce9882a4ace94f39e7001a645c2" iid="5351da315fcc420db221a3c985b00175" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 19:55:33" order-index="22" type="ui-list-box">
+                        <layout ax="188" ay="927" awidth="202" aheight="418" x="188" y="927" width="202" height="418" />
+                      </item>
+                      <item id="913b131ab7ae4d58887a7d0feddf67e5" iid="dd0545ba5c7e4992ad50041947fa75ff" creation-date="07/27/2021 19:55:59" order-index="23" type="entity">
+                        <layout ax="-44" ay="1277" awidth="140" aheight="100" x="-44" y="1277" width="140" height="100" />
+                      </item>
+                      <item id="di4df84545a5584bceadbacc28dd2597df3882" iid="03901472ef2947c496c07b9f79b327b2" creation-date="07/27/2021 19:55:59" order-index="24" type="comment-connector">
+                        <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="95" y1="1277" x2="188" y2="1209" start-border-pos="0.247943156106131" end-border-pos="0.831130470385392" name-position="0,20">
+                          <points>
+                            <point x="95" y="1277" />
+                            <point x="188" y="1209" />
+                          </points>
+                        </layout>
+                        <relation from="913b131ab7ae4d58887a7d0feddf67e5" from-iid="dd0545ba5c7e4992ad50041947fa75ff" to="b0c27ce9882a4ace94f39e7001a645c2" to-iid="5351da315fcc420db221a3c985b00175" />
+                      </item>
+                      <item id="76b3ed0076134fdca03514dc1763856d" iid="b033c63aadf4420cabfb72b61170ad40" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 19:56:32" order-index="25" type="ui-text-box">
+                        <layout ax="417" ay="931" awidth="438" aheight="28" x="417" y="931" width="438" height="28" rotation-center="-131.5,0" />
+                      </item>
+                      <item id="f38650f2cd9a43d2ae8e195c6556da56" iid="4ad88d8e8dd7483f880078f94585d7f3" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 19:57:01" order-index="26" type="ui-text-box">
+                        <layout ax="417" ay="967" awidth="438" aheight="28" x="417" y="967" width="438" height="28" />
+                      </item>
+                      <item id="8a9cff625cb44e6090ae18ef9ab4a8c1" iid="526628c34ba04d3e90ea2f746c2eb3be" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 19:57:15" order-index="27" type="ui-text-box">
+                        <layout ax="421" ay="1003" awidth="430" aheight="28" x="421" y="1003" width="430" height="28" />
+                      </item>
+                      <item id="3b95ce4f203d4617834d9a2208526ab3" iid="58b94ee277824d8bb7810795020f8902" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 19:57:40" order-index="28" type="ui-text-box">
+                        <layout ax="421" ay="1050" awidth="200" aheight="28" x="421" y="1050" width="200" height="28" rotation-center="-18.5,0" />
+                      </item>
+                      <item id="698f4e8c9b7a4fcba311d00359ddc437" iid="14c6e870ecf54cb780720e476a81746a" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 19:58:18" order-index="29" type="ui-text-box">
+                        <layout ax="636" ay="1050" awidth="215" aheight="28" x="636" y="1050" width="215" height="28" rotation-center="32.5,0" />
+                      </item>
+                      <item id="2ac348442c8f4a4a8aa809ea31c895fa" iid="f1b75826ac6e48bbb0f107c90d4640ec" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 19:58:50" order-index="30" type="ui-text-box">
+                        <layout ax="422" ay="1093" awidth="429" aheight="28" x="422" y="1093" width="429" height="28" />
+                      </item>
+                      <item id="5b95ae76749d470f9d33e2c02a7e78da" iid="dea0f3e316da4b0a93e6283943f41f90" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 19:59:11" order-index="31" type="ui-text-box">
+                        <layout ax="423" ay="1138" awidth="198" aheight="28" x="423" y="1138" width="198" height="28" />
+                      </item>
+                      <item id="175431ed91bc4340b67810a522d635f5" iid="42183a0b9ea243e896c212a3d6fea1ae" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 19:59:29" order-index="32" type="ui-text-box">
+                        <layout ax="636" ay="1140" awidth="219" aheight="26" x="636" y="1140" width="219" height="26" rotation-center="0,1" />
+                      </item>
+                      <item id="b6f7351cfff54aaf8d32aef84f71ffc4" iid="4a98582a1b224b67ad493b1b91b88fa9" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 20:00:15" order-index="33" type="ui-text-box">
+                        <layout ax="425" ay="1176" awidth="196" aheight="28" x="425" y="1176" width="196" height="28" />
+                      </item>
+                      <item id="fd241a14ab9f4943b1c1cce0b6e9740d" iid="1d3313658d4a44538105462d9f10af65" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 20:00:33" order-index="34" type="ui-text-box">
+                        <layout ax="634" ay="1174" awidth="217" aheight="28" x="634" y="1174" width="217" height="28" />
+                      </item>
+                      <item id="eb0366fc0a1748f3a81c1daa5d7cbbd7" iid="5caf58e7a6b5498896b605082752d681" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 20:01:05" order-index="35" type="ui-button">
+                        <layout ax="426" ay="1301" awidth="112" aheight="44" x="426" y="1301" width="112" height="44" />
+                      </item>
+                      <item id="da884a0de168469a81304134345db574" iid="21e119f67ba045d191b2b253dc0a3411" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 20:01:30" order-index="36" type="ui-button">
+                        <layout ax="548" ay="1301" awidth="103" aheight="44" x="548" y="1301" width="103" height="44" />
+                      </item>
+                      <item id="4efdfbae6ac5443bb0b631ba1f3b8dea" iid="d892ec17f3d2429d86af79e8a8ba31d7" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 20:01:49" order-index="37" type="ui-button">
+                        <layout ax="851" ay="1300.5" awidth="97" aheight="45" x="851" y="1300.5" width="97" height="45" />
+                      </item>
+                      <item id="e62cb3ca6e7b4486a276fac34dbc944b" iid="50d80dcb7e4841c483f1ab6817a5c668" container="c841c981fdc141a5a700c27552420b44" container-iid="d412b3839c884f28a972a54caa18642c" creation-date="07/27/2021 20:02:14" order-index="38" type="ui-button">
+                        <layout ax="672" ay="1302" awidth="113" aheight="43.5" x="672" y="1302" width="113" height="43.5" />
+                      </item>
+                      <item id="b39132f92ffa40da83a8a11fe6b6bd3e" iid="3484e936462d4e209e4d07b53d8d1d1d" container="b9fc662d5f2a4223a474dc64dbc50af1" container-iid="c47d28a30ea940feb4e7947bc65e5c10" container-page="uit-6dc91e09-33aa-4f7b-bab9-bd849de55ecd" creation-date="07/27/2021 20:03:23" order-index="39" type="ui-combo-box">
+                        <layout ax="447" ay="190" awidth="225" aheight="33" x="447" y="190" width="225" height="33" />
+                      </item>
+                      <item id="f92a2f9e445544a9bbadbd1904af18a7" iid="5596191e9f05448fab85a6e8ba6c19b5" container="b9fc662d5f2a4223a474dc64dbc50af1" container-iid="c47d28a30ea940feb4e7947bc65e5c10" container-page="uit-6dc91e09-33aa-4f7b-bab9-bd849de55ecd" creation-date="07/29/2021 15:16:42" order-index="59" type="ui-label">
+                        <layout ax="447" ay="129" awidth="144" aheight="36" x="447" y="129" width="53" height="28" />
+                      </item>
+                    </layer>
+                  </diagram>
+                  <diagram type="web-page" id="p6b1bcf6631744317945451eced353e65_492189369" name="Invoices" order-index="7" overview-order-index="5" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default">
+                    <style>
+                      <background-color index="1" color="#FFFFFFFF" />
+                      <background-color index="2" color="#FFFFFFFF" />
+                      <background-type type="solid" />
+                    </style>
+                    <meta>
+                      <authors>
+                        <author>Dalibor Votruba</author>
+                      </authors>
+                      <description />
+                      <creation-date>07/27/2021 20:24:12</creation-date>
+                      <change-date>07/28/2021 07:38:58</change-date>
+                      <revision-count>0</revision-count>
+                      <version />
+                    </meta>
+                    <documentation>
+                      <text>
+                        <default>
+                          <style font-name="Segoe UI" font-size="11.25">
+                            <text>
+                              <solid-brush color="#FF000000" />
+                            </text>
+                          </style>
+                        </default>
+                        <styles />
+                        <content>
+                          <paragraph>
+                            <style numbering-type="None">
+                              <numbering name="" multi-level="false">
+                                <numbering-level type="None" level="0" format="{0}." />
+                              </numbering>
+                            </style>
+                            <p>
+                              <t>List </t>
+                            </p>
+                            <p>
+                              <t>of </t>
+                            </p>
+                            <p>
+                              <t>all </t>
+                            </p>
+                            <p>
+                              <t>past, </t>
+                            </p>
+                            <p>
+                              <t>current </t>
+                            </p>
+                            <p>
+                              <t>invoices </t>
+                            </p>
+                            <p>
+                              <t>to </t>
+                            </p>
+                            <p>
+                              <t>view </t>
+                            </p>
+                            <p>
+                              <t>or </t>
+                            </p>
+                            <p>
+                              <t>download
+</t>
+                            </p>
+                          </paragraph>
+                        </content>
+                      </text>
+                    </documentation>
+                    <abstract-items>
+                      <item id="407791e64a7544d3bf9ae397d6ce22f1" cid="ELEM061" type="ui-panel" name="Panel13" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:31:52">
+                        <owned-items>
+                          <owned-item ref="9a662f3ae65b496193f8b84bd1da19ea" />
+                        </owned-items>
+                      </item>
+                      <item id="9a662f3ae65b496193f8b84bd1da19ea" cid="GRD009" type="ui-grid" name="Grid8" style-class="" owner="407791e64a7544d3bf9ae397d6ce22f1" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:32:18">
+                        <grid>
+                          <columns>
+                            <column id="uigc-45ca3aaf-bff9-443e-87a0-df8c8c80af82" name="Date" />
+                            <column id="uigc-cdfe7866-760e-48b7-b700-65b335095f1f" name="Ivoice Number" />
+                            <column id="uigc-9f77fb23-8d61-405f-b7f6-70f8d963a791" name="Items" />
+                            <column id="uigc-a3d4ed02-9b6f-42b6-ad04-55c9863d3f55" name="Billing Plan" />
+                            <column id="uigc-acca6fd5-8645-42a3-a094-8b28fd56a8aa" name="Billing Info" />
+                            <column id="uigc-e64bf533-0fd4-42d0-b15e-95c6b986d436" name="Total incl VAT" />
+                            <column id="uigc-298b9c0c-e1f9-42db-a0bf-3cdb238fd9fb" name="Total Base" />
+                            <column id="uigc-ff9d74a0-d345-428d-ad3c-71c5997d011d" name="VAT" />
+                            <column id="uigc-f3000578-7926-4201-a054-393b8da86c9d" name="Payed" />
+                            <column id="uigc-54cdec40-f65f-405b-9c75-4607c5ead84b" name="Channel" />
+                          </columns>
+                        </grid>
+                      </item>
+                      <item id="97fe3aeca36542caa316f33eaa756f6a" cid="ELEM062" type="ui-panel" name="Panel14" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:34:36">
+                        <owned-items>
+                          <owned-item ref="464c4e67aef1429d96b6e03754b0f674" />
+                          <owned-item ref="b947230eb8e440e99259d662be5b0553" />
+                          <owned-item ref="3e75f4092313480e9b5eeb2a7324917c" />
+                          <owned-item ref="1cbba24993da466f907d82542e588b8d" />
+                        </owned-items>
+                      </item>
+                      <item id="464c4e67aef1429d96b6e03754b0f674" cid="BTN020" type="ui-button" name="Download" style-class="" owner="97fe3aeca36542caa316f33eaa756f6a" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:35:00">
+                        <button />
+                      </item>
+                      <item id="b947230eb8e440e99259d662be5b0553" cid="BTN021" type="ui-button" name="View PDF" style-class="" owner="97fe3aeca36542caa316f33eaa756f6a" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:35:12">
+                        <button />
+                      </item>
+                      <item id="3e75f4092313480e9b5eeb2a7324917c" cid="LBL013" type="ui-label" name="Items" style-class="" owner="97fe3aeca36542caa316f33eaa756f6a" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:35:31" />
+                      <item id="1cbba24993da466f907d82542e588b8d" cid="GRD010" type="ui-grid" name="Grid9" style-class="" owner="97fe3aeca36542caa316f33eaa756f6a" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:35:56">
+                        <grid>
+                          <columns>
+                            <column id="uigc-6c525d55-b020-4c05-b024-be454ebb3dd6" name="Date" />
+                            <column id="uigc-1dad96c2-b8fa-4a02-b622-1845882c7806" name="Name" />
+                            <column id="uigc-ac693dc1-4312-4be1-a4f8-6d24446e1f18" name="QTY" />
+                            <column id="uigc-c786cb8b-7834-4ace-b557-c1f208ed6957" name="SubTotal base" />
+                            <column id="uigc-554e2e95-137e-4045-8be7-5d851b27ad72" name="SubTotal VAT" />
+                          </columns>
+                        </grid>
+                      </item>
+                      <item id="dc892cfa444c487a8a6113365e07db30" cid="ELEM063" type="universal-connector" name="ExpandedDetail" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:38:58" from="9a662f3ae65b496193f8b84bd1da19ea" to="97fe3aeca36542caa316f33eaa756f6a">
+                        <connector />
+                      </item>
+                    </abstract-items>
+                    <layer id="c43b02c510b64751b2ce872b96138b35" name="Default" visible="true" enabled="true" locked="false">
+                      <item id="ab8a712f3dcb429abcb5f042218489c6" iid="c80550b0b7e34aecba234b4b034c66fa" creation-date="07/28/2021 07:31:07" order-index="0" presentation-style="classifier" type="ui-area">
+                        <layout ax="-41" ay="184" awidth="150" aheight="150" x="-41" y="184" width="150" height="150" />
+                      </item>
+                      <item id="407791e64a7544d3bf9ae397d6ce22f1" iid="f54942104486467694cab81c69e677b0" creation-date="07/28/2021 07:31:52" order-index="1" type="ui-panel">
+                        <layout ax="203" ay="184" awidth="920" aheight="471" x="203" y="184" width="920" height="471" />
+                      </item>
+                      <item id="9a662f3ae65b496193f8b84bd1da19ea" iid="55feb3257e9045edbca4bb5d3289d51c" container="407791e64a7544d3bf9ae397d6ce22f1" container-iid="f54942104486467694cab81c69e677b0" creation-date="07/28/2021 07:32:18" order-index="2" type="ui-grid">
+                        <layout ax="228" ay="240" awidth="858" aheight="380" x="228" y="240" width="858" height="380" rotation-center="-359,-110">
+                          <columns widths="-1,-1,-1,-1,-1,-1,-1,-1,-1,-1" />
+                        </layout>
+                      </item>
+                      <item id="97fe3aeca36542caa316f33eaa756f6a" iid="6563ec4cffd64e28beaec21d00c91b67" creation-date="07/28/2021 07:34:36" order-index="3" type="ui-panel">
+                        <layout ax="1178" ay="243" awidth="483" aheight="402" x="1178" y="243" width="483" height="402" />
+                      </item>
+                      <item id="464c4e67aef1429d96b6e03754b0f674" iid="50784c221131480f8131a1d1118a6e6d" container="97fe3aeca36542caa316f33eaa756f6a" container-iid="6563ec4cffd64e28beaec21d00c91b67" creation-date="07/28/2021 07:35:00" order-index="4" type="ui-button">
+                        <layout ax="1208" ay="266" awidth="111" aheight="35" x="1208" y="266" width="111" height="35" />
+                      </item>
+                      <item id="b947230eb8e440e99259d662be5b0553" iid="ec5b39541c9c4acba046b69f00276181" container="97fe3aeca36542caa316f33eaa756f6a" container-iid="6563ec4cffd64e28beaec21d00c91b67" creation-date="07/28/2021 07:35:12" order-index="5" type="ui-button">
+                        <layout ax="1332" ay="264" awidth="93" aheight="37" x="1332" y="264" width="93" height="37" />
+                      </item>
+                      <item id="3e75f4092313480e9b5eeb2a7324917c" iid="2a13af0c8f404c86ab8a268e167a0dbc" container="97fe3aeca36542caa316f33eaa756f6a" container-iid="6563ec4cffd64e28beaec21d00c91b67" creation-date="07/28/2021 07:35:31" order-index="6" type="ui-label">
+                        <layout ax="1208" ay="316.5" awidth="54" aheight="35" x="1208" y="316.5" width="54" height="35" rotation-center="-19.5,0" />
+                      </item>
+                      <item id="1cbba24993da466f907d82542e588b8d" iid="152f146ebfae46d5a27b3397839ef690" container="97fe3aeca36542caa316f33eaa756f6a" container-iid="6563ec4cffd64e28beaec21d00c91b67" creation-date="07/28/2021 07:35:56" order-index="7" type="ui-grid">
+                        <layout ax="1210" ay="358" awidth="385" aheight="215" x="1210" y="358" width="385" height="215">
+                          <columns widths="-1,-1,-1,-1,-1" />
+                        </layout>
+                      </item>
+                      <item id="dc892cfa444c487a8a6113365e07db30" iid="e92404c9c6524b1e84aeb7c61e04d03d" creation-date="07/28/2021 07:38:58" order-index="8" type="relation">
+                        <layout line-style="rounded-rectangular" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="1086" y1="430" x2="1178" y2="444" start-border-pos="0.375" end-border-pos="0.875" start-local-pos="190" end-local-pos="201" name-position="0,20">
+                          <points>
+                            <point x="1086" y="430" />
+                            <point x="1178" y="444" />
+                          </points>
+                        </layout>
+                        <relation from="9a662f3ae65b496193f8b84bd1da19ea" from-iid="55feb3257e9045edbca4bb5d3289d51c" to="97fe3aeca36542caa316f33eaa756f6a" to-iid="6563ec4cffd64e28beaec21d00c91b67" />
+                      </item>
+                    </layer>
+                  </diagram>
+                  <diagram type="web-page" id="p4161f907bb27407b99e08b3761500442_654827987" name="Pipeline" order-index="8" overview-order-index="6" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default">
+                    <style>
+                      <background-color index="1" color="#FFFFFFFF" />
+                      <background-color index="2" color="#FFFFFFFF" />
+                      <background-type type="solid" />
+                    </style>
+                    <meta>
+                      <authors>
+                        <author> </author>
+                      </authors>
+                      <description />
+                      <creation-date>07/28/2021 06:35:57</creation-date>
+                      <change-date>07/29/2021 15:31:50</change-date>
+                      <revision-count>0</revision-count>
+                      <version />
+                    </meta>
+                    <abstract-items>
+                      <item id="36afc4ccf33b4db9972ea59358f89023" cid="ELEM053" type="ui-panel" name="Content" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 06:37:07">
+                        <owned-items>
+                          <owned-item ref="fe6edc23bd4949c7bc5e7d4ec6a50587" />
+                          <owned-item ref="9f9e3f17183946e7bbf9cd9a23117335" />
+                          <owned-item ref="e714f84cf40346dca192abf935a077c9" />
+                          <owned-item ref="die24d0bd862fc47fca704f99c6ff3d7cb9240" />
+                          <owned-item ref="di95d04d491fb14bbca88066a154f72ee43221" />
+                          <owned-item ref="a1ec31a76f9245aaa0fbcef709811c29" />
+                          <owned-item ref="b22f332f5b7844c784c36ad7b3f6a567" />
+                        </owned-items>
+                      </item>
+                      <item id="fe6edc23bd4949c7bc5e7d4ec6a50587" cid="T001" type="ui-tabs" name="Tabs1" style-class="" owner="36afc4ccf33b4db9972ea59358f89023" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 06:39:07">
+                        <tabs>
+                          <tab>Bare</tab>
+                        </tabs>
+                      </item>
+                      <item id="9f9e3f17183946e7bbf9cd9a23117335" cid="CHB001" type="ui-check-box" name="Pending" style-class="" owner="36afc4ccf33b4db9972ea59358f89023" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 06:43:20">
+                        <check-box state="Checked" />
+                      </item>
+                      <item id="e714f84cf40346dca192abf935a077c9" cid="LBL009" type="ui-label" name="Status flter:" style-class="" owner="36afc4ccf33b4db9972ea59358f89023" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 06:43:42" />
+                      <item id="die24d0bd862fc47fca704f99c6ff3d7cb9240" cid="CHB002" type="ui-check-box" name="Done" style-class="" owner="36afc4ccf33b4db9972ea59358f89023" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 06:43:20">
+                        <check-box state="Checked" />
+                      </item>
+                      <item id="di95d04d491fb14bbca88066a154f72ee43221" cid="CHB003" type="ui-check-box" name="Failed" style-class="" owner="36afc4ccf33b4db9972ea59358f89023" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 06:43:20">
+                        <check-box state="Checked" />
+                      </item>
+                      <item id="a1ec31a76f9245aaa0fbcef709811c29" cid="BTN014" type="ui-button" name="Upload" style-class="" owner="36afc4ccf33b4db9972ea59358f89023" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 06:46:27">
+                        <button />
+                      </item>
+                      <item id="c9ae40ea20034b9ca08b731e1a2e98b9" cid="ELEM054" type="universal-connector" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 06:47:40" from="ab8a712f3dcb429abcb5f042218489c6" to="36afc4ccf33b4db9972ea59358f89023">
+                        <connector />
+                      </item>
+                      <item id="76d15405c7a7418ca3ff074d4835016a" cid="ELEM057" type="universal-connector" name="Active" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 06:56:02" from="36afc4ccf33b4db9972ea59358f89023" to="da41b19d116d4e8294b77f1e5ce50b86">
+                        <connector />
+                      </item>
+                      <item id="da41b19d116d4e8294b77f1e5ce50b86" cid="GRD004" type="ui-grid" name="Grid4" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 06:54:31">
+                        <stereotypes>
+                          <stereotype name="expansion" />
+                        </stereotypes>
+                        <stereotype-instances>
+                          <stereotype id="da41b19d116d4e8294b77f1e5ce50b86_expansion_c" type="expansion" ref="" />
+                        </stereotype-instances>
+                        <grid>
+                          <columns>
+                            <column id="uigc-a0850619-a00d-4077-9f2e-d04cae28e537" name="Status" />
+                            <column id="uigc-692ae3f3-48c3-4775-bfa0-312f45800618" name="Name" />
+                            <column id="uigc-21eb811c-4edc-4737-865b-5e660a3ce02a" name="Location" />
+                            <column id="uigc-aa52f0d1-2bc3-4e9b-bfd6-c82822ccbdeb" name="Tags" />
+                            <column id="uigc-6913f915-5451-4352-b673-fbafb7674c36" name="Uploaded" />
+                            <column id="uigc-28f0282d-ec53-4b0f-95b3-08a0ff55a00b" name="Uploader" />
+                            <column id="uigc-cd626ee8-4bc0-44db-b731-750e1bb6b17a" name="Processed" />
+                            <column id="uigc-41c56cad-cf01-4fd4-8bef-f23e88881511" name="Downloaded" />
+                          </columns>
+                        </grid>
+                      </item>
+                      <item id="6ece78a4080f4a83867efba2d70b4de5" cid="ELEM055" type="ui-panel" name="ActiveDetail" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:01:01">
+                        <owned-items>
+                          <owned-item ref="5ede6e738add4bbab27d41cc097e7dd9" />
+                          <owned-item ref="aba3e589e4ec46e6a26e6cdb4c4e5a7a" />
+                          <owned-item ref="ccce1302cd8b44548f5501bcbb8f93e0" />
+                          <owned-item ref="67424d13f8a04cec9a87b7671155a76c" />
+                          <owned-item ref="903705b4cf244c66861cfabd5185f41d" />
+                        </owned-items>
+                      </item>
+                      <item id="5ede6e738add4bbab27d41cc097e7dd9" cid="BTN015" type="ui-button" name="Download" style-class="" owner="6ece78a4080f4a83867efba2d70b4de5" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:01:34">
+                        <button />
+                      </item>
+                      <item id="088079a19ce64d9aa6ddd7640f70ba80" cid="ELEM058" type="universal-connector" name="ExpansionDetail" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:03:58" from="da41b19d116d4e8294b77f1e5ce50b86" to="6ece78a4080f4a83867efba2d70b4de5">
+                        <connector />
+                      </item>
+                      <item id="aba3e589e4ec46e6a26e6cdb4c4e5a7a" cid="GRD005" type="ui-grid" name="Grid5" style-class="" owner="6ece78a4080f4a83867efba2d70b4de5" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:04:44">
+                        <grid>
+                          <columns>
+                            <column id="uigc-92eeeb05-481d-49a8-a3f8-35cba26cf3c0" name="Name" />
+                            <column id="uigc-e6d0563d-5ed7-4d7f-963e-d079d6aa5766" name="Size" />
+                          </columns>
+                        </grid>
+                      </item>
+                      <item id="ccce1302cd8b44548f5501bcbb8f93e0" cid="LBL010" type="ui-label" name="Artifacts" style-class="" owner="6ece78a4080f4a83867efba2d70b4de5" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:05:29" />
+                      <item id="67424d13f8a04cec9a87b7671155a76c" cid="LBL011" type="ui-label" name="History" style-class="" owner="6ece78a4080f4a83867efba2d70b4de5" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:06:50" />
+                      <item id="903705b4cf244c66861cfabd5185f41d" cid="GRD006" type="ui-grid" name="Grid6" style-class="" owner="6ece78a4080f4a83867efba2d70b4de5" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:07:24">
+                        <grid>
+                          <columns>
+                            <column id="uigc-2ce0a58a-1f03-4380-8ea9-45339d3c3872" name="Date" />
+                            <column id="uigc-472e21fc-4d84-40b3-9bd7-f4c1b491794d" name="Status" />
+                            <column id="uigc-a4b40427-365d-4a19-955f-1da6cd28533e" name="User" />
+                            <column id="uigc-34ce4fee-8d41-4beb-9d73-8f7fe36a2ac0" name="Message" />
+                          </columns>
+                        </grid>
+                      </item>
+                      <item id="b22f332f5b7844c784c36ad7b3f6a567" cid="BTN019" type="ui-button" name="Refresh" style-class="" owner="36afc4ccf33b4db9972ea59358f89023" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/28/2021 07:23:46">
+                        <button />
+                      </item>
+                    </abstract-items>
+                    <layer id="b779153b59d2464484034dbf0f2eb199" name="Default" visible="true" enabled="true" locked="false">
+                      <item id="ab8a712f3dcb429abcb5f042218489c6" iid="c2fb7633698f4357ab349c22bbb3c386" creation-date="07/28/2021 06:36:34" order-index="0" presentation-style="classifier" type="ui-area">
+                        <layout ax="-107" ay="-68" awidth="150" aheight="150" x="-107" y="-68" width="150" height="150" />
+                      </item>
+                      <item id="36afc4ccf33b4db9972ea59358f89023" iid="eaa27cc12f3a4bc8b243a6d13574b753" creation-date="07/28/2021 06:37:07" order-index="1" type="ui-panel">
+                        <layout ax="108" ay="-63" awidth="1076" aheight="125" x="108" y="-63" width="1076" height="125" rotation-center="0,337" />
+                      </item>
+                      <item id="fe6edc23bd4949c7bc5e7d4ec6a50587" iid="2ed4d05f107e428a8dd763b1107ef91e" container="36afc4ccf33b4db9972ea59358f89023" container-iid="eaa27cc12f3a4bc8b243a6d13574b753" creation-date="07/28/2021 06:39:07" order-index="2" type="ui-tabs">
+                        <layout ax="120" ay="-50" awidth="556" aheight="34" x="120" y="-50" width="556" height="34" />
+                      </item>
+                      <item id="9f9e3f17183946e7bbf9cd9a23117335" iid="dcbe8b9cc8e04a7498182f9d5448368c" container="36afc4ccf33b4db9972ea59358f89023" container-iid="eaa27cc12f3a4bc8b243a6d13574b753" creation-date="07/28/2021 06:43:20" order-index="3" type="ui-check-box">
+                        <layout ax="432" ay="10" awidth="86" aheight="34" x="432" y="10" width="86" height="34" rotation-center="32,1" />
+                      </item>
+                      <item id="e714f84cf40346dca192abf935a077c9" iid="162e1849829e4757a8a1a9059a2f085b" container="36afc4ccf33b4db9972ea59358f89023" container-iid="eaa27cc12f3a4bc8b243a6d13574b753" creation-date="07/28/2021 06:43:42" order-index="4" type="ui-label">
+                        <layout ax="324" ay="9" awidth="99" aheight="36" x="324" y="9" width="60" height="36" />
+                      </item>
+                      <item id="die24d0bd862fc47fca704f99c6ff3d7cb9240" iid="56d916317ced40979e03f4c4510b8f51" container="36afc4ccf33b4db9972ea59358f89023" container-iid="eaa27cc12f3a4bc8b243a6d13574b753" creation-date="07/28/2021 06:43:20" order-index="3" type="ui-check-box">
+                        <layout ax="540" ay="10" awidth="86" aheight="34" x="540" y="10" width="86" height="34" rotation-center="32,1" />
+                      </item>
+                      <item id="di95d04d491fb14bbca88066a154f72ee43221" iid="47560ef1430c4bd8bfb4293231dd1ff9" container="36afc4ccf33b4db9972ea59358f89023" container-iid="eaa27cc12f3a4bc8b243a6d13574b753" creation-date="07/28/2021 06:43:20" order-index="3" type="ui-check-box">
+                        <layout ax="638" ay="10" awidth="86" aheight="34" x="638" y="10" width="86" height="34" rotation-center="32,1" />
+                      </item>
+                      <item id="a1ec31a76f9245aaa0fbcef709811c29" iid="84938a61fb144621b76fcd1f8bcdaba4" container="36afc4ccf33b4db9972ea59358f89023" container-iid="eaa27cc12f3a4bc8b243a6d13574b753" creation-date="07/28/2021 06:46:27" order-index="5" type="ui-button">
+                        <layout ax="134" ay="10" awidth="138" aheight="34" x="134" y="10" width="138" height="34" />
+                      </item>
+                      <item id="c9ae40ea20034b9ca08b731e1a2e98b9" iid="3673eeda95984e29899a575caa3becf1" creation-date="07/28/2021 06:47:40" order-index="6" type="relation">
+                        <layout line-style="oblique" end-auto-side="false" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="43" y1="7" x2="108" y2="9" start-border-pos="0.375" end-border-pos="0.855999998748302" start-local-pos="75" end-local-pos="72" name-position="0,20">
+                          <points>
+                            <point x="43" y="7" />
+                            <point x="108" y="9" />
+                          </points>
+                        </layout>
+                        <relation from="ab8a712f3dcb429abcb5f042218489c6" from-iid="c2fb7633698f4357ab349c22bbb3c386" to="36afc4ccf33b4db9972ea59358f89023" to-iid="eaa27cc12f3a4bc8b243a6d13574b753" />
+                      </item>
+                      <item id="0026f85f920d474f993915c400dcd534" iid="04005ca850404be99c3b20912b1c0835" creation-date="07/28/2021 06:48:08" order-index="7" type="entity">
+                        <layout ax="250" ay="-199" awidth="140" aheight="100" x="250" y="-199" width="140" height="100" />
+                      </item>
+                      <item id="di461ad0d616354e0d8fe09924da81a6826896" iid="ed38f4356cf447fe95008d750919a50e" creation-date="07/28/2021 06:48:08" order-index="8" type="comment-connector">
+                        <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="390" y1="-117" x2="508" y2="-63" start-border-pos="0.454984664916992" end-border-pos="0.0929742267140669" name-position="0,20">
+                          <points>
+                            <point x="390" y="-117" />
+                            <point x="508" y="-63" />
+                          </points>
+                        </layout>
+                        <relation from="0026f85f920d474f993915c400dcd534" from-iid="04005ca850404be99c3b20912b1c0835" to="36afc4ccf33b4db9972ea59358f89023" to-iid="eaa27cc12f3a4bc8b243a6d13574b753" />
+                      </item>
+                      <item id="da41b19d116d4e8294b77f1e5ce50b86" iid="d51bd8318bd6403798a8d7a1a6f05082" creation-date="07/28/2021 06:54:31" order-index="9" type="ui-grid">
+                        <layout ax="161" ay="155" awidth="607" aheight="226" x="161" y="155" width="607" height="226" rotation-center="230,0">
+                          <columns widths="-1,-1,-1,-1,-1,-1,-1,-1" />
+                        </layout>
+                      </item>
+                      <item id="76d15405c7a7418ca3ff074d4835016a" iid="1fd617706f7f4d5a89ed1aaaaf361013" creation-date="07/28/2021 06:56:02" order-index="10" type="relation">
+                        <layout line-style="rounded-rectangular" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="156" y1="62" x2="648" y2="155" start-border-pos="0.738847583643123" end-border-pos="0.200562324273664" start-local-pos="48" end-local-pos="856" name-position="0,20">
+                          <points>
+                            <point x="156" y="62" />
+                            <point x="648" y="155" />
+                          </points>
+                        </layout>
+                        <relation from="36afc4ccf33b4db9972ea59358f89023" from-iid="eaa27cc12f3a4bc8b243a6d13574b753" to="da41b19d116d4e8294b77f1e5ce50b86" to-iid="d51bd8318bd6403798a8d7a1a6f05082" />
+                      </item>
+                      <item id="6ece78a4080f4a83867efba2d70b4de5" iid="c421f2f44de844a4b976bc66c3b18134" creation-date="07/28/2021 07:01:01" order-index="11" type="ui-panel">
+                        <layout ax="927" ay="148.5" awidth="423" aheight="435" x="927" y="148.5" width="423" height="435" rotation-center="0,-111" />
+                      </item>
+                      <item id="5ede6e738add4bbab27d41cc097e7dd9" iid="b152224e3b294161addda78214c3a589" container="6ece78a4080f4a83867efba2d70b4de5" container-iid="c421f2f44de844a4b976bc66c3b18134" creation-date="07/28/2021 07:01:34" order-index="12" type="ui-button">
+                        <layout ax="944" ay="164.5" awidth="99" aheight="36" x="778" y="157" width="99" height="22" />
+                      </item>
+                      <item id="088079a19ce64d9aa6ddd7640f70ba80" iid="9d58760510a9490c972253e6cdd6ca12" creation-date="07/28/2021 07:03:58" order-index="13" type="relation">
+                        <layout line-style="straight" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="768" y1="268" x2="927" y2="366" start-border-pos="0.375" end-border-pos="0.875" start-local-pos="113" end-local-pos="106.5" name-position="0,20">
+                          <points>
+                            <point x="768" y="268" />
+                            <point x="927" y="366" />
+                          </points>
+                        </layout>
+                        <relation from="da41b19d116d4e8294b77f1e5ce50b86" from-iid="d51bd8318bd6403798a8d7a1a6f05082" to="6ece78a4080f4a83867efba2d70b4de5" to-iid="c421f2f44de844a4b976bc66c3b18134" />
+                      </item>
+                      <item id="aba3e589e4ec46e6a26e6cdb4c4e5a7a" iid="35e1823a9bb44caf9eb2d4df14681ebb" container="6ece78a4080f4a83867efba2d70b4de5" container-iid="c421f2f44de844a4b976bc66c3b18134" creation-date="07/28/2021 07:04:44" order-index="14" type="ui-grid">
+                        <layout ax="947" ay="243" awidth="383" aheight="125" x="947" y="243" width="383" height="125">
+                          <columns widths="-1,-1" />
+                        </layout>
+                      </item>
+                      <item id="ccce1302cd8b44548f5501bcbb8f93e0" iid="174a082790d943539cbcc68eb24b1120" container="6ece78a4080f4a83867efba2d70b4de5" container-iid="c421f2f44de844a4b976bc66c3b18134" creation-date="07/28/2021 07:05:29" order-index="15" type="ui-label">
+                        <layout ax="945" ay="213" awidth="76" aheight="36" x="945" y="213" width="65" height="30" />
+                      </item>
+                      <item id="67424d13f8a04cec9a87b7671155a76c" iid="0f652e94dd614815931ff538f8a799b1" container="6ece78a4080f4a83867efba2d70b4de5" container-iid="c421f2f44de844a4b976bc66c3b18134" creation-date="07/28/2021 07:06:50" order-index="16" type="ui-label">
+                        <layout ax="947" ay="381" awidth="60" aheight="29.5" x="947" y="381" width="60" height="29.5" rotation-center="-16.5,0" />
+                      </item>
+                      <item id="903705b4cf244c66861cfabd5185f41d" iid="ff680f016a334414922ce3e1c9cd7e37" container="6ece78a4080f4a83867efba2d70b4de5" container-iid="c421f2f44de844a4b976bc66c3b18134" creation-date="07/28/2021 07:07:24" order-index="17" type="ui-grid">
+                        <layout ax="950" ay="416" awidth="380" aheight="137" x="950" y="416" width="380" height="137">
+                          <columns widths="-1,-1,-1,-1" />
+                        </layout>
+                      </item>
+                      <item id="b22f332f5b7844c784c36ad7b3f6a567" iid="dbf6297d76aa4cbc9e7c5706f1425d00" container="36afc4ccf33b4db9972ea59358f89023" container-iid="eaa27cc12f3a4bc8b243a6d13574b753" creation-date="07/28/2021 07:23:46" order-index="27" type="ui-button">
+                        <layout ax="755" ay="9.5" awidth="124" aheight="35" x="755" y="9.5" width="124" height="35" />
+                      </item>
+                      <item id="bfe8be74dca04e1e8d2a2e8f564cb263" iid="5707d17ded4649feb89df0dc8b75beeb" creation-date="07/28/2021 07:27:56" order-index="30" type="entity">
+                        <layout ax="766" ay="-199" awidth="140" aheight="100" x="766" y="-199" width="140" height="100" />
+                      </item>
+                      <item id="diccaa8e10276a44c78bc161329d8487492747" iid="a914ae4c97c447abb3865d1213f91ce0" creation-date="07/28/2021 07:27:56" order-index="31" type="comment-connector">
+                        <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="831" y1="-99" x2="819" y2="10" start-border-pos="0.63463875906808" end-border-pos="0.128700010238155" name-position="0,20">
+                          <points>
+                            <point x="831" y="-99" />
+                            <point x="819" y="10" />
+                          </points>
+                        </layout>
+                        <relation from="bfe8be74dca04e1e8d2a2e8f564cb263" from-iid="5707d17ded4649feb89df0dc8b75beeb" to="b22f332f5b7844c784c36ad7b3f6a567" to-iid="dbf6297d76aa4cbc9e7c5706f1425d00" />
+                      </item>
+                      <item id="e07c9b83187244e6854242f4f6cc2a18" iid="8f78f0923eba4246bf7a5865d7b07b67" creation-date="07/28/2021 07:29:29" order-index="32" type="entity">
+                        <layout ax="1374.5" ay="300.5" awidth="140" aheight="100" x="50" y="50" width="140" height="100" />
+                      </item>
+                      <item id="didd7e775094e2479a8eccbdebe56714bb7263" iid="dd2134905b534e9ca7efa4ef92121145" creation-date="07/28/2021 07:29:29" order-index="33" type="comment-connector">
+                        <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="1374" y1="324" x2="1042" y2="200" start-border-pos="0.94158332824707" end-border-pos="0.50198395083649" name-position="0,20">
+                          <points>
+                            <point x="1374" y="324" />
+                            <point x="1042" y="200" />
+                          </points>
+                        </layout>
+                        <relation from="e07c9b83187244e6854242f4f6cc2a18" from-iid="8f78f0923eba4246bf7a5865d7b07b67" to="5ede6e738add4bbab27d41cc097e7dd9" to-iid="b152224e3b294161addda78214c3a589" />
+                      </item>
+                    </layer>
+                  </diagram>
+                </model>
+              </sub-models>
+              <diagram type="web-page" id="peb6761286ff2405b98c26aabab5d5115_566148308" name="SiteNotLogged" order-index="3" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default">
+                <style>
+                  <background-color index="1" color="#FFFFFFFF" />
+                  <background-color index="2" color="#FFFFFFFF" />
+                  <background-type type="solid" />
+                </style>
+                <meta>
+                  <authors>
+                    <author>Dalibor Votruba</author>
+                  </authors>
+                  <description />
+                  <creation-date>07/27/2021 17:45:36</creation-date>
+                  <change-date>07/27/2021 18:08:35</change-date>
+                  <revision-count>0</revision-count>
+                  <version />
+                </meta>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles>
+                      <style name="S1" font-name="Segoe UI" font-size="11.25" font-bold="true">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                      <style name="S2" font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </styles>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Homepage </t>
+                        </p>
+                        <p>
+                          <t>layout </t>
+                        </p>
+                        <p>
+                          <t>for </t>
+                        </p>
+                        <p s="S1">
+                          <t>Not </t>
+                        </p>
+                        <p s="S1">
+                          <t>Logged </t>
+                        </p>
+                        <p s="S1">
+                          <t>users</t>
+                        </p>
+                        <p s="S2">
+                          <t> only. </t>
+                        </p>
+                        <p s="S2">
+                          <t>Layout </t>
+                        </p>
+                        <p s="S2">
+                          <t>is </t>
+                        </p>
+                        <p s="S2">
+                          <t>available </t>
+                        </p>
+                        <p s="S2">
+                          <t>for </t>
+                        </p>
+                        <p s="S2">
+                          <t>CEO </t>
+                        </p>
+                        <p s="S2">
+                          <t>walkers
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <abstract-items>
+                  <item id="021b245a18b14f53bd90e1a9c8b39a13" cid="ELEM030" type="ui-panel" name="Header" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:46:37">
+                    <owned-items>
+                      <owned-item ref="63204861631449398ee2c6a2cc029279" />
+                      <owned-item ref="63c728532d9242af8feaa21baf6c605a" />
+                      <owned-item ref="9c678fcba9a44a5b9b98399bd65221e1" />
+                    </owned-items>
+                  </item>
+                  <item id="63204861631449398ee2c6a2cc029279" cid="LG001" type="ui-login" name="Login1" style-class="Flat Red" owner="021b245a18b14f53bd90e1a9c8b39a13" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:47:53">
+                    <style class="Flat Red" />
+                  </item>
+                  <item id="b887b7dfd2344492aebdefd6ecdd6bcf" cid="ELEM031" type="universal-connector" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:48:47" from="28f89d7e20304320acd1bb72a894d695" to="021b245a18b14f53bd90e1a9c8b39a13">
+                    <connector />
+                  </item>
+                  <item id="63c728532d9242af8feaa21baf6c605a" cid="LBL001" type="ui-label" name="Caption" style-class="" owner="021b245a18b14f53bd90e1a9c8b39a13" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:49:49" />
+                  <item id="9c678fcba9a44a5b9b98399bd65221e1" cid="ELEM032" type="ui-area" name="Logo" style-class="" owner="021b245a18b14f53bd90e1a9c8b39a13" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:50:31" />
+                  <item id="27a2ba79450c401a91842a07fe1b039a" cid="ELEM033" type="ui-panel" name="Menu" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:51:28">
+                    <owned-items>
+                      <owned-item ref="363d37e24bfe4d33a48512b13e9ab637" />
+                    </owned-items>
+                  </item>
+                  <item id="2ce4b12911d84872bfb0a67881340713" cid="ELEM034" type="universal-connector" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:51:56" from="37e604f9a2b848b69743cfd4dbaa5581" to="27a2ba79450c401a91842a07fe1b039a">
+                    <connector />
+                  </item>
+                  <item id="363d37e24bfe4d33a48512b13e9ab637" cid="MNU001" type="ui-menu" name="Menu1" style-class="" owner="27a2ba79450c401a91842a07fe1b039a" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:52:06">
+                    <menu>
+                      <menu-item uid="mi0f2810d195b745f2b0588d0f273f8edc637630051265031218" name="Home" description="Home page with quick overview on one site" />
+                      <menu-item uid="mi1bec91c44e3c48e6aa66f64627bbe153637630056130671583" name="Pricing" description="Detailed information about product pricing" />
+                      <menu-item uid="mib94f4d391203462290dc56edce9fcab0637630056542501238" name="Documentation" description="Detailed documentation" />
+                      <menu-item uid="mieadefe67e47d4fb18fcd77486b889aba637630057449144946" name="Support" description="Support board" />
+                      <menu-item uid="mid698c7a0c9354c3284b4b030ce91da53637630056990181137" name="Contacts" description="Contact informations &amp; support" />
+                    </menu>
+                  </item>
+                  <item id="a6ccc12871a34692a4b8b56d5b748334" cid="ELEM035" type="ui-panel" name="Footer" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:04:41">
+                    <owned-items>
+                      <owned-item ref="5bc75ecfa00a461887f58d91a873c591" />
+                      <owned-item ref="98b894f7cb1542068a104ed13f8e55f0" />
+                      <owned-item ref="b668539602f14f58996b94f1360bb942" />
+                      <owned-item ref="aade57d4eb30469687c150a0dd98963c" />
+                      <owned-item ref="83b8495dc9a44af1a76e0bc531ada740" />
+                    </owned-items>
+                  </item>
+                  <item id="5bc75ecfa00a461887f58d91a873c591" cid="LBL002" type="ui-label" name="Copyright" style-class="" owner="a6ccc12871a34692a4b8b56d5b748334" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:05:12" />
+                  <item id="98b894f7cb1542068a104ed13f8e55f0" cid="LBL003" type="ui-label" name="Version" style-class="" owner="a6ccc12871a34692a4b8b56d5b748334" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:05:28" />
+                  <item id="b668539602f14f58996b94f1360bb942" cid="LBL004" type="ui-label" name="Legal" style-class="" owner="a6ccc12871a34692a4b8b56d5b748334" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:05:43" />
+                  <item id="aade57d4eb30469687c150a0dd98963c" cid="LBL005" type="ui-label" name="Contacts" style-class="" owner="a6ccc12871a34692a4b8b56d5b748334" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:06:06" />
+                  <item id="83b8495dc9a44af1a76e0bc531ada740" cid="LBL006" type="ui-label" name="Support" style-class="" owner="a6ccc12871a34692a4b8b56d5b748334" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:06:23" />
+                  <item id="8e7d7e3d3b5e4c8885d7a73197e9d87e" cid="ELEM036" type="universal-connector" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:06:55" from="380def74f24d44ba98fefdbecab3861e" to="a6ccc12871a34692a4b8b56d5b748334">
+                    <connector />
+                  </item>
+                  <item id="ae640d9c069342f19c812b4c29165935" cid="CMT005" type="comment" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:08:35">
+                    <comment>This layout is for non logged users</comment>
+                  </item>
+                </abstract-items>
+                <layer id="996a59decc2a48769e9a3828a3876ab6" name="Default" visible="true" enabled="true" locked="false">
+                  <item id="28f89d7e20304320acd1bb72a894d695" iid="102736d097944db08d1590b7d67faa82" creation-date="07/27/2021 17:46:09" order-index="0" presentation-style="classifier" type="ui-area">
+                    <layout ax="-32" ay="26" awidth="150" aheight="150" x="-32" y="26" width="150" height="150" />
+                  </item>
+                  <item id="021b245a18b14f53bd90e1a9c8b39a13" iid="41bd1dc474a448be98f3eb5cd7d13732" creation-date="07/27/2021 17:46:37" order-index="1" type="ui-panel">
+                    <layout ax="172" ay="20" awidth="975" aheight="156" x="172" y="20" width="975" height="156" />
+                  </item>
+                  <item id="63204861631449398ee2c6a2cc029279" iid="7c35fe006f084886b5f7762eb90608cd" container="021b245a18b14f53bd90e1a9c8b39a13" container-iid="41bd1dc474a448be98f3eb5cd7d13732" creation-date="07/27/2021 17:47:53" order-index="2" type="ui-login">
+                    <layout ax="1072" ay="38" awidth="40" aheight="40" x="1072" y="38" width="40" height="40" />
+                  </item>
+                  <item id="12b6c55162854a4093e69ffaffe60291" iid="f2d9d53cd24f4731b053182f98d0ba79" creation-date="07/27/2021 17:48:18" order-index="3" type="entity">
+                    <layout ax="1172" ay="178" awidth="140" aheight="100" x="50" y="50" width="140" height="100" />
+                  </item>
+                  <item id="die59522eef9694c57a83793043ecb11f84123" iid="3dc02e37b2b64a77b7e6a9c5c5842024" creation-date="07/27/2021 17:48:18" order-index="4" type="comment-connector">
+                    <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="1198" y1="178" x2="1110" y2="78" start-border-pos="0.0462184361049107" end-border-pos="0.514705657958984" name-position="0,20">
+                      <points>
+                        <point x="1198" y="178" />
+                        <point x="1110" y="78" />
+                      </points>
+                    </layout>
+                    <relation from="12b6c55162854a4093e69ffaffe60291" from-iid="f2d9d53cd24f4731b053182f98d0ba79" to="63204861631449398ee2c6a2cc029279" to-iid="7c35fe006f084886b5f7762eb90608cd" />
+                  </item>
+                  <item id="b887b7dfd2344492aebdefd6ecdd6bcf" iid="fd00071a40144ccb9643b5dade48b036" creation-date="07/27/2021 17:48:47" order-index="5" type="relation">
+                    <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="118" y1="101" x2="172" y2="98" start-border-pos="0.375" end-border-pos="0.875" start-local-pos="75" end-local-pos="78" name-position="0,20">
+                      <points>
+                        <point x="118" y="101" />
+                        <point x="172" y="98" />
+                      </points>
+                    </layout>
+                    <relation from="28f89d7e20304320acd1bb72a894d695" from-iid="102736d097944db08d1590b7d67faa82" to="021b245a18b14f53bd90e1a9c8b39a13" to-iid="41bd1dc474a448be98f3eb5cd7d13732" />
+                  </item>
+                  <item id="63c728532d9242af8feaa21baf6c605a" iid="d40277406f984786bdd321892005de21" container="021b245a18b14f53bd90e1a9c8b39a13" container-iid="41bd1dc474a448be98f3eb5cd7d13732" creation-date="07/27/2021 17:49:49" order-index="6" type="ui-label">
+                    <layout ax="353" ay="38" awidth="638" aheight="55" x="353" y="38" width="638" height="55" />
+                  </item>
+                  <item id="9c678fcba9a44a5b9b98399bd65221e1" iid="ae69ba2161304001a4c0f5ed54543a15" container="021b245a18b14f53bd90e1a9c8b39a13" container-iid="41bd1dc474a448be98f3eb5cd7d13732" creation-date="07/27/2021 17:50:31" order-index="7" presentation-style="classifier" type="ui-area">
+                    <layout ax="213" ay="46" awidth="140" aheight="100" x="213" y="46" width="140" height="100" />
+                  </item>
+                  <item id="37e604f9a2b848b69743cfd4dbaa5581" iid="e74aad081d1748f58d8df6d17be285aa" creation-date="07/27/2021 17:51:15" order-index="0" presentation-style="classifier" type="ui-area">
+                    <layout ax="-43" ay="262" awidth="150" aheight="150" x="-43" y="262" width="150" height="150" />
+                  </item>
+                  <item id="27a2ba79450c401a91842a07fe1b039a" iid="50faa50835214aeba144be70fd85caff" creation-date="07/27/2021 17:51:28" order-index="8" type="ui-panel">
+                    <layout ax="167.5" ay="277" awidth="984" aheight="120" x="167.5" y="277" width="984" height="120" rotation-center="-367,65" />
+                  </item>
+                  <item id="2ce4b12911d84872bfb0a67881340713" iid="e5fe55ad3a2342779425d1acadee0b47" creation-date="07/27/2021 17:51:56" order-index="9" type="relation">
+                    <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="107" y1="339" x2="168" y2="337" start-border-pos="0.378333333333333" end-border-pos="0.875" start-local-pos="77" end-local-pos="60" name-position="0,20">
+                      <points>
+                        <point x="107" y="339" />
+                        <point x="168" y="337" />
+                      </points>
+                    </layout>
+                    <relation from="37e604f9a2b848b69743cfd4dbaa5581" from-iid="e74aad081d1748f58d8df6d17be285aa" to="27a2ba79450c401a91842a07fe1b039a" to-iid="50faa50835214aeba144be70fd85caff" />
+                  </item>
+                  <item id="363d37e24bfe4d33a48512b13e9ab637" iid="aa541134c48f45df8a7d378981b1a5da" container="27a2ba79450c401a91842a07fe1b039a" container-iid="50faa50835214aeba144be70fd85caff" creation-date="07/27/2021 17:52:06" order-index="10" type="ui-menu">
+                    <layout ax="254" ay="307" awidth="486" aheight="150" x="254" y="307" width="486" height="55" rotation-center="-47,72" />
+                    <menu />
+                  </item>
+                  <item id="47c59fd7eb2a487f80e311ce518282f9" iid="3989c4fe049740c6bc4eb4b0b12356f2" creation-date="07/27/2021 17:52:22" order-index="11" type="entity">
+                    <layout ax="423" ay="212.5" awidth="140" aheight="31" x="423" y="212.5" width="140" height="31" rotation-center="0,34.5" />
+                  </item>
+                  <item id="die959cbc5b4d144bdabb3ba9ccbedf0b21642" iid="d6879c6598194695bd59ac8fda9ea52b" creation-date="07/27/2021 17:52:22" order-index="12" type="comment-connector">
+                    <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="493" y1="244" x2="495" y2="307" start-border-pos="0.624304253714425" end-border-pos="0.12399791199484" name-position="0,20">
+                      <points>
+                        <point x="493" y="244" />
+                        <point x="495" y="307" />
+                      </points>
+                    </layout>
+                    <relation from="47c59fd7eb2a487f80e311ce518282f9" from-iid="3989c4fe049740c6bc4eb4b0b12356f2" to="363d37e24bfe4d33a48512b13e9ab637" to-iid="aa541134c48f45df8a7d378981b1a5da" />
+                  </item>
+                  <item id="380def74f24d44ba98fefdbecab3861e" iid="e903560d24cf43878730353f97ea8457" creation-date="07/27/2021 18:04:25" order-index="0" presentation-style="classifier" type="ui-area">
+                    <layout ax="-44" ay="470" awidth="150" aheight="150" x="-44" y="470" width="150" height="150" />
+                  </item>
+                  <item id="a6ccc12871a34692a4b8b56d5b748334" iid="f6d1ca4305554dcabfb3a49cc3bd0709" creation-date="07/27/2021 18:04:41" order-index="13" type="ui-panel">
+                    <layout ax="158" ay="470" awidth="989" aheight="150" x="154" y="475" width="989" height="150" rotation-center="-369.5,50" />
+                  </item>
+                  <item id="5bc75ecfa00a461887f58d91a873c591" iid="530d51bae92347dcb11bc9d26c87ee5e" container="a6ccc12871a34692a4b8b56d5b748334" container-iid="f6d1ca4305554dcabfb3a49cc3bd0709" creation-date="07/27/2021 18:05:12" order-index="14" type="ui-label">
+                    <layout ax="208" ay="525" awidth="145" aheight="36" x="214" y="523" width="150" height="20" />
+                  </item>
+                  <item id="98b894f7cb1542068a104ed13f8e55f0" iid="c3b952ca62524c8fb3de495363ca1260" container="a6ccc12871a34692a4b8b56d5b748334" container-iid="f6d1ca4305554dcabfb3a49cc3bd0709" creation-date="07/27/2021 18:05:28" order-index="15" type="ui-label">
+                    <layout ax="367" ay="529" awidth="150" aheight="28" x="367" y="529" width="150" height="20" />
+                  </item>
+                  <item id="b668539602f14f58996b94f1360bb942" iid="e251fead78844e81a0cdb5ea6af9ed13" container="a6ccc12871a34692a4b8b56d5b748334" container-iid="f6d1ca4305554dcabfb3a49cc3bd0709" creation-date="07/27/2021 18:05:43" order-index="16" type="ui-label">
+                    <layout ax="531" ay="525" awidth="150" aheight="36" x="531" y="525" width="150" height="20" />
+                  </item>
+                  <item id="aade57d4eb30469687c150a0dd98963c" iid="8bbf33f220044d82b3f1fb77210e1a02" container="a6ccc12871a34692a4b8b56d5b748334" container-iid="f6d1ca4305554dcabfb3a49cc3bd0709" creation-date="07/27/2021 18:06:06" order-index="17" type="ui-label">
+                    <layout ax="695" ay="525" awidth="150" aheight="36" x="695" y="525" width="150" height="20" />
+                  </item>
+                  <item id="83b8495dc9a44af1a76e0bc531ada740" iid="da990191b0a24cc89fc7439e57734f29" container="a6ccc12871a34692a4b8b56d5b748334" container-iid="f6d1ca4305554dcabfb3a49cc3bd0709" creation-date="07/27/2021 18:06:23" order-index="18" type="ui-label">
+                    <layout ax="891" ay="527" awidth="150" aheight="36" x="891" y="527" width="150" height="20" />
+                  </item>
+                  <item id="8e7d7e3d3b5e4c8885d7a73197e9d87e" iid="d601e2fe6784469ebc424bda97637e30" creation-date="07/27/2021 18:06:55" order-index="19" type="relation">
+                    <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="106" y1="545" x2="158" y2="545" start-border-pos="0.375" end-border-pos="0.875" start-local-pos="75" end-local-pos="75" name-position="0,20">
+                      <points>
+                        <point x="106" y="545" />
+                        <point x="158" y="545" />
+                      </points>
+                    </layout>
+                    <relation from="380def74f24d44ba98fefdbecab3861e" from-iid="e903560d24cf43878730353f97ea8457" to="a6ccc12871a34692a4b8b56d5b748334" to-iid="f6d1ca4305554dcabfb3a49cc3bd0709" />
+                  </item>
+                  <item id="8ba521988c1b4f75a1ca04bf6c467acb" iid="ae3d2fd0e0a84636940634bb52a4fafe" creation-date="07/27/2021 18:07:03" order-index="20" type="entity">
+                    <layout ax="457.5" ay="658" awidth="140" aheight="70" x="457.5" y="658" width="140" height="70" rotation-center="0,-15" />
+                  </item>
+                  <item id="di13a2598a461741b49e18ba80efe755ac9872" iid="6ca955bd49634aabb9ab78409c238709" creation-date="07/27/2021 18:07:03" order-index="21" type="comment-connector">
+                    <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="557" y1="658" x2="589" y2="620" start-border-pos="0.178257751464844" end-border-pos="0.641010573708252" name-position="0,20">
+                      <points>
+                        <point x="557" y="658" />
+                        <point x="589" y="620" />
+                      </points>
+                    </layout>
+                    <relation from="8ba521988c1b4f75a1ca04bf6c467acb" from-iid="ae3d2fd0e0a84636940634bb52a4fafe" to="a6ccc12871a34692a4b8b56d5b748334" to-iid="f6d1ca4305554dcabfb3a49cc3bd0709" />
+                  </item>
+                  <item id="ab8a712f3dcb429abcb5f042218489c6" iid="4f4d087a03dd46668ddabf14f971976c" creation-date="07/27/2021 18:07:33" order-index="0" presentation-style="classifier" type="ui-area">
+                    <layout ax="8" ay="763" awidth="150" aheight="150" x="8" y="763" width="150" height="150" />
+                  </item>
+                  <item id="46d3cf1dc3c64352a6df3137411ede7d" iid="3c4c493b268d4eb3857299d5a3b80fef" creation-date="07/27/2021 18:07:40" order-index="22" type="entity">
+                    <layout ax="283" ay="788" awidth="140" aheight="100" x="283" y="788" width="140" height="100" />
+                  </item>
+                  <item id="dief83b2ffa9c74edfabdb45fdc81364fa8316" iid="10058c94f993497785391809828fcf91" creation-date="07/27/2021 18:07:40" order-index="23" type="comment-connector">
+                    <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="283" y1="838" x2="158" y2="838" start-border-pos="0.875" end-border-pos="0.375" name-position="0,20">
+                      <points>
+                        <point x="283" y="838" />
+                        <point x="158" y="838" />
+                      </points>
+                    </layout>
+                    <relation from="46d3cf1dc3c64352a6df3137411ede7d" from-iid="3c4c493b268d4eb3857299d5a3b80fef" to="ab8a712f3dcb429abcb5f042218489c6" to-iid="4f4d087a03dd46668ddabf14f971976c" />
+                  </item>
+                  <item id="ae640d9c069342f19c812b4c29165935" iid="0ce360d3b2f3498abb5b703ba0c9ffc5" creation-date="07/27/2021 18:08:35" order-index="24" type="entity">
+                    <layout ax="415.25" ay="-99" awidth="155.5" aheight="55" x="415.25" y="-99" width="155.5" height="55" />
+                  </item>
+                </layer>
+              </diagram>
+              <diagram type="web-page" id="p4a670cb7669242afa6de7423e602b622_759713612" name="SiteLogged" order-index="4" overview-order-index="0" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default">
+                <style>
+                  <background-color index="1" color="#FFFFFFFF" />
+                  <background-color index="2" color="#FFFFFFFF" />
+                  <background-type type="solid" />
+                </style>
+                <meta>
+                  <authors>
+                    <author>Dalibor Votruba</author>
+                  </authors>
+                  <description />
+                  <creation-date>07/27/2021 18:09:25</creation-date>
+                  <change-date>07/27/2021 18:28:43</change-date>
+                  <revision-count>0</revision-count>
+                  <version />
+                </meta>
+                <documentation>
+                  <text>
+                    <default>
+                      <style font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </default>
+                    <styles>
+                      <style name="S1" font-name="Segoe UI" font-size="11.25" font-bold="true">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                      <style name="S2" font-name="Segoe UI" font-size="11.25">
+                        <text>
+                          <solid-brush color="#FF000000" />
+                        </text>
+                      </style>
+                    </styles>
+                    <content>
+                      <paragraph>
+                        <style numbering-type="None">
+                          <numbering name="" multi-level="false">
+                            <numbering-level type="None" level="0" format="{0}." />
+                          </numbering>
+                        </style>
+                        <p>
+                          <t>Homepage </t>
+                        </p>
+                        <p>
+                          <t>layout </t>
+                        </p>
+                        <p>
+                          <t>for </t>
+                        </p>
+                        <p s="S1">
+                          <t>Logged </t>
+                        </p>
+                        <p s="S1">
+                          <t>users</t>
+                        </p>
+                        <p s="S2">
+                          <t> only. </t>
+                        </p>
+                        <p s="S2">
+                          <t>Layout </t>
+                        </p>
+                        <p s="S2">
+                          <t>is </t>
+                        </p>
+                        <p s="S1">
+                          <t>NOT</t>
+                        </p>
+                        <p s="S2">
+                          <t> </t>
+                        </p>
+                        <p s="S2">
+                          <t>available </t>
+                        </p>
+                        <p s="S2">
+                          <t>for </t>
+                        </p>
+                        <p s="S2">
+                          <t>CEO </t>
+                        </p>
+                        <p s="S2">
+                          <t>walkers
+</t>
+                        </p>
+                      </paragraph>
+                    </content>
+                  </text>
+                </documentation>
+                <abstract-items>
+                  <item id="di0bda61204c8c4b2ea2fa8f61aadc151f9016" cid="ELEM038" type="ui-panel" name="Header" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:46:37">
+                    <owned-items>
+                      <owned-item ref="dicec11b42d95143adb5cad39031c4d9539016" />
+                      <owned-item ref="di822679e75bd14a2197868ed2393f6b9b9016" />
+                      <owned-item ref="di655f19dc2ee14f1e83b902fdca28b7ca9016" />
+                    </owned-items>
+                  </item>
+                  <item id="dicec11b42d95143adb5cad39031c4d9539016" cid="LG002" type="ui-login" name="Login1" style-class="Flat Light Green" owner="di0bda61204c8c4b2ea2fa8f61aadc151f9016" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:47:53">
+                    <style class="Flat Light Green" />
+                  </item>
+                  <item id="di8f514047cb154de7ae9653e4115d744e4365" cid="CMT009" type="comment" name="Comment" style-class="" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:48:18">
+                    <comment>Login or signup block</comment>
+                  </item>
+                  <item id="3f5332d653994b16abdf6074374ee036" cid="ELEM041" type="universal-connector" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 18:13:36" from="28f89d7e20304320acd1bb72a894d695" to="di0bda61204c8c4b2ea2fa8f61aadc151f9016">
+                    <connector />
+                  </item>
+                  <item id="di822679e75bd14a2197868ed2393f6b9b9016" cid="LBL007" type="ui-label" name="Caption" style-class="" owner="di0bda61204c8c4b2ea2fa8f61aadc151f9016" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:49:49" />
+                  <item id="di655f19dc2ee14f1e83b902fdca28b7ca9016" cid="ELEM039" type="ui-area" name="Logo" style-class="" owner="di0bda61204c8c4b2ea2fa8f61aadc151f9016" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:50:31" />
+                  <item id="di9e8ea9b224c94f3f9dc5bf2bd4c34c664365" cid="ELEM040" type="ui-panel" name="Menu" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:51:28">
+                    <owned-items>
+                      <owned-item ref="dif43810dcbb574d27b11a5161269a5b8c4365" />
+                    </owned-items>
+                  </item>
+                  <item id="di88b48b86de934ce3b233a13f4eedbd834365" cid="ELEM042" type="universal-connector" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:51:56" from="37e604f9a2b848b69743cfd4dbaa5581" to="di9e8ea9b224c94f3f9dc5bf2bd4c34c664365">
+                    <connector />
+                  </item>
+                  <item id="dif43810dcbb574d27b11a5161269a5b8c4365" cid="MNU002" type="ui-menu" name="Menu" style-class="" owner="di9e8ea9b224c94f3f9dc5bf2bd4c34c664365" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 17:52:06">
+                    <menu>
+                      <menu-item uid="mi6b4e431b97664d87836f7283d7f777ba637630071056214266" name="Administration" description="SuperAdmin administration dashboard" />
+                      <menu-item uid="mi0e53f8c1d87d40d2841201b94ee085b2637630070051173461" name="Pipeline" description="Shows document pipeline or structure" />
+                      <menu-item uid="mi9c2a44d562c241dab9991c8efcbba570637630142092886840" name="Invoices" description="Shows all invoices" />
+                      <menu-item uid="midff4f54703274ebdb285a9503cb9bf54637630070500692771" name="Settings" description="Current workspace settings" />
+                      <menu-item uid="mif61c8373a6064c6181a67780018389bd637630070814456016" name="Profile" description="Current user profile" />
+                      <menu-item uid="mib94f4d391203462290dc56edce9fcab0637630056542501238" name="Documentation" description="Detailed documentation" />
+                      <menu-item uid="mieadefe67e47d4fb18fcd77486b889aba637630057449144946" name="Support" description="Support board" />
+                      <menu-item uid="mid698c7a0c9354c3284b4b030ce91da53637630056990181137" name="Contacts" description="Contact informations &amp; support" />
+                    </menu>
+                  </item>
+                </abstract-items>
+                <layer id="6111d048da924bdc847bea60b7fc202d" name="Default" visible="true" enabled="true" locked="false">
+                  <item id="di0bda61204c8c4b2ea2fa8f61aadc151f9016" iid="acbaa88344574450ade0e9f18310b690" creation-date="07/27/2021 17:46:37" order-index="1" type="ui-panel">
+                    <layout ax="172" ay="20" awidth="975" aheight="156" x="172" y="20" width="975" height="156" />
+                  </item>
+                  <item id="dicec11b42d95143adb5cad39031c4d9539016" iid="c666977d33ac4eddae8112889cea566f" container="di0bda61204c8c4b2ea2fa8f61aadc151f9016" container-iid="acbaa88344574450ade0e9f18310b690" creation-date="07/27/2021 17:47:53" order-index="2" type="ui-login">
+                    <layout ax="1072" ay="38" awidth="40" aheight="40" x="1072" y="38" width="40" height="40" />
+                  </item>
+                  <item id="di822679e75bd14a2197868ed2393f6b9b9016" iid="be5b33e8e1a74f28b7de9888b44b1f3f" container="di0bda61204c8c4b2ea2fa8f61aadc151f9016" container-iid="acbaa88344574450ade0e9f18310b690" creation-date="07/27/2021 17:49:49" order-index="6" type="ui-label">
+                    <layout ax="353" ay="38" awidth="638" aheight="55" x="353" y="38" width="638" height="55" />
+                  </item>
+                  <item id="di655f19dc2ee14f1e83b902fdca28b7ca9016" iid="62df75f8ec42469180600af9ddef2c9d" container="di0bda61204c8c4b2ea2fa8f61aadc151f9016" container-iid="acbaa88344574450ade0e9f18310b690" creation-date="07/27/2021 17:50:31" order-index="7" presentation-style="classifier" type="ui-area">
+                    <layout ax="213" ay="46" awidth="140" aheight="100" x="213" y="46" width="140" height="100" />
+                  </item>
+                  <item id="28f89d7e20304320acd1bb72a894d695" iid="3373cc8339314285b336bd35b9d65724" creation-date="07/27/2021 18:13:26" order-index="0" presentation-style="classifier" type="ui-area">
+                    <layout ax="-31" ay="8" awidth="150" aheight="150" x="-31" y="8" width="150" height="150" />
+                  </item>
+                  <item id="3f5332d653994b16abdf6074374ee036" iid="3d4ffced27844b9e92f7fc6a5b7f3d39" creation-date="07/27/2021 18:13:36" order-index="8" type="relation">
+                    <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="119" y1="84" x2="172" y2="98" start-border-pos="0.376666666666667" end-border-pos="0.875" start-local-pos="76" end-local-pos="78" name-position="0,20">
+                      <points>
+                        <point x="119" y="84" />
+                        <point x="172" y="98" />
+                      </points>
+                    </layout>
+                    <relation from="28f89d7e20304320acd1bb72a894d695" from-iid="3373cc8339314285b336bd35b9d65724" to="di0bda61204c8c4b2ea2fa8f61aadc151f9016" to-iid="acbaa88344574450ade0e9f18310b690" />
+                  </item>
+                  <item id="28eb1899e2f1464681066c7a1af6a7cb" iid="c1f842f667d04659b788c42b772e2baf" creation-date="07/27/2021 18:14:08" order-index="9" type="entity">
+                    <layout ax="353" ay="-102" awidth="140" aheight="100" x="353" y="-102" width="140" height="100" />
+                  </item>
+                  <item id="dib50f5af8955141b19465b26b60329bb13027" iid="fbc10bfa29b240be81efb248b095fa10" creation-date="07/27/2021 18:14:08" order-index="10" type="comment-connector">
+                    <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="493" y1="-8" x2="537" y2="20" start-border-pos="0.485759496688843" end-border-pos="0.0935282076322115" name-position="0,20">
+                      <points>
+                        <point x="493" y="-8" />
+                        <point x="537" y="20" />
+                      </points>
+                    </layout>
+                    <relation from="28eb1899e2f1464681066c7a1af6a7cb" from-iid="c1f842f667d04659b788c42b772e2baf" to="di0bda61204c8c4b2ea2fa8f61aadc151f9016" to-iid="acbaa88344574450ade0e9f18310b690" />
+                  </item>
+                  <item id="0a208f15bf574e8abe293c1679aacbb8" iid="8ac629f12e6e4e3dac04c07fea4dfd30" creation-date="07/27/2021 18:14:51" order-index="11" type="entity">
+                    <layout ax="1172" ay="178" awidth="140" aheight="40" x="50" y="50" width="140" height="40" rotation-center="0,30" />
+                  </item>
+                  <item id="di4593e81985594e44945fa0b876b3fb4b6565" iid="bbaa067c03824f6fb264a1e355bbc07c" creation-date="07/27/2021 18:14:51" order-index="12" type="comment-connector">
+                    <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="1221" y1="178" x2="1112" y2="77" start-border-pos="0.0867346627371652" end-border-pos="0.491666650772095" name-position="0,20">
+                      <points>
+                        <point x="1221" y="178" />
+                        <point x="1112" y="77" />
+                      </points>
+                    </layout>
+                    <relation from="0a208f15bf574e8abe293c1679aacbb8" from-iid="8ac629f12e6e4e3dac04c07fea4dfd30" to="dicec11b42d95143adb5cad39031c4d9539016" to-iid="c666977d33ac4eddae8112889cea566f" />
+                  </item>
+                  <item id="372079dffaed444fa2c9506603f08bb5" iid="ceaac9fbf03f4d529665b46d46084747" creation-date="07/27/2021 18:15:46" order-index="13" type="entity">
+                    <layout ax="677" ay="-102" awidth="140" aheight="100" x="677" y="-102" width="140" height="100" />
+                  </item>
+                  <item id="dib0dae82b2efb4b67afc48c680bf7e24f7367" iid="ad76941c7a2946e1b4e68e19454759da" creation-date="07/27/2021 18:15:46" order-index="14" type="comment-connector">
+                    <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="715" y1="-2" x2="690" y2="38" start-border-pos="0.681749398367746" end-border-pos="0.131973601433924" name-position="0,20">
+                      <points>
+                        <point x="715" y="-2" />
+                        <point x="690" y="38" />
+                      </points>
+                    </layout>
+                    <relation from="372079dffaed444fa2c9506603f08bb5" from-iid="ceaac9fbf03f4d529665b46d46084747" to="di822679e75bd14a2197868ed2393f6b9b9016" to-iid="be5b33e8e1a74f28b7de9888b44b1f3f" />
+                  </item>
+                  <item id="di8f514047cb154de7ae9653e4115d744e4365" iid="cf286c55e5f94729917509032719ddd6" creation-date="07/27/2021 17:48:18" order-index="3" type="entity">
+                    <layout ax="1172" ay="178" awidth="140" aheight="100" x="50" y="50" width="140" height="100" />
+                  </item>
+                  <item id="di9e8ea9b224c94f3f9dc5bf2bd4c34c664365" iid="b49a0edd307b4baab420234e688b8522" creation-date="07/27/2021 17:51:28" order-index="8" type="ui-panel">
+                    <layout ax="167.5" ay="277" awidth="984" aheight="126" x="167.5" y="277" width="984" height="120" rotation-center="-367,65" />
+                  </item>
+                  <item id="di88b48b86de934ce3b233a13f4eedbd834365" iid="7c0bc82e166d44ac866195114b54c6dc" creation-date="07/27/2021 17:51:56" order-index="9" type="relation">
+                    <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="74" y1="328" x2="168" y2="340" start-border-pos="0.375" end-border-pos="0.875" start-local-pos="75" end-local-pos="60" name-position="0,20">
+                      <points>
+                        <point x="74" y="328" />
+                        <point x="168" y="340" />
+                      </points>
+                    </layout>
+                    <relation from="37e604f9a2b848b69743cfd4dbaa5581" from-iid="e140e726641b474380c44d3076ded306" to="di9e8ea9b224c94f3f9dc5bf2bd4c34c664365" to-iid="b49a0edd307b4baab420234e688b8522" />
+                  </item>
+                  <item id="dif43810dcbb574d27b11a5161269a5b8c4365" iid="7cf1c7f0d02a4339a796564ba7b8c4c1" container="di9e8ea9b224c94f3f9dc5bf2bd4c34c664365" container-iid="b49a0edd307b4baab420234e688b8522" creation-date="07/27/2021 17:52:06" order-index="10" type="ui-menu">
+                    <layout ax="254" ay="307" awidth="858" aheight="150" x="254" y="307" width="858" height="55" rotation-center="-233,36" />
+                    <menu />
+                  </item>
+                  <item id="37e604f9a2b848b69743cfd4dbaa5581" iid="e140e726641b474380c44d3076ded306" creation-date="07/27/2021 18:17:14" order-index="0" presentation-style="classifier" type="ui-area">
+                    <layout ax="-76" ay="253" awidth="150" aheight="150" x="-76" y="253" width="150" height="150" />
+                  </item>
+                  <item id="380def74f24d44ba98fefdbecab3861e" iid="761d2f308ea443c49d7f482a15c04729" creation-date="07/27/2021 18:27:20" order-index="0" presentation-style="classifier" type="ui-area">
+                    <layout ax="-76" ay="482" awidth="150" aheight="150" x="-76" y="482" width="150" height="150" />
+                  </item>
+                </layer>
+              </diagram>
+            </model>
+            <model id="p17a88d9b3d9740669c03e32f20c31e6c_676864544" name="BusinessLogic" namespace="" order-index="2" expanded="true">
+              <meta>
+                <authors>
+                  <author>Dalibor Votruba</author>
+                </authors>
+                <description />
+                <creation-date>07/30/2021 12:05:06</creation-date>
+                <change-date>01/01/0001 00:00:00</change-date>
+                <revision-count>0</revision-count>
+                <version />
+              </meta>
+              <abstract-items />
+              <sub-models />
+              <diagram type="uml-object" id="p7d0fc1dfbcc44668a0ca8ba4b4b13fdc_249535260" name="ConceptEntity" order-index="1" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default">
+                <style>
+                  <background-color index="1" color="#FFFFFFFF" />
+                  <background-color index="2" color="#FFFFFFFF" />
+                  <background-type type="solid" />
+                </style>
+                <meta>
+                  <authors>
+                    <author>Dalibor Votruba</author>
+                  </authors>
+                  <description />
+                  <creation-date>07/30/2021 12:09:28</creation-date>
+                  <change-date>08/02/2021 13:07:47</change-date>
+                  <revision-count>0</revision-count>
+                  <version />
+                </meta>
+                <abstract-items>
+                  <item id="dc62b4a6eddb4ffea9922a1210e1965a" cid="C013" type="class" name="User" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:10:32" visibility="undefined">
+                    <stereotypes>
+                      <stereotype name="logicentity" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="dc62b4a6eddb4ffea9922a1210e1965a_logicentity_c" type="logicentity" ref="" />
+                    </stereotype-instances>
+                    <source-codes>
+                      <source-code language="ActionScript" />
+                    </source-codes>
+                  </item>
+                  <item id="13a6b5d699e34724b34d2f0e3cf411f6" cid="C014" type="class" name="Workspace" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:11:29" visibility="undefined">
+                    <stereotypes>
+                      <stereotype name="logicentity" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="13a6b5d699e34724b34d2f0e3cf411f6_logicentity_c" type="logicentity" ref="" />
+                    </stereotype-instances>
+                    <owned-items>
+                      <owned-item ref="2bfd767819b9425f95f238ffea4db5b1" />
+                      <owned-item ref="678131d8520145c6997158360e81dc10" />
+                      <owned-item ref="a9bbc3bc731d4849aed1b6b80e3815d1" />
+                    </owned-items>
+                    <attributes>
+                      <attribute id="aed9cd64c4a9a4c08b5c63294311927bb68" cid="PROP001" name="IsGold" creation-date="07/30/2021 13:01:17" property-ref="678131d8520145c6997158360e81dc10" />
+                      <attribute id="a65529183108c4c11861055ba094251cc126" cid="PROP002" name="PresetCustomBillingPlan" creation-date="07/30/2021 13:01:51" property-ref="a9bbc3bc731d4849aed1b6b80e3815d1" />
+                    </attributes>
+                    <source-codes>
+                      <source-code language="ActionScript" />
+                    </source-codes>
+                  </item>
+                  <item id="1085a5f86a0944c0ad687f6e06cffb50" cid="REL015" type="relationship" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:12:09" from="dc62b4a6eddb4ffea9922a1210e1965a" to="13a6b5d699e34724b34d2f0e3cf411f6" visibility="package">
+                    <relation from="dc62b4a6eddb4ffea9922a1210e1965a" to="13a6b5d699e34724b34d2f0e3cf411f6" derived="false">
+                      <start-role id="umlar-75438802-2e01-4eaf-a607-709e2f869558" name="" multiplicity="1" navigability="yes" association-type="association" visibility="public" />
+                      <end-role id="umlar-47ced68c-0a87-498a-8686-753525dfa874" name="" multiplicity="1" navigability="yes" association-type="association" visibility="private" />
+                    </relation>
+                  </item>
+                  <item id="d197a10d487f4feca76eaaa52539564d" cid="C015" type="class" name="Metadocument" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:13:29" visibility="undefined">
+                    <stereotypes>
+                      <stereotype name="logicentity" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="d197a10d487f4feca76eaaa52539564d_logicentity_c" type="logicentity" ref="" />
+                    </stereotype-instances>
+                    <owned-items>
+                      <owned-item ref="4ec933cf2fc84617a9a8494196004a90" />
+                      <owned-item ref="c87a42bd58da46d1b76aad2bf1516f1b" />
+                      <owned-item ref="4ec933cf2fc84617a9a8494196004a90" />
+                      <owned-item ref="4ec933cf2fc84617a9a8494196004a90" />
+                      <owned-item ref="4ec933cf2fc84617a9a8494196004a90" />
+                      <owned-item ref="4ec933cf2fc84617a9a8494196004a90" />
+                      <owned-item ref="4ec933cf2fc84617a9a8494196004a90" />
+                      <owned-item ref="4ec933cf2fc84617a9a8494196004a90" />
+                      <owned-item ref="4ec933cf2fc84617a9a8494196004a90" />
+                      <owned-item ref="4ec933cf2fc84617a9a8494196004a90" />
+                    </owned-items>
+                    <attributes>
+                      <attribute id="a41e119653aca4d98832721d5cffe17c3247" cid="PROP008" name="Created" creation-date="07/30/2021 13:08:53" property-ref="4ec933cf2fc84617a9a8494196004a90" />
+                      <attribute id="a34abfbe36a3d4df69c47452a41cbcec1559" cid="PROP011" name="Presets" creation-date="07/30/2021 13:10:23" property-ref="c87a42bd58da46d1b76aad2bf1516f1b" />
+                    </attributes>
+                    <source-codes>
+                      <source-code language="ActionScript" />
+                    </source-codes>
+                  </item>
+                  <item id="89111c8868e74c7d86df00bfbb4638f4" cid="C016" type="class" name="Artifact" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:13:59" visibility="undefined">
+                    <stereotypes>
+                      <stereotype name="logicentity" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="89111c8868e74c7d86df00bfbb4638f4_logicentity_c" type="logicentity" ref="" />
+                    </stereotype-instances>
+                    <source-codes>
+                      <source-code language="ActionScript" />
+                    </source-codes>
+                  </item>
+                  <item id="ed27237503b94c0c8dd8a55ea41a80de" cid="OBJ002" type="object" name="Input" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:14:20" visibility="undefined">
+                    <stereotypes>
+                      <stereotype name="logicentity" />
+                      <stereotype name="logicentity" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="89111c8868e74c7d86df00bfbb4638f4_logicentity_c" type="logicentity" ref="" />
+                      <stereotype id="89111c8868e74c7d86df00bfbb4638f4_logicentity_c" type="logicentity" ref="" />
+                    </stereotype-instances>
+                    <object classifier-name="Artifact" classifier-ref="89111c8868e74c7d86df00bfbb4638f4">
+                      <attributes />
+                    </object>
+                  </item>
+                  <item id="7bcf0587342a44d88b5682fde3ae1153" cid="OBJ003" type="object" name="Output" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:14:53" visibility="undefined">
+                    <stereotypes>
+                      <stereotype name="logicentity" />
+                      <stereotype name="logicentity" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="89111c8868e74c7d86df00bfbb4638f4_logicentity_c" type="logicentity" ref="" />
+                      <stereotype id="89111c8868e74c7d86df00bfbb4638f4_logicentity_c" type="logicentity" ref="" />
+                    </stereotype-instances>
+                    <object classifier-name="Artifact" classifier-ref="89111c8868e74c7d86df00bfbb4638f4">
+                      <attributes />
+                    </object>
+                  </item>
+                  <item id="039ed01207274b949bda753a8ea2d3dd" cid="CNT001" type="containment" name="InputArtifacts" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:15:18" from="d197a10d487f4feca76eaaa52539564d" to="ed27237503b94c0c8dd8a55ea41a80de">
+                    <stereotypes>
+                      <stereotype name="collection" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="039ed01207274b949bda753a8ea2d3dd_collection_c" type="collection" ref="" />
+                    </stereotype-instances>
+                  </item>
+                  <item id="53bb6e1b715b404283334e2666fc61d2" cid="CNT002" type="containment" name="OutputArtifacts" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:15:53" from="d197a10d487f4feca76eaaa52539564d" to="7bcf0587342a44d88b5682fde3ae1153" />
+                  <item id="5a27949904014136b15cf84200eb1059" cid="GNR001" type="generalization" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:16:25" from="7bcf0587342a44d88b5682fde3ae1153" to="89111c8868e74c7d86df00bfbb4638f4" visibility="package" />
+                  <item id="8da86e7082574d71b02f97bd20811bb0" cid="GNR002" type="generalization" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:16:32" from="ed27237503b94c0c8dd8a55ea41a80de" to="89111c8868e74c7d86df00bfbb4638f4" visibility="package" />
+                  <item id="0b9158aaac074444a6bc4c9843f0df54" cid="CNT003" type="containment" name="Documents" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:17:22" from="13a6b5d699e34724b34d2f0e3cf411f6" to="d197a10d487f4feca76eaaa52539564d">
+                    <stereotypes>
+                      <stereotype name="collection" />
+                    </stereotypes>
+                    <tagged-values>
+                      <tagged-value id="tvf4e8d9ebb6b645f89ff5360919eb4a65" name="Via" type="text" multiple="false" value="Structure" />
+                    </tagged-values>
+                    <stereotype-instances>
+                      <stereotype id="0b9158aaac074444a6bc4c9843f0df54_collection_c" type="collection" ref="" />
+                    </stereotype-instances>
+                  </item>
+                  <item id="4603ec6ea7b8400d81d3a658cd91d7b2" cid="C017" type="class" name="Invoice" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:20:51" visibility="undefined">
+                    <stereotypes>
+                      <stereotype name="logicentity" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="4603ec6ea7b8400d81d3a658cd91d7b2_logicentity_c" type="logicentity" ref="" />
+                    </stereotype-instances>
+                    <owned-items>
+                      <owned-item ref="f329c375b119435e8347637cc1bace4f" />
+                      <owned-item ref="5ed1b0ad3800445a852c688e71a6c3de" />
+                      <owned-item ref="94d9aba746a64d8599671d97b79ff0eb" />
+                      <owned-item ref="f329c375b119435e8347637cc1bace4f" />
+                      <owned-item ref="5ed1b0ad3800445a852c688e71a6c3de" />
+                      <owned-item ref="f329c375b119435e8347637cc1bace4f" />
+                      <owned-item ref="5ed1b0ad3800445a852c688e71a6c3de" />
+                      <owned-item ref="f329c375b119435e8347637cc1bace4f" />
+                      <owned-item ref="5ed1b0ad3800445a852c688e71a6c3de" />
+                      <owned-item ref="f329c375b119435e8347637cc1bace4f" />
+                      <owned-item ref="5ed1b0ad3800445a852c688e71a6c3de" />
+                      <owned-item ref="f329c375b119435e8347637cc1bace4f" />
+                      <owned-item ref="5ed1b0ad3800445a852c688e71a6c3de" />
+                      <owned-item ref="f329c375b119435e8347637cc1bace4f" />
+                      <owned-item ref="5ed1b0ad3800445a852c688e71a6c3de" />
+                      <owned-item ref="f329c375b119435e8347637cc1bace4f" />
+                      <owned-item ref="5ed1b0ad3800445a852c688e71a6c3de" />
+                      <owned-item ref="f329c375b119435e8347637cc1bace4f" />
+                      <owned-item ref="5ed1b0ad3800445a852c688e71a6c3de" />
+                    </owned-items>
+                    <attributes>
+                      <attribute id="ac3f9a2f9163c4d189a8531933c4505ab534" cid="PROP003" name="BillingPlanCopy" creation-date="07/30/2021 13:03:05" property-ref="f329c375b119435e8347637cc1bace4f" />
+                      <attribute id="a8d060b6986044e33819326608c203a60366" cid="PROP004" name="BillingInfoCopy" creation-date="07/30/2021 13:03:59" property-ref="5ed1b0ad3800445a852c688e71a6c3de" />
+                      <attribute id="a76beab62ab8b4e12bdd97bb1d660bd8e447" cid="PROP010" name="Created" creation-date="07/30/2021 13:09:45" property-ref="94d9aba746a64d8599671d97b79ff0eb" />
+                    </attributes>
+                    <source-codes>
+                      <source-code language="ActionScript" />
+                    </source-codes>
+                  </item>
+                  <item id="2bfd767819b9425f95f238ffea4db5b1" cid="CNT004" type="containment" name="Invoices" style-class="" owner="13a6b5d699e34724b34d2f0e3cf411f6" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:21:04" from="13a6b5d699e34724b34d2f0e3cf411f6" to="4603ec6ea7b8400d81d3a658cd91d7b2">
+                    <stereotypes>
+                      <stereotype name="collection" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="2bfd767819b9425f95f238ffea4db5b1_collection_c" type="collection" ref="" />
+                    </stereotype-instances>
+                  </item>
+                  <item id="d9b508c513144e22a67092ae79418750" cid="C018" type="class" name="Status" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:24:56" visibility="undefined">
+                    <stereotypes>
+                      <stereotype name="logicentity" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="d9b508c513144e22a67092ae79418750_logicentity_c" type="logicentity" ref="" />
+                    </stereotype-instances>
+                    <owned-items>
+                      <owned-item ref="bd1ebe5bb6f346f2ad44118f2f4c70f6" />
+                    </owned-items>
+                    <attributes>
+                      <attribute id="a175fcd384f6248329397c1de69190a86567" cid="PROP009" name="Created" creation-date="07/30/2021 13:09:11" property-ref="bd1ebe5bb6f346f2ad44118f2f4c70f6" />
+                    </attributes>
+                    <source-codes>
+                      <source-code language="ActionScript" />
+                    </source-codes>
+                  </item>
+                  <item id="45a4d933848d4de3b8cfb3de6264f86a" cid="REL023" type="relationship" name="Status" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:28:30" from="d9b508c513144e22a67092ae79418750" to="d197a10d487f4feca76eaaa52539564d" visibility="package">
+                    <relation from="d9b508c513144e22a67092ae79418750" to="d197a10d487f4feca76eaaa52539564d" derived="false">
+                      <start-role id="umlar-8f28637d-46c7-4c68-978d-c1ccedf1a029" name="" multiplicity="1" navigability="" association-type="association" visibility="public" />
+                      <end-role id="umlar-2b7043e5-d648-4fbc-9fab-6e5e7101a4fe" name="" multiplicity="1" navigability="" association-type="association" visibility="public" />
+                    </relation>
+                  </item>
+                  <item id="270ad5efb5d64112afacbeca5ffeca86" cid="C019" type="class" name="BillingPlan" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:32:46" visibility="undefined">
+                    <stereotypes>
+                      <stereotype name="logicentity" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="270ad5efb5d64112afacbeca5ffeca86_logicentity_c" type="logicentity" ref="" />
+                    </stereotype-instances>
+                    <owned-items>
+                      <owned-item ref="2950a0ddb8b0416da9ccee2fbe9bf227" />
+                      <owned-item ref="2a23d5a19cd848a8b3a41e2d3f2ee886" />
+                      <owned-item ref="b7d5f2a11d8a440592d8cd8d97ce218d" />
+                      <owned-item ref="2950a0ddb8b0416da9ccee2fbe9bf227" />
+                      <owned-item ref="2a23d5a19cd848a8b3a41e2d3f2ee886" />
+                      <owned-item ref="2950a0ddb8b0416da9ccee2fbe9bf227" />
+                      <owned-item ref="2a23d5a19cd848a8b3a41e2d3f2ee886" />
+                      <owned-item ref="2950a0ddb8b0416da9ccee2fbe9bf227" />
+                      <owned-item ref="2a23d5a19cd848a8b3a41e2d3f2ee886" />
+                      <owned-item ref="2950a0ddb8b0416da9ccee2fbe9bf227" />
+                      <owned-item ref="2a23d5a19cd848a8b3a41e2d3f2ee886" />
+                      <owned-item ref="2950a0ddb8b0416da9ccee2fbe9bf227" />
+                      <owned-item ref="2a23d5a19cd848a8b3a41e2d3f2ee886" />
+                      <owned-item ref="2950a0ddb8b0416da9ccee2fbe9bf227" />
+                      <owned-item ref="2a23d5a19cd848a8b3a41e2d3f2ee886" />
+                      <owned-item ref="2950a0ddb8b0416da9ccee2fbe9bf227" />
+                      <owned-item ref="2a23d5a19cd848a8b3a41e2d3f2ee886" />
+                      <owned-item ref="2950a0ddb8b0416da9ccee2fbe9bf227" />
+                      <owned-item ref="2a23d5a19cd848a8b3a41e2d3f2ee886" />
+                    </owned-items>
+                    <attributes>
+                      <attribute id="a9e9ff08df85849a28cc714ae4ca92c24350" cid="PROP005" name="Presets" creation-date="07/30/2021 13:05:16" property-ref="2950a0ddb8b0416da9ccee2fbe9bf227" />
+                      <attribute id="aa501cc4bc8614d8795e1b3f3e3df7904438" cid="PROP006" name="IsTest" creation-date="07/30/2021 13:05:23" property-ref="2a23d5a19cd848a8b3a41e2d3f2ee886" />
+                      <attribute id="ae00310bb4271410190f3b7da5b9f5f0689" cid="PROP007" name="IsCustom" creation-date="07/30/2021 13:05:46" property-ref="b7d5f2a11d8a440592d8cd8d97ce218d" />
+                    </attributes>
+                    <source-codes>
+                      <source-code language="ActionScript" />
+                    </source-codes>
+                  </item>
+                  <item id="ca3eacde14404b8a939edc0ba600df9b" cid="REL031" type="relationship" name="CurrentBillingPlan" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:33:19" from="13a6b5d699e34724b34d2f0e3cf411f6" to="270ad5efb5d64112afacbeca5ffeca86" visibility="package">
+                    <stereotypes>
+                      <stereotype name="state" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="ca3eacde14404b8a939edc0ba600df9b_state_c" type="state" ref="" />
+                    </stereotype-instances>
+                    <relation from="13a6b5d699e34724b34d2f0e3cf411f6" to="270ad5efb5d64112afacbeca5ffeca86" derived="false">
+                      <start-role id="umlar-4110c721-fe98-4c33-98ef-c12346612966" name="" multiplicity="1" navigability="" association-type="association" visibility="public" />
+                      <end-role id="umlar-f2af6107-9824-4c3a-bf01-14e20c83939d" name="" multiplicity="1" navigability="" association-type="association" visibility="public" />
+                    </relation>
+                  </item>
+                  <item id="39db4851d2f34131ba16e6788ed23770" cid="REL037" type="relationship" name="Consumtion" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:35:08" from="d197a10d487f4feca76eaaa52539564d" to="270ad5efb5d64112afacbeca5ffeca86" visibility="package">
+                    <stereotypes>
+                      <stereotype name="consuption" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="39db4851d2f34131ba16e6788ed23770_consuption_c" type="consuption" ref="" />
+                    </stereotype-instances>
+                    <relation from="d197a10d487f4feca76eaaa52539564d" to="270ad5efb5d64112afacbeca5ffeca86" derived="false">
+                      <start-role id="umlar-7b11633a-bfb2-439a-9c63-1fc2f3305431" name="" multiplicity="1" navigability="" association-type="association" visibility="public" />
+                      <end-role id="umlar-f803f2e3-085b-47fc-940a-4ec2b03aa335" name="" multiplicity="1" navigability="" association-type="association" visibility="public" />
+                    </relation>
+                  </item>
+                  <item id="b67adb8f034c4b75a300bd2f45ac7be9" cid="REL040" type="relationship" name="CurrentBillingPlan" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 12:59:55" from="4603ec6ea7b8400d81d3a658cd91d7b2" to="270ad5efb5d64112afacbeca5ffeca86" visibility="package">
+                    <relation from="4603ec6ea7b8400d81d3a658cd91d7b2" to="270ad5efb5d64112afacbeca5ffeca86" derived="false">
+                      <start-role id="umlar-c788fed1-45e1-4e60-b6c0-f59e97ecd698" name="" multiplicity="1" navigability="" association-type="association" visibility="public" />
+                      <end-role id="umlar-f9b753cc-02e1-408b-839c-37c622f0150f" name="" multiplicity="1" navigability="" association-type="association" visibility="public" />
+                    </relation>
+                  </item>
+                  <item id="678131d8520145c6997158360e81dc10" cid="PROP001" type="property" name="IsGold" style-class="" owner="13a6b5d699e34724b34d2f0e3cf411f6" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:01:17" visibility="private">
+                    <feature />
+                    <structural-feature type="" type-id="" />
+                    <property>
+                      <source-codes>
+                        <source-code language="ActionScript" uid="scs-8c6eed5c-6119-4efb-af1f-13cc446702c0" />
+                      </source-codes>
+                    </property>
+                  </item>
+                  <item id="a9bbc3bc731d4849aed1b6b80e3815d1" cid="PROP002" type="property" name="PresetCustomBillingPlan" style-class="" owner="13a6b5d699e34724b34d2f0e3cf411f6" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:01:51" visibility="private">
+                    <feature />
+                    <structural-feature type="" type-id="" />
+                    <property>
+                      <source-codes>
+                        <source-code language="ActionScript" uid="scs-45fc288e-91ed-4dc1-865f-08bf647aa395" />
+                      </source-codes>
+                    </property>
+                  </item>
+                  <item id="94d9aba746a64d8599671d97b79ff0eb" cid="PROP010" type="property" name="Created" style-class="" owner="4603ec6ea7b8400d81d3a658cd91d7b2" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:09:45" visibility="public">
+                    <feature />
+                    <structural-feature type="" type-id="" />
+                    <property>
+                      <source-codes>
+                        <source-code language="ActionScript" uid="scs-20bb5862-4817-402f-984f-e027b01f9df3" />
+                      </source-codes>
+                    </property>
+                  </item>
+                  <item id="c87a42bd58da46d1b76aad2bf1516f1b" cid="PROP011" type="property" name="Presets" style-class="" owner="d197a10d487f4feca76eaaa52539564d" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:10:23" visibility="public">
+                    <feature />
+                    <structural-feature type="" type-id="" />
+                    <property>
+                      <source-codes>
+                        <source-code language="ActionScript" uid="scs-f37053c1-f973-4af4-b0d3-142b34506d8a" />
+                      </source-codes>
+                    </property>
+                  </item>
+                  <item id="b7d5f2a11d8a440592d8cd8d97ce218d" cid="PROP007" type="property" name="IsCustom" style-class="" owner="270ad5efb5d64112afacbeca5ffeca86" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:05:46" visibility="public">
+                    <feature />
+                    <structural-feature type="" type-id="" />
+                    <property>
+                      <source-codes>
+                        <source-code language="ActionScript" uid="scs-043f36c0-89bd-496a-9d1b-7b78600f1dde" />
+                      </source-codes>
+                    </property>
+                  </item>
+                  <item id="bd1ebe5bb6f346f2ad44118f2f4c70f6" cid="PROP009" type="property" name="Created" style-class="" owner="d9b508c513144e22a67092ae79418750" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/30/2021 13:09:11" visibility="public">
+                    <feature />
+                    <structural-feature type="" type-id="" />
+                    <property>
+                      <source-codes>
+                        <source-code language="ActionScript" uid="scs-fca1ec21-0ac8-4f3c-9bbc-db95441798ec" />
+                      </source-codes>
+                    </property>
+                  </item>
+                  <item id="0479cf838e604132b59b52e39936a7e8" cid="C020" type="class" name="BillingInfo" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="08/02/2021 13:07:16" visibility="undefined">
+                    <stereotypes>
+                      <stereotype name="logicentity" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="0479cf838e604132b59b52e39936a7e8_logicentity_c" type="logicentity" ref="" />
+                    </stereotype-instances>
+                    <source-codes>
+                      <source-code language="ActionScript" />
+                    </source-codes>
+                  </item>
+                  <item id="0c7a9b8875ed47d8b369d64bf9bdc309" cid="CNT005" type="containment" name="BillingInfos" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="08/02/2021 13:07:47" from="13a6b5d699e34724b34d2f0e3cf411f6" to="0479cf838e604132b59b52e39936a7e8">
+                    <stereotypes>
+                      <stereotype name="collection" />
+                    </stereotypes>
+                    <stereotype-instances>
+                      <stereotype id="0c7a9b8875ed47d8b369d64bf9bdc309_collection_c" type="collection" ref="" />
+                    </stereotype-instances>
+                  </item>
+                </abstract-items>
+                <layer id="ea45484e990746db88132cd7800a4dc7" name="Default" visible="true" enabled="true" locked="false">
+                  <item id="dc62b4a6eddb4ffea9922a1210e1965a" iid="59e6f6a087f543948f82faf6958f0935" creation-date="07/30/2021 12:10:32" order-index="0" type="entity">
+                    <layout ax="259" ay="85" awidth="140" aheight="160" x="259" y="85" width="140" height="160" />
+                    <class />
+                  </item>
+                  <item id="13a6b5d699e34724b34d2f0e3cf411f6" iid="d205a32d2f2c43b1820ca61a130242a1" creation-date="07/30/2021 12:11:29" order-index="1" type="entity">
+                    <layout ax="591" ay="85" awidth="140" aheight="160" x="591" y="85" width="140" height="160" />
+                    <class />
+                  </item>
+                  <item id="1085a5f86a0944c0ad687f6e06cffb50" iid="2767b85b6f4c4824b6000113f048056c" creation-date="07/30/2021 12:12:09" order-index="2" type="relation">
+                    <layout start-role-position="25,15" end-role-position="25,-15" start-multiplicity-position="25,-15" end-multiplicity-position="25,15" line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="399" y1="169" x2="591" y2="165" start-border-pos="0.38125" end-border-pos="0.875" start-local-pos="84" end-local-pos="80" name-position="0,20">
+                      <points>
+                        <point x="399" y="169" />
+                        <point x="591" y="165" />
+                      </points>
+                    </layout>
+                    <relation from="dc62b4a6eddb4ffea9922a1210e1965a" from-iid="59e6f6a087f543948f82faf6958f0935" to="13a6b5d699e34724b34d2f0e3cf411f6" to-iid="d205a32d2f2c43b1820ca61a130242a1" />
+                  </item>
+                  <item id="d197a10d487f4feca76eaaa52539564d" iid="7a5f185e0a924d89ae31eaf83d019e85" creation-date="07/30/2021 12:13:29" order-index="3" type="entity">
+                    <layout ax="591" ay="402" awidth="184" aheight="117" x="591" y="402" width="184" height="117" />
+                    <class />
+                  </item>
+                  <item id="89111c8868e74c7d86df00bfbb4638f4" iid="cb9c6a1764b649859efc6ae5789cbba0" creation-date="07/30/2021 12:13:59" order-index="4" type="entity">
+                    <layout ax="1140" ay="488" awidth="204" aheight="112" x="1140" y="488" width="204" height="112" />
+                    <class />
+                  </item>
+                  <item id="ed27237503b94c0c8dd8a55ea41a80de" iid="4862e2126c084fc7b868006917f72844" creation-date="07/30/2021 12:14:20" order-index="5" type="entity">
+                    <layout ax="876" ay="405" awidth="198" aheight="114" x="876" y="405" width="198" height="114" />
+                  </item>
+                  <item id="7bcf0587342a44d88b5682fde3ae1153" iid="92e21ae8cec9435f9921bd252175ca22" creation-date="07/30/2021 12:14:53" order-index="6" type="entity">
+                    <layout ax="876" ay="571" awidth="198" aheight="101" x="876" y="571" width="198" height="101" />
+                  </item>
+                  <item id="039ed01207274b949bda753a8ea2d3dd" iid="4c21a6fcca334462a116ce870bbecf3b" creation-date="07/30/2021 12:15:18" order-index="7" type="relation">
+                    <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="775" y1="456" x2="876" y2="451" start-border-pos="0.365384615384615" end-border-pos="0.899122807017544" start-local-pos="54" end-local-pos="46" name-position="0,20">
+                      <points>
+                        <point x="775" y="456" />
+                        <point x="876" y="451" />
+                      </points>
+                    </layout>
+                    <relation from="d197a10d487f4feca76eaaa52539564d" from-iid="7a5f185e0a924d89ae31eaf83d019e85" to="ed27237503b94c0c8dd8a55ea41a80de" to-iid="4862e2126c084fc7b868006917f72844" />
+                  </item>
+                  <item id="53bb6e1b715b404283334e2666fc61d2" iid="159fc82f129a42f1818cfc122a562a76" creation-date="07/30/2021 12:15:53" order-index="8" type="relation">
+                    <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="775" y1="488" x2="876" y2="622" start-border-pos="0.433760683760684" end-border-pos="0.873762376237624" start-local-pos="86" end-local-pos="51" name-position="0,20">
+                      <points>
+                        <point x="775" y="488" />
+                        <point x="876" y="622" />
+                      </points>
+                    </layout>
+                    <relation from="d197a10d487f4feca76eaaa52539564d" from-iid="7a5f185e0a924d89ae31eaf83d019e85" to="7bcf0587342a44d88b5682fde3ae1153" to-iid="92e21ae8cec9435f9921bd252175ca22" />
+                  </item>
+                  <item id="5a27949904014136b15cf84200eb1059" iid="1443245a3dc44490bd72a209a9f42281" creation-date="07/30/2021 12:16:25" order-index="9" type="relation">
+                    <layout line-style="straight" start-auto-side="false" end-auto-side="false" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="1074" y1="622" x2="1140" y2="544" start-border-pos="0.376237630844116" end-border-pos="0.875" start-local-pos="51" end-local-pos="56" name-position="0,20">
+                      <points>
+                        <point x="1074" y="622" />
+                        <point x="1140" y="544" />
+                      </points>
+                    </layout>
+                    <relation from="7bcf0587342a44d88b5682fde3ae1153" from-iid="92e21ae8cec9435f9921bd252175ca22" to="89111c8868e74c7d86df00bfbb4638f4" to-iid="cb9c6a1764b649859efc6ae5789cbba0" />
+                  </item>
+                  <item id="8da86e7082574d71b02f97bd20811bb0" iid="c6c4ad1b425f4b1c8e9dd736bec261a6" creation-date="07/30/2021 12:16:32" order-index="10" type="relation">
+                    <layout line-style="straight" end-auto-side="false" lock-end-point="true" lock-to-fields="false" auto-path="" x1="1074" y1="511" x2="1140" y2="544" start-border-pos="0.482894763611911" end-border-pos="0.875" end-local-pos="56" name-position="0,20">
+                      <points>
+                        <point x="1074" y="511" />
+                        <point x="1140" y="544" />
+                      </points>
+                    </layout>
+                    <relation from="ed27237503b94c0c8dd8a55ea41a80de" from-iid="4862e2126c084fc7b868006917f72844" to="89111c8868e74c7d86df00bfbb4638f4" to-iid="cb9c6a1764b649859efc6ae5789cbba0" />
+                  </item>
+                  <item id="0b9158aaac074444a6bc4c9843f0df54" iid="d9cf9bdf197948fbad2eeb9b373d9d27" show-field-tagged-values="true" creation-date="07/30/2021 12:17:22" order-index="11" type="relation">
+                    <layout line-style="straight" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="661" y1="245" x2="683" y2="402" start-border-pos="0.625" end-border-pos="0.125" start-local-pos="70" end-local-pos="92" name-position="0,20">
+                      <points>
+                        <point x="661" y="245" />
+                        <point x="683" y="402" />
+                      </points>
+                    </layout>
+                    <relation from="13a6b5d699e34724b34d2f0e3cf411f6" from-iid="d205a32d2f2c43b1820ca61a130242a1" to="d197a10d487f4feca76eaaa52539564d" to-iid="7a5f185e0a924d89ae31eaf83d019e85" />
+                  </item>
+                  <item id="4603ec6ea7b8400d81d3a658cd91d7b2" iid="97639c5e72424613b92def2a1d58e485" creation-date="07/30/2021 12:20:51" order-index="12" type="entity">
+                    <layout ax="817" ay="222" awidth="155" aheight="131" x="817" y="222" width="155" height="131" rotation-center="0,14.5" />
+                    <class />
+                  </item>
+                  <item id="2bfd767819b9425f95f238ffea4db5b1" iid="c565b10095d44018b1438851b645a74e" creation-date="07/30/2021 12:21:04" order-index="13" type="relation">
+                    <layout line-style="straight" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="731" y1="167" x2="817" y2="288" start-border-pos="0.378125" end-border-pos="0.875" start-local-pos="82" end-local-pos="80" name-position="0,20">
+                      <points>
+                        <point x="731" y="167" />
+                        <point x="817" y="288" />
+                      </points>
+                    </layout>
+                    <relation from="13a6b5d699e34724b34d2f0e3cf411f6" from-iid="d205a32d2f2c43b1820ca61a130242a1" to="4603ec6ea7b8400d81d3a658cd91d7b2" to-iid="97639c5e72424613b92def2a1d58e485" />
+                  </item>
+                  <item id="d9b508c513144e22a67092ae79418750" iid="4d7afd30683e42da93b323f71ecef928" creation-date="07/30/2021 12:24:56" order-index="14" type="entity">
+                    <layout ax="226" ay="421" awidth="173" aheight="98" x="226" y="421" width="173" height="98" />
+                    <class />
+                  </item>
+                  <item id="45a4d933848d4de3b8cfb3de6264f86a" iid="1eb6aa584a1b42c3aff7af3af2edf5c3" creation-date="07/30/2021 12:28:30" order-index="17" type="relation">
+                    <layout start-role-position="25,15" end-role-position="25,-15" start-multiplicity-position="25,-15" end-multiplicity-position="25,15" line-style="straight" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="399" y1="470" x2="591" y2="462" start-border-pos="0.375" end-border-pos="0.871794871794872" start-local-pos="49" end-local-pos="60" name-position="0,20">
+                      <points>
+                        <point x="399" y="470" />
+                        <point x="591" y="462" />
+                      </points>
+                    </layout>
+                    <relation from="d9b508c513144e22a67092ae79418750" from-iid="4d7afd30683e42da93b323f71ecef928" to="d197a10d487f4feca76eaaa52539564d" to-iid="7a5f185e0a924d89ae31eaf83d019e85" />
+                  </item>
+                  <item id="270ad5efb5d64112afacbeca5ffeca86" iid="966c907964904e1d89941e89cce0de78" creation-date="07/30/2021 12:32:46" order-index="18" type="entity">
+                    <layout ax="1322" ay="164" awidth="140" aheight="160" x="1322" y="164" width="140" height="160" />
+                    <class />
+                  </item>
+                  <item id="ca3eacde14404b8a939edc0ba600df9b" iid="2bee58078f274708a6a080fe1523e58d" creation-date="07/30/2021 12:33:19" order-index="19" type="relation">
+                    <layout start-role-position="25,15" end-role-position="25,-15" start-multiplicity-position="25,-15" end-multiplicity-position="25,15" line-style="straight" lock-to-fields="false" auto-path="" x1="731" y1="173" x2="1322" y2="236" start-border-pos="0.386820268630981" end-border-pos="0.886820268630981" name-position="0,20">
+                      <points>
+                        <point x="731" y="173" />
+                        <point x="1322" y="236" />
+                      </points>
+                    </layout>
+                    <relation from="13a6b5d699e34724b34d2f0e3cf411f6" from-iid="d205a32d2f2c43b1820ca61a130242a1" to="270ad5efb5d64112afacbeca5ffeca86" to-iid="966c907964904e1d89941e89cce0de78" />
+                  </item>
+                  <item id="39db4851d2f34131ba16e6788ed23770" iid="c9a6953a09dd4bdcaa0930845a3a84d0" creation-date="07/30/2021 12:35:08" order-index="20" type="relation">
+                    <layout start-role-position="25,15" end-role-position="25,-15" start-multiplicity-position="25,-15" end-multiplicity-position="25,15" line-style="straight" lock-start-point="true" lock-end-point="true" lock-to-fields="true" auto-path="" x1="755" y1="402" x2="1322" y2="324" start-border-pos="0.222826086956522" end-border-pos="0.75" start-local-pos="164" end-local-pos="160" name-position="0,20">
+                      <points>
+                        <point x="755" y="402" />
+                        <point x="1322" y="324" />
+                      </points>
+                    </layout>
+                    <relation from="d197a10d487f4feca76eaaa52539564d" from-iid="7a5f185e0a924d89ae31eaf83d019e85" from-field="d197a10d487f4feca76eaaa52539564d_logicentity" to="270ad5efb5d64112afacbeca5ffeca86" to-iid="966c907964904e1d89941e89cce0de78" />
+                  </item>
+                  <item id="b67adb8f034c4b75a300bd2f45ac7be9" iid="4803c7b2f26b44d6910beacdfcfa0f82" creation-date="07/30/2021 12:59:55" order-index="34" type="relation">
+                    <layout start-role-position="25,15" end-role-position="25,-15" start-multiplicity-position="25,-15" end-multiplicity-position="25,15" line-style="straight" lock-to-fields="false" auto-path="" x1="972" y1="281" x2="1322" y2="250" start-border-pos="0.362802345334119" end-border-pos="0.865336346626282" name-position="0,20">
+                      <points>
+                        <point x="972" y="281" />
+                        <point x="1322" y="250" />
+                      </points>
+                    </layout>
+                    <relation from="4603ec6ea7b8400d81d3a658cd91d7b2" from-iid="97639c5e72424613b92def2a1d58e485" to="270ad5efb5d64112afacbeca5ffeca86" to-iid="966c907964904e1d89941e89cce0de78" />
+                  </item>
+                  <item id="778e3a04993a40949b4d0902a423a9cd" iid="f20a6ca3ae1548748b6f36f92045d1b7" creation-date="07/30/2021 13:15:01" order-index="35" type="entity">
+                    <layout ax="847" ay="772" awidth="140" aheight="100" x="50" y="50" width="140" height="100" />
+                  </item>
+                  <item id="difeabfe1a98284539a828ad5a1c9340e04599" iid="1a5331c21cf14cbb8f366ffea318bb76" creation-date="07/30/2021 13:15:01" order-index="36" type="comment-connector">
+                    <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="932" y1="772" x2="960" y2="672" start-border-pos="0.150892857142857" end-border-pos="0.643308080808081" name-position="0,20">
+                      <points>
+                        <point x="932" y="772" />
+                        <point x="960" y="672" />
+                      </points>
+                    </layout>
+                    <relation from="778e3a04993a40949b4d0902a423a9cd" from-iid="f20a6ca3ae1548748b6f36f92045d1b7" to="7bcf0587342a44d88b5682fde3ae1153" to-iid="92e21ae8cec9435f9921bd252175ca22" />
+                  </item>
+                  <item id="5b1add093daa4ce586ea80244612469e" iid="71025b382b094246848b397ced9161a0" creation-date="07/30/2021 13:15:50" order-index="37" type="entity">
+                    <layout ax="425" ay="275" awidth="140" aheight="100" x="425" y="275" width="140" height="100" />
+                  </item>
+                  <item id="di7097db1372c949a8a2c0ed56df76831f6863" iid="8e702bcf08d9455fa2939a19d18ed6df" creation-date="07/30/2021 13:15:50" order-index="38" type="comment-connector">
+                    <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="547" y1="275" x2="591" y2="232" start-border-pos="0.217633928571429" end-border-pos="0.769578313827515" name-position="0,20">
+                      <points>
+                        <point x="547" y="275" />
+                        <point x="591" y="232" />
+                      </points>
+                    </layout>
+                    <relation from="5b1add093daa4ce586ea80244612469e" from-iid="71025b382b094246848b397ced9161a0" to="13a6b5d699e34724b34d2f0e3cf411f6" to-iid="d205a32d2f2c43b1820ca61a130242a1" />
+                  </item>
+                  <item id="0479cf838e604132b59b52e39936a7e8" iid="efdf062aeaf04bccba8a4725cd506473" creation-date="08/02/2021 13:07:16" order-index="39" type="entity">
+                    <layout ax="934" ay="10" awidth="140" aheight="160" x="934" y="10" width="140" height="160" />
+                    <class />
+                  </item>
+                  <item id="0c7a9b8875ed47d8b369d64bf9bdc309" iid="cc1ed4f7f1f147cca22da2e44af86420" creation-date="08/02/2021 13:07:47" order-index="40" type="relation">
+                    <layout line-style="oblique" lock-end-point="true" lock-to-fields="false" auto-path="" x1="731" y1="146" x2="934" y2="90" start-border-pos="0.344951915740967" end-border-pos="0.875" end-local-pos="80" name-position="0,20">
+                      <points>
+                        <point x="731" y="146" />
+                        <point x="934" y="90" />
+                      </points>
+                    </layout>
+                    <relation from="13a6b5d699e34724b34d2f0e3cf411f6" from-iid="d205a32d2f2c43b1820ca61a130242a1" to="0479cf838e604132b59b52e39936a7e8" to-iid="efdf062aeaf04bccba8a4725cd506473" />
+                  </item>
+                </layer>
+              </diagram>
+            </model>
+          </sub-models>
+          <diagram type="sysml-requirement" id="p5e6eff0804874c7f97ebec5f6c90954a_770964511" name="Requirements" order-index="0" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default" show-frame="false">
+            <style>
+              <background-color index="1" color="#FFFFFFFF" />
+              <background-color index="2" color="#FFFFFFFF" />
+              <background-type type="solid" />
+            </style>
+            <meta>
+              <authors>
+                <author>Dalibor Votruba</author>
+              </authors>
+              <description />
+              <creation-date>07/27/2021 20:33:55</creation-date>
+              <change-date>07/29/2021 15:44:38</change-date>
+              <revision-count>0</revision-count>
+              <version />
+            </meta>
+            <documentation>
+              <text>
+                <default>
+                  <style font-name="Segoe UI" font-size="11.25">
+                    <text>
+                      <solid-brush color="#FF000000" />
+                    </text>
+                  </style>
+                </default>
+                <styles />
+                <content>
+                  <paragraph>
+                    <style numbering-type="None">
+                      <numbering name="" multi-level="false">
+                        <numbering-level type="None" level="0" format="{0}." />
+                      </numbering>
+                    </style>
+                    <p>
+                      <t>Set </t>
+                    </p>
+                    <p>
+                      <t>of </t>
+                    </p>
+                    <p>
+                      <t>major </t>
+                    </p>
+                    <p>
+                      <t>requirements </t>
+                    </p>
+                    <p>
+                      <t>which </t>
+                    </p>
+                    <p>
+                      <t>must </t>
+                    </p>
+                    <p>
+                      <t>be </t>
+                    </p>
+                    <p>
+                      <t>fullfiled
+</t>
+                    </p>
+                  </paragraph>
+                </content>
+              </text>
+            </documentation>
+            <abstract-items>
+              <item id="aa496d653c514816baef45c40780da22" cid="C001" type="class" name="RQ1" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 20:34:04" visibility="undefined">
+                <stereotypes>
+                  <stereotype name="requirement" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="ab2e60e5090d4a409ba266c1082d5e5f" type="requirement">
+                    <text>variable BillingPlan support</text>
+                  </stereotype>
+                </stereotype-instances>
+              </item>
+              <item id="575f2d735fc34b3398b77a86e62e7bbf" cid="C002" type="class" name="RQ2" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 20:36:10" visibility="undefined">
+                <stereotypes>
+                  <stereotype name="requirement" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="aef83007fcc743928681c4c096dce441" type="requirement">
+                    <text>Invoicing support deplends on BillingPlan</text>
+                  </stereotype>
+                </stereotype-instances>
+              </item>
+              <item id="69259cba9b9f409fa2c34db4d4125b28" cid="C003" type="class" name="RQ0" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 20:36:35" visibility="undefined">
+                <stereotypes>
+                  <stereotype name="requirement" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="83f424245dee421fbe5a55f118f3c873" type="requirement">
+                    <text>Document processing support with workspaces and abstracts structure</text>
+                  </stereotype>
+                </stereotype-instances>
+              </item>
+              <item id="c37ba4a3dfd040a5951520314e36585a" cid="C004" type="class" name="RQ3" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 20:37:59" visibility="undefined">
+                <stereotypes>
+                  <stereotype name="requirement" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="7c378e723c7d433c8c1215ca7ff217a7" type="requirement">
+                    <text>User roles on workspace</text>
+                  </stereotype>
+                </stereotype-instances>
+              </item>
+              <item id="0d3eac9439a64f28a3a4af00d4fdd5f4" cid="C005" type="class" name="RQ4" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 20:38:44" visibility="undefined">
+                <stereotypes>
+                  <stereotype name="requirement" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="218c1a9a3d6a4ea98759c438dcc6c1e3" type="requirement">
+                    <text>B2B API to upload / download documents</text>
+                  </stereotype>
+                </stereotype-instances>
+              </item>
+              <item id="eaacc256e9c34db9a57a7aef2e3b6f0f" cid="C006" type="class" name="RQ5" style-class="Flat Light Red" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/29/2021 14:46:22" visibility="undefined">
+                <stereotypes>
+                  <stereotype name="requirement" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="466443e702ab4e6b958f0f55900f32a2" type="requirement">
+                    <text>Kreditní systém. Pokud uživatel bude chtít, nastaví si na Workspace obnovení kreditu</text>
+                  </stereotype>
+                </stereotype-instances>
+                <style class="Flat Light Red" />
+              </item>
+              <item id="a5dc239998014f94ac37c8f1eb00e6d2" cid="C007" type="class" name="RQ6" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/29/2021 14:47:19" visibility="undefined">
+                <stereotypes>
+                  <stereotype name="requirement" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="1279c22a281d4600ab152ebbca10aa50" type="requirement">
+                    <text>Invoice se vystavuje při koupi kreditů</text>
+                  </stereotype>
+                </stereotype-instances>
+              </item>
+              <item id="957cc0c893834030b99e13a7d8d6f042" cid="DEP001" type="dependency" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/29/2021 14:48:10" from="a5dc239998014f94ac37c8f1eb00e6d2" to="eaacc256e9c34db9a57a7aef2e3b6f0f" visibility="package" />
+              <item id="a5a7844bb1b141bf934a06661da61d3a" cid="C008" type="class" name="RQ7" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/29/2021 14:49:59" visibility="undefined">
+                <stereotypes>
+                  <stereotype name="requirement" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="6022b329263c40ea93a2ee1330d26684" type="requirement">
+                    <text>Custom BillingPlan pro individuální účtování kteditů, ostatní tento billing plan nevidí.</text>
+                  </stereotype>
+                </stereotype-instances>
+              </item>
+              <item id="dad3b4d40a8148f69c4945551c4b7c0f" cid="DEP002" type="dependency" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/29/2021 14:52:30" from="a5a7844bb1b141bf934a06661da61d3a" to="eaacc256e9c34db9a57a7aef2e3b6f0f" visibility="package" />
+              <item id="49c867ec484c413da95c8b258d5269f7" cid="C009" type="class" name="RQ8" style-class="Flat Light Red" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/29/2021 14:56:33" visibility="undefined">
+                <stereotypes>
+                  <stereotype name="requirement" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="8d6ba5a04f9b4d3b862782640343709a" type="requirement">
+                    <text>Metadokumenty expirují a mažou se. Na základě parametru retenční doby.</text>
+                  </stereotype>
+                </stereotype-instances>
+                <style class="Flat Light Red" />
+              </item>
+              <item id="c07795afc50c403a8be31ce9b363e1b8" cid="C010" type="class" name="RQ9" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/29/2021 14:58:07" visibility="undefined">
+                <stereotypes>
+                  <stereotype name="requirement" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="568c3a6f4dfd4008ad4515ce980b1089" type="requirement">
+                    <text>Fyzické dokumenty se budou ukládat do FileSystem</text>
+                  </stereotype>
+                </stereotype-instances>
+              </item>
+              <item id="5228f239b6044a54b740dc6f80545d8e" cid="C011" type="class" name="RQ10" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/29/2021 15:42:40" visibility="undefined">
+                <stereotypes>
+                  <stereotype name="requirement" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="483c7b662852460886b83617d20e2ed5" type="requirement">
+                    <text>Vstupní soubory existují na AppServeru jen do doby, dokud ProcServer nevrátí OK/Fail</text>
+                  </stereotype>
+                </stereotype-instances>
+                <source-codes>
+                  <source-code language="ActionScript" />
+                </source-codes>
+              </item>
+              <item id="edd0ed8985664b91863ec8489f05c9df" cid="ABS001" type="abstraction" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/29/2021 15:44:38" from="5228f239b6044a54b740dc6f80545d8e" to="49c867ec484c413da95c8b258d5269f7" visibility="package">
+                <stereotypes>
+                  <stereotype name="deriveReqt" />
+                  <stereotype name="abstraction" />
+                </stereotypes>
+                <stereotype-instances>
+                  <stereotype id="9860e2db39b142b789318c9eb08ed9f2" type="deriveReqt" />
+                  <stereotype id="_c" type="abstraction" ref="" />
+                </stereotype-instances>
+              </item>
+            </abstract-items>
+            <layer id="e6c3709d9f094632a0e272f11cecc169" name="Default" visible="true" enabled="true" locked="false">
+              <item id="aa496d653c514816baef45c40780da22" iid="b7c90d07373541909f9e43ef2e5f6a4f" creation-date="07/27/2021 20:34:04" order-index="1" type="entity">
+                <layout ax="189" ay="66" awidth="346" aheight="160" x="189" y="66" width="346" height="160" rotation-center="-103,0" />
+                <class />
+              </item>
+              <item id="575f2d735fc34b3398b77a86e62e7bbf" iid="d3a38c3a302e43ada2e9921f40546ea7" creation-date="07/27/2021 20:36:10" order-index="2" type="entity">
+                <layout ax="644" ay="-125" awidth="284" aheight="133" x="644" y="-125" width="284" height="133" />
+                <class />
+              </item>
+              <item id="69259cba9b9f409fa2c34db4d4125b28" iid="127dda1bea3842e6a113f66c405f75a2" creation-date="07/27/2021 20:36:35" order-index="3" type="entity">
+                <layout ax="720" ay="111" awidth="304" aheight="179" x="720" y="111" width="304" height="179" />
+                <class />
+              </item>
+              <item id="c37ba4a3dfd040a5951520314e36585a" iid="604fb70b969c4b7291da76bc40709197" creation-date="07/27/2021 20:37:59" order-index="4" type="entity">
+                <layout ax="222" ay="341" awidth="346" aheight="160" x="222" y="341" width="346" height="160" rotation-center="-103,0" />
+                <class />
+              </item>
+              <item id="0d3eac9439a64f28a3a4af00d4fdd5f4" iid="90e504752075464fa448228d0b98a50d" creation-date="07/27/2021 20:38:44" order-index="5" type="entity">
+                <layout ax="661" ay="377" awidth="304" aheight="124" x="661" y="377" width="304" height="124" />
+                <class />
+              </item>
+              <item id="eaacc256e9c34db9a57a7aef2e3b6f0f" iid="5d9d077f5ffc4e1e9dcce3172b6ccc47" creation-date="07/29/2021 14:46:22" order-index="6" type="entity">
+                <layout ax="142" ay="-131" awidth="140" aheight="185" x="142" y="-131" width="140" height="160" />
+                <class />
+              </item>
+              <item id="a5dc239998014f94ac37c8f1eb00e6d2" iid="00364679034b464da73437437aed7dc8" creation-date="07/29/2021 14:47:19" order-index="7" type="entity">
+                <layout ax="402" ay="-129" awidth="140" aheight="160" x="402" y="-129" width="140" height="160" />
+                <class />
+              </item>
+              <item id="957cc0c893834030b99e13a7d8d6f042" iid="7b28e2b1c4134636ad5da1f854edec76" creation-date="07/29/2021 14:48:10" order-index="8" type="relation">
+                <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="402" y1="-46" x2="282" y2="-38" start-border-pos="0.8703125" end-border-pos="0.375675675675676" start-local-pos="83" end-local-pos="93" name-position="0,20">
+                  <points>
+                    <point x="402" y="-46" />
+                    <point x="282" y="-38" />
+                  </points>
+                </layout>
+                <relation from="a5dc239998014f94ac37c8f1eb00e6d2" from-iid="00364679034b464da73437437aed7dc8" to="eaacc256e9c34db9a57a7aef2e3b6f0f" to-iid="5d9d077f5ffc4e1e9dcce3172b6ccc47" />
+              </item>
+              <item id="a5a7844bb1b141bf934a06661da61d3a" iid="67c48843079c4fc3b7c166840ad93f40" creation-date="07/29/2021 14:49:59" order-index="9" type="entity">
+                <layout ax="676" ay="-344.5" awidth="191" aheight="196" x="676" y="-344.5" width="191" height="196" />
+                <class />
+              </item>
+              <item id="dad3b4d40a8148f69c4945551c4b7c0f" iid="c802d06f96734c9398c53deb943dcf0c" creation-date="07/29/2021 14:52:30" order-index="10" type="relation">
+                <layout line-style="straight" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="676" y1="-246" x2="282" y2="-38" start-border-pos="0.874362244897959" end-border-pos="0.375675675675676" start-local-pos="98.5" end-local-pos="93" name-position="0,20">
+                  <points>
+                    <point x="676" y="-246" />
+                    <point x="282" y="-38" />
+                  </points>
+                </layout>
+                <relation from="a5a7844bb1b141bf934a06661da61d3a" from-iid="67c48843079c4fc3b7c166840ad93f40" to="eaacc256e9c34db9a57a7aef2e3b6f0f" to-iid="5d9d077f5ffc4e1e9dcce3172b6ccc47" />
+              </item>
+              <item id="49c867ec484c413da95c8b258d5269f7" iid="13fb9ba324794a098fb52724c9d8fff0" creation-date="07/29/2021 14:56:33" order-index="11" type="entity">
+                <layout ax="1036" ay="-165" awidth="191" aheight="173" x="1036" y="-165" width="191" height="173" />
+                <class />
+              </item>
+              <item id="c07795afc50c403a8be31ce9b363e1b8" iid="92d4f8ef7e694498aa26f5aeb630e392" creation-date="07/29/2021 14:58:07" order-index="12" type="entity">
+                <layout ax="1101" ay="85" awidth="140" aheight="160" x="1101" y="85" width="140" height="160" />
+                <class />
+              </item>
+              <item id="5228f239b6044a54b740dc6f80545d8e" iid="78cb35b9278a46e89b07620f6d0a2458" creation-date="07/29/2021 15:42:40" order-index="13" type="entity">
+                <layout ax="1179" ay="378" awidth="177" aheight="185" x="1179" y="378" width="177" height="160" rotation-center="-17,0" />
+                <class />
+              </item>
+              <item id="edd0ed8985664b91863ec8489f05c9df" iid="f2e79d22d0644661937867411d1e029d" creation-date="07/29/2021 15:44:38" order-index="14" type="relation">
+                <layout line-style="straight" lock-end-point="true" lock-to-fields="false" auto-path="" x1="1241" y1="378" x2="1132" y2="8" start-border-pos="0.0874544132900777" end-border-pos="0.62434554973822" end-local-pos="96" name-position="0,20">
+                  <points>
+                    <point x="1241" y="378" />
+                    <point x="1132" y="8" />
+                  </points>
+                </layout>
+                <relation from="5228f239b6044a54b740dc6f80545d8e" from-iid="78cb35b9278a46e89b07620f6d0a2458" to="49c867ec484c413da95c8b258d5269f7" to-iid="13fb9ba324794a098fb52724c9d8fff0" />
+              </item>
+            </layer>
+          </diagram>
+        </model>
+      </sub-models>
+      <diagram type="computer-network" id="pd58be3928ea5459a9674ebb2639df572_697594409" name="InfrastructureTopology" order-index="1" uid="" show-id="false" show-name="true" show-parent-name="false" name-style="local-auto-parents" show-stereotypes="true" show-tagged-values="false" show-template-parameters="true" show-fields="true" show-field-tags="true" show-empty-compartments="true" show-special-indicators="false" show-rules="true" show-attributes="true" show-attribute-visibility="true" show-operations="true" show-operation-parameters="true" show-operation-visibility="true" show-visibility-sign="true" show-nullability="true" show-sequence-number="false" show-extension-points="false" show-relationship-texts="true" show-data="true" show-description="false" show-field-description="false" auto-routed-paths="false" default-line-style="default">
+        <style>
+          <background-color index="1" color="#FFFFFFFF" />
+          <background-color index="2" color="#FFFFFFFF" />
+          <background-type type="solid" />
+        </style>
+        <meta>
+          <authors>
+            <author>Dalibor Votruba</author>
+          </authors>
+          <description>Describes BlueprintOptimizer topology layout</description>
+          <creation-date>07/26/2021 15:54:08</creation-date>
+          <change-date>08/08/2021 16:44:39</change-date>
+          <revision-count>0</revision-count>
+          <version>1.0.1.</version>
+        </meta>
+        <abstract-items>
+          <item id="48550a40115841bca09925172d35c8cc" cid="U001" type="cnd-user" name="User" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:54:19">
+            <style class="Flat Light Green" />
+          </item>
+          <item id="559d0902bef54a13afddcad08f01d00a" cid="I001" type="cnd-internet" name="Internet" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:54:57">
+            <style class="Flat Light Green" />
+          </item>
+          <item id="57f5fb6308574c158c16d569267d37db" cid="S001" type="cnd-server" name="AppServer" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:55:21">
+            <style class="Flat Light Yellow" />
+          </item>
+          <item id="e3a46b4ffe05408990034f5f35aecf8f" cid="DB001" type="cnd-database" name="MSSQL" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:55:46">
+            <style class="Flat Light Yellow" />
+          </item>
+          <item id="4ee59d1a84db4ceeba2ba94669869737" cid="DB002" type="cnd-database" name="FileTable" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:56:09">
+            <style class="Flat Light Yellow" />
+          </item>
+          <item id="f7403e3c217249b3be081017867c0bfd" cid="ELEM001" type="universal-connector" name="" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:56:36" from="e3a46b4ffe05408990034f5f35aecf8f" to="4ee59d1a84db4ceeba2ba94669869737">
+            <stereotypes>
+              <stereotype name="use" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="f7403e3c217249b3be081017867c0bfd_use_c" type="use" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+            <connector />
+          </item>
+          <item id="619900c4e2de4e9c89f0a9657977e43d" cid="ELEM002" type="universal-connector" name="" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:56:47" from="57f5fb6308574c158c16d569267d37db" to="e3a46b4ffe05408990034f5f35aecf8f">
+            <stereotypes>
+              <stereotype name="sqlclient" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="619900c4e2de4e9c89f0a9657977e43d_sqlclient_c" type="sqlclient" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+            <connector />
+          </item>
+          <item id="9b177f8cf6cf4fe9a2393a6027131cef" cid="L001" type="cnd-layer" name="PS-API" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:57:23">
+            <stereotypes>
+              <stereotype name="webservice" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="9b177f8cf6cf4fe9a2393a6027131cef_webservice_c" type="webservice" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+          </item>
+          <item id="bc2364d047234320aacec2680c0e97de" cid="L002" type="cnd-layer" name="B2B-API" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:57:53">
+            <stereotypes>
+              <stereotype name="webservice" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="bc2364d047234320aacec2680c0e97de_webservice_c" type="webservice" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+          </item>
+          <item id="600a6d6508bd46dba1fa95c99a8109ef" cid="L003" type="cnd-layer" name="Web" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:58:30">
+            <stereotypes>
+              <stereotype name="aspnet" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="600a6d6508bd46dba1fa95c99a8109ef_aspnet_c" type="aspnet" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+          </item>
+          <item id="26a971b0241a42b882561406b97a2917" cid="S002" type="cnd-server" name="ProcessServer" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:59:13">
+            <style class="Flat Light Yellow" />
+          </item>
+          <item id="f3dd85258fca48c1843ed2751f2528be" cid="ELEM004" type="universal-connector" name="" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 15:59:53" from="bc2364d047234320aacec2680c0e97de" to="57f5fb6308574c158c16d569267d37db">
+            <stereotypes>
+              <stereotype name="use" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="f3dd85258fca48c1843ed2751f2528be_use_c" type="use" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+            <connector />
+          </item>
+          <item id="b40fac5b6046433486aa54d9d5a91184" cid="ELEM005" type="universal-connector" name="" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:00:02" from="600a6d6508bd46dba1fa95c99a8109ef" to="57f5fb6308574c158c16d569267d37db">
+            <stereotypes>
+              <stereotype name="use" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="b40fac5b6046433486aa54d9d5a91184_use_c" type="use" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+            <connector />
+          </item>
+          <item id="7513e99efd9646d4ade65d4ce9bfb0b1" cid="ELEM006" type="universal-connector" name="" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:00:11" from="57f5fb6308574c158c16d569267d37db" to="9b177f8cf6cf4fe9a2393a6027131cef">
+            <stereotypes>
+              <stereotype name="use" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="7513e99efd9646d4ade65d4ce9bfb0b1_use_c" type="use" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+            <connector />
+          </item>
+          <item id="c0826ca85d174f15a312e356c4a255dd" cid="ELEM007" type="universal-connector" name="" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:00:27" from="26a971b0241a42b882561406b97a2917" to="9b177f8cf6cf4fe9a2393a6027131cef">
+            <stereotypes>
+              <stereotype name="ws-client" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="c0826ca85d174f15a312e356c4a255dd_ws-client_c" type="ws-client" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+            <connector />
+          </item>
+          <item id="7136f886eadc494fac339341db719a9f" cid="DB003" type="cnd-database" name="FileSystem" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:02:40">
+            <style class="Flat Light Yellow" />
+          </item>
+          <item id="7d82a798f3ff4a808f94c3c35907850e" cid="ELEM008" type="universal-connector" name="" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:03:47" from="26a971b0241a42b882561406b97a2917" to="7136f886eadc494fac339341db719a9f">
+            <stereotypes>
+              <stereotype name="use" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="7d82a798f3ff4a808f94c3c35907850e_use_c" type="use" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+            <connector />
+          </item>
+          <item id="883a17b2279244be8c94edf4e7f80878" cid="L004" type="cnd-layer" name="Houdini" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:04:07">
+            <stereotypes>
+              <stereotype name="application" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="883a17b2279244be8c94edf4e7f80878_application_c" type="application" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+          </item>
+          <item id="4b7f1d24b5ef4ebd9936973351e2b530" cid="ELEM009" type="universal-connector" name="" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:04:19" from="26a971b0241a42b882561406b97a2917" to="883a17b2279244be8c94edf4e7f80878">
+            <stereotypes>
+              <stereotype name="use" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="4b7f1d24b5ef4ebd9936973351e2b530_use_c" type="use" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+            <connector />
+          </item>
+          <item id="abb37b9878a04fa9a4426caab1cee35d" cid="ELEM010" type="universal-connector" name="" style-class="Flat Light Yellow" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:04:36" from="883a17b2279244be8c94edf4e7f80878" to="7136f886eadc494fac339341db719a9f">
+            <stereotypes>
+              <stereotype name="use" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="abb37b9878a04fa9a4426caab1cee35d_use_c" type="use" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Yellow" />
+            <connector />
+          </item>
+          <item id="d2687347faee4a9fa964fdea4f08c388" cid="ELEM011" type="universal-connector" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:05:02" from="48550a40115841bca09925172d35c8cc" to="559d0902bef54a13afddcad08f01d00a">
+            <stereotypes>
+              <stereotype name="use" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="d2687347faee4a9fa964fdea4f08c388_use_c" type="use" ref="" />
+            </stereotype-instances>
+            <connector />
+          </item>
+          <item id="a7c16179638f463d920a4717252da959" cid="ELEM012" type="universal-connector" name="" style-class="Flat White" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:05:31" from="559d0902bef54a13afddcad08f01d00a" to="600a6d6508bd46dba1fa95c99a8109ef">
+            <stereotypes>
+              <stereotype name="https" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="a7c16179638f463d920a4717252da959_https_c" type="https" ref="" />
+            </stereotype-instances>
+            <style class="Flat White" />
+            <connector />
+          </item>
+          <item id="8ce9e9d733cd4a488ebccbe74ba7bd21" cid="ELEM013" type="universal-connector" name="" style-class="Flat White" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:05:53" from="559d0902bef54a13afddcad08f01d00a" to="bc2364d047234320aacec2680c0e97de">
+            <stereotypes>
+              <stereotype name="ws-client" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="8ce9e9d733cd4a488ebccbe74ba7bd21_ws-client_c" type="ws-client" ref="" />
+            </stereotype-instances>
+            <style class="Flat White" />
+            <connector />
+          </item>
+          <item id="9e0747f00e464a6aa41a431c4cbbffa3" cid="ELEM003" type="drawing-shape" name="SimpleShape1" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:09:38">
+            <drawing />
+            <drawing-shape type="Rectangle" />
+          </item>
+          <item id="0c876928a1394d17bf1544c534010031" cid="ELEM014" type="drawing-shape" name="SimpleShape2" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:12:39">
+            <stereotypes>
+              <stereotype name="sqlclient" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="0c876928a1394d17bf1544c534010031_sqlclient_c" type="sqlclient" ref="" />
+            </stereotype-instances>
+            <drawing />
+            <drawing-shape type="Rectangle" />
+          </item>
+          <item id="f420c476f2924bbb85805baf2cb05fe5" cid="ELEM015" type="formatted-text" name="FormattedText1" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:16:42">
+            <style class="Flat Light Green" />
+            <formatted-text>
+              <text>
+                <default>
+                  <style font-name="Verdana" font-size="12">
+                    <text>
+                      <solid-brush color="#FF000000" />
+                    </text>
+                  </style>
+                </default>
+                <styles>
+                  <style name="S1" font-name="Times New Roman" font-size="12">
+                    <text>
+                      <solid-brush color="#FF000000" />
+                    </text>
+                  </style>
+                </styles>
+                <definition>
+                  <sections>
+                    <section name="">
+                      <default-page>
+                        <page size="210,297" header-offset="15" footer-offset="15" unit="mm">
+                          <margins left="20" right="20" top="20" bottom="20" />
+                        </page>
+                      </default-page>
+                    </section>
+                  </sections>
+                </definition>
+                <content>
+                  <paragraph>
+                    <style name="Compact Text" numbering-type="None">
+                      <numbering name="" multi-level="false">
+                        <numbering-level type="None" level="0" format="{0}." />
+                      </numbering>
+                      <text>
+                        <style name="S1" font-name="Times New Roman" font-size="12">
+                          <text>
+                            <solid-brush color="#FF000000" />
+                          </text>
+                        </style>
+                      </text>
+                    </style>
+                    <p>
+                      <t>AppServer
+</t>
+                    </p>
+                  </paragraph>
+                </content>
+              </text>
+            </formatted-text>
+          </item>
+          <item id="dif345ccd0149a497e99cf795c81adbfb72718" cid="ELEM016" type="formatted-text" name="FormattedText1" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:16:42">
+            <style class="Flat Light Green" />
+            <formatted-text>
+              <text>
+                <default>
+                  <style font-name="Verdana" font-size="12">
+                    <text>
+                      <solid-brush color="#FF000000" />
+                    </text>
+                  </style>
+                </default>
+                <styles>
+                  <style name="S1" font-name="Times New Roman" font-size="12">
+                    <text>
+                      <solid-brush color="#FF000000" />
+                    </text>
+                  </style>
+                </styles>
+                <definition>
+                  <sections>
+                    <section name="">
+                      <default-page>
+                        <page size="210,297" header-offset="15" footer-offset="15" unit="mm">
+                          <margins left="20" right="20" top="20" bottom="20" />
+                        </page>
+                      </default-page>
+                    </section>
+                  </sections>
+                </definition>
+                <content>
+                  <paragraph>
+                    <style name="Compact Text" numbering-type="None">
+                      <numbering name="" multi-level="false">
+                        <numbering-level type="None" level="0" format="{0}." />
+                      </numbering>
+                      <text>
+                        <style name="S1" font-name="Times New Roman" font-size="12">
+                          <text>
+                            <solid-brush color="#FF000000" />
+                          </text>
+                        </style>
+                      </text>
+                    </style>
+                    <p>
+                      <t>ProcessServer
+</t>
+                    </p>
+                  </paragraph>
+                </content>
+              </text>
+            </formatted-text>
+          </item>
+          <item id="ac503a5cac214b08bdf6aeca985336bd" cid="ELEM017" type="drawing-shape" name="SimpleShape3" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:21:32">
+            <drawing />
+            <drawing-shape type="Rectangle" />
+          </item>
+          <item id="di791366921d8d40f091b44ed8a15114082537" cid="ELEM018" type="drawing-shape" name="SimpleShape3" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:21:32">
+            <drawing />
+            <drawing-shape type="Rectangle" />
+          </item>
+          <item id="dia64bfe36356b41e795252d317944147d9625" cid="ELEM019" type="formatted-text" name="FormattedText1" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:16:42">
+            <style class="Flat Light Green" />
+            <formatted-text>
+              <text>
+                <default>
+                  <style font-name="Verdana" font-size="12">
+                    <text>
+                      <solid-brush color="#FF000000" />
+                    </text>
+                  </style>
+                </default>
+                <styles>
+                  <style name="S1" font-name="Times New Roman" font-size="12">
+                    <text>
+                      <solid-brush color="#FF000000" />
+                    </text>
+                  </style>
+                </styles>
+                <definition>
+                  <sections>
+                    <section name="">
+                      <default-page>
+                        <page size="210,297" header-offset="15" footer-offset="15" unit="mm">
+                          <margins left="20" right="20" top="20" bottom="20" />
+                        </page>
+                      </default-page>
+                    </section>
+                  </sections>
+                </definition>
+                <content>
+                  <paragraph>
+                    <style name="Compact Text" numbering-type="None">
+                      <numbering name="" multi-level="false">
+                        <numbering-level type="None" level="0" format="{0}." />
+                      </numbering>
+                      <text>
+                        <style name="S1" font-name="Times New Roman" font-size="12">
+                          <text>
+                            <solid-brush color="#FF000000" />
+                          </text>
+                        </style>
+                      </text>
+                    </style>
+                    <p>
+                      <t>ProcessServer#1
+</t>
+                    </p>
+                  </paragraph>
+                </content>
+              </text>
+            </formatted-text>
+          </item>
+          <item id="di3238ea10bb734806966f3ea2996115a99834" cid="ELEM020" type="formatted-text" name="FormattedText1" style-class="Flat Light Green" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:16:42">
+            <style class="Flat Light Green" />
+            <formatted-text>
+              <text>
+                <default>
+                  <style font-name="Verdana" font-size="12">
+                    <text>
+                      <solid-brush color="#FF000000" />
+                    </text>
+                  </style>
+                </default>
+                <styles>
+                  <style name="S1" font-name="Times New Roman" font-size="12">
+                    <text>
+                      <solid-brush color="#FF000000" />
+                    </text>
+                  </style>
+                </styles>
+                <definition>
+                  <sections>
+                    <section name="">
+                      <default-page>
+                        <page size="210,297" header-offset="15" footer-offset="15" unit="mm">
+                          <margins left="20" right="20" top="20" bottom="20" />
+                        </page>
+                      </default-page>
+                    </section>
+                  </sections>
+                </definition>
+                <content>
+                  <paragraph>
+                    <style name="Compact Text" numbering-type="None">
+                      <numbering name="" multi-level="false">
+                        <numbering-level type="None" level="0" format="{0}." />
+                      </numbering>
+                      <text>
+                        <style name="S1" font-name="Times New Roman" font-size="12">
+                          <text>
+                            <solid-brush color="#FF000000" />
+                          </text>
+                        </style>
+                      </text>
+                    </style>
+                    <p>
+                      <t>ProcessServer#n
+</t>
+                    </p>
+                  </paragraph>
+                </content>
+              </text>
+            </formatted-text>
+          </item>
+          <item id="bf2b0b3573c84532b37e16092f0aa53b" cid="ELEM022" type="universal-connector" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:23:29" from="ac503a5cac214b08bdf6aeca985336bd" to="di791366921d8d40f091b44ed8a15114082537">
+            <style style-name="Custom Style" shadow-type="smooth" shadow-offset="1,1" shadow-visible="true" shadow-color="#32000000" gloss-effect="rounded" wrap-name-text="true" wrap-other-text="true" padding="1" margin="1" glow-color="#FFFFFFFF" accuracy="0.9" label-connectors-visible="true">
+              <text-style type="name" use-defaults="false" color="#FF000000" font="Verdana;10;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+              <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+              <text-style type="text" use-defaults="false" color="#FF000000" font="Verdana;9;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+              <text-style type="tagged-value" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+              <text-style type="stereotype" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+              <background type="forward-diagonal" colors="#FFFFFFFF,#FFEBEBEB" />
+              <border color="#FF000000" width="1" dash-style="Solid" />
+              <label-connector color="#80000000" width="1" dash-style="Dot" />
+              <alternate-styles>
+                <alternate-style style-name="Alternate" shadow-type="smooth" shadow-offset="1,1" shadow-color="#32000000" gloss-effect="rounded" wrap-name-text="true" wrap-other-text="true" padding="1" margin="1" glow-color="#FFFFFFFF" accuracy="0.9">
+                  <text-style type="name" use-defaults="false" color="#FF000000" font="Verdana;10;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+                  <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+                  <text-style type="text" use-defaults="false" color="#FF000000" font="Verdana;9;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+                  <text-style type="tagged-value" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+                  <text-style type="stereotype" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+                  <background type="vertical-linear" colors="#FF1E90FF,#FF87CEFA" />
+                  <border color="#FF00008B" width="1" dash-style="Solid" />
+                  <label-connector color="#FF000000" width="1" dash-style="Solid" />
+                </alternate-style>
+              </alternate-styles>
+            </style>
+            <connector />
+          </item>
+          <item id="a23ece280c0742cbada25a22ad338e8a" cid="ELEM023" type="universal-connector" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/26/2021 16:24:11" from="9e0747f00e464a6aa41a431c4cbbffa3" to="ac503a5cac214b08bdf6aeca985336bd">
+            <style style-name="Custom Style" shadow-type="smooth" shadow-offset="1,1" shadow-visible="true" shadow-color="#32000000" gloss-effect="rounded" wrap-name-text="true" wrap-other-text="true" padding="1" margin="1" glow-color="#FFFFFFFF" accuracy="0.9" label-connectors-visible="true">
+              <text-style type="name" use-defaults="false" color="#FF000000" font="Verdana;10;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+              <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+              <text-style type="text" use-defaults="false" color="#FF000000" font="Verdana;9;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+              <text-style type="tagged-value" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+              <text-style type="stereotype" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+              <background type="forward-diagonal" colors="#FFFFFFFF,#FFEBEBEB" />
+              <border color="#FF000000" width="1" dash-style="Solid" />
+              <label-connector color="#80000000" width="1" dash-style="Dot" />
+              <alternate-styles>
+                <alternate-style style-name="Alternate" shadow-type="smooth" shadow-offset="1,1" shadow-color="#32000000" gloss-effect="rounded" wrap-name-text="true" wrap-other-text="true" padding="1" margin="1" glow-color="#FFFFFFFF" accuracy="0.9">
+                  <text-style type="name" use-defaults="false" color="#FF000000" font="Verdana;10;B" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+                  <text-style type="part-header" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+                  <text-style type="text" use-defaults="false" color="#FF000000" font="Verdana;9;" horizontal-alignment="left" vertical-alignment="center" shadow="false" />
+                  <text-style type="tagged-value" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+                  <text-style type="stereotype" use-defaults="false" color="#FF1E1E1E" font="Verdana;9;I" horizontal-alignment="center" vertical-alignment="center" shadow="false" />
+                  <background type="vertical-linear" colors="#FF1E90FF,#FF87CEFA" />
+                  <border color="#FF00008B" width="1" dash-style="Solid" />
+                  <label-connector color="#FF000000" width="1" dash-style="Solid" />
+                </alternate-style>
+              </alternate-styles>
+            </style>
+            <connector />
+          </item>
+          <item id="7ee7d67385e04ecb891b8bb53369239b" cid="L005" type="cnd-layer" name="SystemConsole" style-class="Flat Light Cyan" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:45:39">
+            <stereotypes>
+              <stereotype name="console" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="7ee7d67385e04ecb891b8bb53369239b_console_c" type="console" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Cyan" />
+          </item>
+          <item id="61fa259b55b44c46bc8653f1d54f0601" cid="ELEM024" type="universal-connector" name="" style-class="Flat Light Cyan" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="07/27/2021 07:46:39" from="7ee7d67385e04ecb891b8bb53369239b" to="e3a46b4ffe05408990034f5f35aecf8f">
+            <stereotypes>
+              <stereotype name="sqlclient" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="61fa259b55b44c46bc8653f1d54f0601_sqlclient_c" type="sqlclient" ref="" />
+            </stereotype-instances>
+            <style class="Flat Light Cyan" />
+            <connector />
+          </item>
+          <item id="95fbe037654644db8258ba65239e5b98" cid="ELEM072" type="universal-connector" name="" style-class="" change-tracking-state="added" creator="CDoZfQE0eoPT0twKUywpA2Pd3T+96zsw7WLZGMEzIl1z2XhR" creation-date="08/08/2021 16:44:39" from="7ee7d67385e04ecb891b8bb53369239b" to="600a6d6508bd46dba1fa95c99a8109ef">
+            <stereotypes>
+              <stereotype name="ws-clinet" />
+            </stereotypes>
+            <stereotype-instances>
+              <stereotype id="95fbe037654644db8258ba65239e5b98_ws-clinet_c" type="ws-clinet" ref="" />
+            </stereotype-instances>
+            <connector />
+          </item>
+        </abstract-items>
+        <layer id="8b583dec0c374985a98ad1b7192a4c33" name="Default" visible="true" enabled="true" locked="false">
+          <item id="0c876928a1394d17bf1544c534010031" iid="c05dfc56d19a41e58329cda671f325fd" show-stereotypes="true" creation-date="07/26/2021 16:12:39" order-index="25" type="entity">
+            <layout ax="242" ay="-116.625" awidth="569" aheight="670.75" x="242" y="-116.625" width="569" height="670.75" />
+          </item>
+          <item id="48550a40115841bca09925172d35c8cc" iid="caf46adf54144f4788daaa4ae5e89923" creation-date="07/26/2021 15:54:19" order-index="0" type="entity">
+            <layout name-position="0,10" name-anchor="bottom" auto-anchor="true" label-attached="false" ax="-90" ay="72" awidth="100" aheight="125" x="-90" y="72" width="100" height="125" />
+          </item>
+          <item id="559d0902bef54a13afddcad08f01d00a" iid="4f3e2e6075b4471e81e3df1eed8bffb5" creation-date="07/26/2021 15:54:57" order-index="1" type="entity">
+            <layout name-position="0,10" name-anchor="bottom" auto-anchor="true" label-attached="false" ax="76" ay="84.5" awidth="100" aheight="100" x="76" y="84.5" width="100" height="100" />
+          </item>
+          <item id="57f5fb6308574c158c16d569267d37db" iid="dec7d19eae68478cb5804594e04559c3" creation-date="07/26/2021 15:55:21" order-index="2" type="entity">
+            <layout name-position="0,10" name-anchor="bottom" auto-anchor="true" label-attached="false" ax="484" ay="-11" awidth="53" aheight="166" x="484" y="-11" width="53" height="166" />
+          </item>
+          <item id="e3a46b4ffe05408990034f5f35aecf8f" iid="8f020f5d8c834acebe7a69b8bfa6c983" creation-date="07/26/2021 15:55:46" order-index="3" type="entity">
+            <layout name-position="0,10" name-anchor="bottom" auto-anchor="true" label-attached="false" ax="467" ay="299" awidth="87" aheight="125" x="467" y="299" width="87" height="125" />
+          </item>
+          <item id="4ee59d1a84db4ceeba2ba94669869737" iid="740905dfa5db4de3bd4ee0b8930472d6" creation-date="07/26/2021 15:56:09" order-index="4" type="entity">
+            <layout name-position="0,10" name-anchor="bottom" auto-anchor="true" label-attached="false" ax="644" ay="299" awidth="87" aheight="120.5" x="644" y="299" width="87" height="120.5" rotation-center="0,2.25" />
+          </item>
+          <item id="f7403e3c217249b3be081017867c0bfd" iid="a0253f9a42614b00aa54f005d629794b" creation-date="07/26/2021 15:56:36" order-index="5" type="relation">
+            <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="554" y1="361" x2="644" y2="359" start-border-pos="0.374" end-border-pos="0.87551867219917" start-local-pos="62" end-local-pos="60" name-position="0,20">
+              <points>
+                <point x="554" y="361" />
+                <point x="644" y="359" />
+              </points>
+            </layout>
+            <relation from="e3a46b4ffe05408990034f5f35aecf8f" from-iid="8f020f5d8c834acebe7a69b8bfa6c983" to="4ee59d1a84db4ceeba2ba94669869737" to-iid="740905dfa5db4de3bd4ee0b8930472d6" />
+          </item>
+          <item id="619900c4e2de4e9c89f0a9657977e43d" iid="0bd636f4f7554612bddcd2daea1ce37f" creation-date="07/26/2021 15:56:47" order-index="6" type="relation">
+            <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="510" y1="155" x2="510" y2="299" start-border-pos="0.627358490566038" end-border-pos="0.123563218390805" start-local-pos="26" end-local-pos="43" name-position="0,20">
+              <points>
+                <point x="510" y="155" />
+                <point x="510" y="299" />
+              </points>
+            </layout>
+            <relation from="57f5fb6308574c158c16d569267d37db" from-iid="dec7d19eae68478cb5804594e04559c3" to="e3a46b4ffe05408990034f5f35aecf8f" to-iid="8f020f5d8c834acebe7a69b8bfa6c983" />
+          </item>
+          <item id="9b177f8cf6cf4fe9a2393a6027131cef" iid="bfdeb4e8f24c4b34a333858f7acf0546" creation-date="07/26/2021 15:57:23" order-index="7" type="entity">
+            <layout ax="629" ay="-5" awidth="102" aheight="73" x="629" y="-5" width="102" height="73" />
+          </item>
+          <item id="bc2364d047234320aacec2680c0e97de" iid="b34b24b1d12e49a1b821a9a6f2e7bf7d" creation-date="07/26/2021 15:57:53" order-index="8" type="entity">
+            <layout ax="282" ay="-5" awidth="125" aheight="73" x="282" y="-5" width="125" height="73" rotation-center="7.5,0" />
+          </item>
+          <item id="600a6d6508bd46dba1fa95c99a8109ef" iid="09f2397b1a1c4295a24416338c397def" creation-date="07/26/2021 15:58:30" order-index="9" type="entity">
+            <layout ax="275.5" ay="299" awidth="110" aheight="73" x="275.5" y="299" width="110" height="73" rotation-center="245,51.5" />
+          </item>
+          <item id="f3dd85258fca48c1843ed2751f2528be" iid="703e10605a49458fadfe08c1272c3571" creation-date="07/26/2021 15:59:53" order-index="11" type="relation">
+            <layout line-style="oblique" lock-end-point="true" lock-to-fields="false" auto-path="" x1="407" y1="32" x2="484" y2="32" start-border-pos="0.376712328767123" end-border-pos="0.935993975903614" end-local-pos="42.5" name-position="0,20">
+              <points>
+                <point x="407" y="32" />
+                <point x="484" y="32" />
+              </points>
+            </layout>
+            <relation from="bc2364d047234320aacec2680c0e97de" from-iid="b34b24b1d12e49a1b821a9a6f2e7bf7d" to="57f5fb6308574c158c16d569267d37db" to-iid="dec7d19eae68478cb5804594e04559c3" />
+          </item>
+          <item id="b40fac5b6046433486aa54d9d5a91184" iid="3fbde75595e24cbaa83ab16536a256ae" creation-date="07/26/2021 16:00:02" order-index="12" type="relation">
+            <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="386" y1="340" x2="484" y2="72" start-border-pos="0.39041095890411" end-border-pos="0.875" start-local-pos="41" end-local-pos="83" name-position="0,20">
+              <points>
+                <point x="386" y="340" />
+                <point x="484" y="72" />
+              </points>
+            </layout>
+            <relation from="600a6d6508bd46dba1fa95c99a8109ef" from-iid="09f2397b1a1c4295a24416338c397def" to="57f5fb6308574c158c16d569267d37db" to-iid="dec7d19eae68478cb5804594e04559c3" />
+          </item>
+          <item id="7513e99efd9646d4ade65d4ce9bfb0b1" iid="f7cf360a6dda4f82b1cc5911c3da5f3b" creation-date="07/26/2021 16:00:11" order-index="13" type="relation">
+            <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="537" y1="34" x2="629" y2="32" start-border-pos="0.317771084337349" end-border-pos="0.875" start-local-pos="45" end-local-pos="36.5" name-position="0,20">
+              <points>
+                <point x="537" y="34" />
+                <point x="629" y="32" />
+              </points>
+            </layout>
+            <relation from="57f5fb6308574c158c16d569267d37db" from-iid="dec7d19eae68478cb5804594e04559c3" to="9b177f8cf6cf4fe9a2393a6027131cef" to-iid="bfdeb4e8f24c4b34a333858f7acf0546" />
+          </item>
+          <item id="d2687347faee4a9fa964fdea4f08c388" iid="55f88190fbda4f0ab146660435d02c74" creation-date="07/26/2021 16:05:02" order-index="20" type="relation">
+            <layout line-style="oblique" lock-to-fields="false" auto-path="" x1="10" y1="134" x2="76" y2="134" start-border-pos="0.374" end-border-pos="0.87625" name-position="0,20">
+              <points>
+                <point x="10" y="134" />
+                <point x="76" y="134" />
+              </points>
+            </layout>
+            <relation from="48550a40115841bca09925172d35c8cc" from-iid="caf46adf54144f4788daaa4ae5e89923" to="559d0902bef54a13afddcad08f01d00a" to-iid="4f3e2e6075b4471e81e3df1eed8bffb5" />
+          </item>
+          <item id="a7c16179638f463d920a4717252da959" iid="747cd5d1aa894d70b61709837cd2f841" creation-date="07/26/2021 16:05:31" order-index="21" type="relation">
+            <layout line-style="oblique" lock-end-point="true" lock-to-fields="false" auto-path="" x1="163" y1="184" x2="276" y2="335" start-border-pos="0.531716423034668" end-border-pos="0.876712328767123" end-local-pos="36" name-position="0,20">
+              <points>
+                <point x="163" y="184" />
+                <point x="276" y="335" />
+              </points>
+            </layout>
+            <relation from="559d0902bef54a13afddcad08f01d00a" from-iid="4f3e2e6075b4471e81e3df1eed8bffb5" to="600a6d6508bd46dba1fa95c99a8109ef" to-iid="09f2397b1a1c4295a24416338c397def" />
+          </item>
+          <item id="8ce9e9d733cd4a488ebccbe74ba7bd21" iid="d3219fd28a644fcf8dcf55df23a41f59" creation-date="07/26/2021 16:05:53" order-index="22" type="relation">
+            <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="176" y1="105" x2="282" y2="31" start-border-pos="0.301249999552965" end-border-pos="0.876712328767123" start-local-pos="20.5" end-local-pos="36" name-position="0,20">
+              <points>
+                <point x="176" y="105" />
+                <point x="176" y="95" />
+                <point x="282" y="31" />
+              </points>
+            </layout>
+            <relation from="559d0902bef54a13afddcad08f01d00a" from-iid="4f3e2e6075b4471e81e3df1eed8bffb5" to="bc2364d047234320aacec2680c0e97de" to-iid="b34b24b1d12e49a1b821a9a6f2e7bf7d" />
+          </item>
+          <item id="9e0747f00e464a6aa41a431c4cbbffa3" iid="e4c5a5995ad74e9d9699888df81640f0" creation-date="07/26/2021 16:09:38" order-index="23" type="entity">
+            <layout ax="861.2668" ay="-117.25" awidth="453" aheight="672" x="861.2668" y="-117.25" width="453" height="672" rotation-center="-38.5,-33.5" container-layout="simple" />
+          </item>
+          <item id="26a971b0241a42b882561406b97a2917" iid="1823c5e60c534edd8289ed757b901892" creation-date="07/26/2021 15:59:13" order-index="10" type="entity">
+            <layout name-position="0,10" name-anchor="bottom" auto-anchor="true" label-attached="false" ax="945.9404" ay="-13.5" awidth="53" aheight="171" x="945.9404" y="-13.5" width="53" height="171" rotation-center="-10.5542,0" />
+          </item>
+          <item id="c0826ca85d174f15a312e356c4a255dd" iid="84fc4471cbdb4b3db7fafd7e536ba1e4" creation-date="07/26/2021 16:00:27" order-index="14" type="relation">
+            <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="946" y1="34" x2="731" y2="31" start-border-pos="0.929824561403509" end-border-pos="0.373287671232877" start-local-pos="48" end-local-pos="36" name-position="0,20">
+              <points>
+                <point x="946" y="34" />
+                <point x="731" y="31" />
+              </points>
+            </layout>
+            <relation from="26a971b0241a42b882561406b97a2917" from-iid="1823c5e60c534edd8289ed757b901892" to="9b177f8cf6cf4fe9a2393a6027131cef" to-iid="bfdeb4e8f24c4b34a333858f7acf0546" />
+          </item>
+          <item id="7136f886eadc494fac339341db719a9f" iid="f0b6c5cbc0b043e6b53ebf92befebbd6" creation-date="07/26/2021 16:02:40" order-index="15" type="entity">
+            <layout name-position="0,10" name-anchor="bottom" auto-anchor="true" label-attached="false" ax="926.9032" ay="299" awidth="91.07446" aheight="120.5" x="926.9032" y="299" width="91.07446" height="120.5" rotation-center="14.84912,1.5" />
+          </item>
+          <item id="7d82a798f3ff4a808f94c3c35907850e" iid="39597086750a45419d1fe8b8c6f09caf" creation-date="07/26/2021 16:03:47" order-index="16" type="relation">
+            <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="972" y1="158" x2="972" y2="299" start-border-pos="0.627358490566038" end-border-pos="0.125" start-local-pos="26" end-local-pos="51" name-position="0,20">
+              <points>
+                <point x="972" y="158" />
+                <point x="972" y="299" />
+              </points>
+            </layout>
+            <relation from="26a971b0241a42b882561406b97a2917" from-iid="1823c5e60c534edd8289ed757b901892" to="7136f886eadc494fac339341db719a9f" to-iid="f0b6c5cbc0b043e6b53ebf92befebbd6" />
+          </item>
+          <item id="883a17b2279244be8c94edf4e7f80878" iid="d8af16185405494face4097bda26e7c5" creation-date="07/26/2021 16:04:07" order-index="17" type="entity">
+            <layout ax="1077.767" ay="-6.25" awidth="110" aheight="75.5" x="1077.767" y="-6.25" width="110" height="75.5" rotation-center="-14.38342,0" />
+          </item>
+          <item id="4b7f1d24b5ef4ebd9936973351e2b530" iid="5accd256ea544ac38ac22a0cdf1a9aaa" creation-date="07/26/2021 16:04:19" order-index="18" type="relation">
+            <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="999" y1="36" x2="1078" y2="33" start-border-pos="0.323099415204678" end-border-pos="0.869205298013245" start-local-pos="50" end-local-pos="39.5" name-position="0,20">
+              <points>
+                <point x="999" y="36" />
+                <point x="1078" y="33" />
+              </points>
+            </layout>
+            <relation from="26a971b0241a42b882561406b97a2917" from-iid="1823c5e60c534edd8289ed757b901892" to="883a17b2279244be8c94edf4e7f80878" to-iid="d8af16185405494face4097bda26e7c5" />
+          </item>
+          <item id="abb37b9878a04fa9a4426caab1cee35d" iid="fb5fd1528c38414c9670ce5743cd6e34" creation-date="07/26/2021 16:04:36" order-index="19" type="relation">
+            <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="1132" y1="69" x2="972" y2="299" start-border-pos="0.625925925925926" end-border-pos="0.123774509803922" start-local-pos="67" end-local-pos="50.5" name-position="0,20">
+              <points>
+                <point x="1132" y="69" />
+                <point x="1082.171" y="141" />
+                <point x="972" y="299" />
+              </points>
+            </layout>
+            <relation from="883a17b2279244be8c94edf4e7f80878" from-iid="d8af16185405494face4097bda26e7c5" to="7136f886eadc494fac339341db719a9f" to-iid="f0b6c5cbc0b043e6b53ebf92befebbd6" />
+          </item>
+          <item id="f420c476f2924bbb85805baf2cb05fe5" iid="7363f490ece04307b79895a161c7c9fe" creation-date="07/26/2021 16:16:42" order-index="26" type="drawing-formatted-text">
+            <layout ax="287" ay="-96" awidth="87" aheight="30" x="287" y="-96" width="87" height="30" rotation-center="45.5,-13" container-layout="simple" />
+          </item>
+          <item id="dif345ccd0149a497e99cf795c81adbfb72718" iid="7e58d1940d12405e94f78980bd200818" creation-date="07/26/2021 16:16:42" order-index="26" type="drawing-formatted-text">
+            <layout ax="897" ay="-96" awidth="120.9777" aheight="30" x="897" y="-96" width="120.9777" height="30" rotation-center="31.51117,-13" container-layout="simple" />
+          </item>
+          <item id="ac503a5cac214b08bdf6aeca985336bd" iid="442899f9422f4c20b1ebfb51b84d5ab8" creation-date="07/26/2021 16:21:32" order-index="27" type="entity">
+            <layout ax="864" ay="594" awidth="255" aheight="73" x="864" y="594" width="255" height="73" />
+          </item>
+          <item id="di791366921d8d40f091b44ed8a15114082537" iid="e0419be0e21a493e9c87589e25f888d4" creation-date="07/26/2021 16:21:32" order-index="27" type="entity">
+            <layout ax="864" ay="752" awidth="255" aheight="73" x="864" y="752" width="255" height="73" />
+          </item>
+          <item id="dia64bfe36356b41e795252d317944147d9625" iid="174d4b6510534bec8d28dc8ca6828767" creation-date="07/26/2021 16:16:42" order-index="26" type="drawing-formatted-text">
+            <layout ax="877.9628" ay="615.5" awidth="120.9777" aheight="30" x="877.9628" y="615.5" width="120.9777" height="30" rotation-center="31.51117,-13" container-layout="simple" />
+          </item>
+          <item id="di3238ea10bb734806966f3ea2996115a99834" iid="a41f08ff4fcd4a64a5385172b625f760" creation-date="07/26/2021 16:16:42" order-index="26" type="drawing-formatted-text">
+            <layout ax="877.9628" ay="773.5" awidth="120.9777" aheight="30" x="877.9628" y="773.5" width="120.9777" height="30" rotation-center="31.51117,-13" container-layout="simple" />
+          </item>
+          <item id="bf2b0b3573c84532b37e16092f0aa53b" iid="358f1aca0100498d80ef0db47b2dbdda" creation-date="07/26/2021 16:23:29" order-index="28" type="relation">
+            <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="992" y1="667" x2="992" y2="752" start-border-pos="0.624509803921569" end-border-pos="0.125490196078431" start-local-pos="128" end-local-pos="128" name-position="0,20">
+              <points>
+                <point x="992" y="667" />
+                <point x="992" y="752" />
+              </points>
+            </layout>
+            <relation from="ac503a5cac214b08bdf6aeca985336bd" from-iid="442899f9422f4c20b1ebfb51b84d5ab8" to="di791366921d8d40f091b44ed8a15114082537" to-iid="e0419be0e21a493e9c87589e25f888d4" />
+          </item>
+          <item id="a23ece280c0742cbada25a22ad338e8a" iid="2cb2fcd1dbc64cc7a1ce3d2b2942e5e4" creation-date="07/26/2021 16:24:11" order-index="29" type="relation">
+            <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="992" y1="555" x2="992" y2="594" start-border-pos="0.678127393126488" end-border-pos="0.125490196078431" start-local-pos="130.7332" end-local-pos="128" name-position="0,20">
+              <points>
+                <point x="992" y="555" />
+                <point x="992" y="594" />
+              </points>
+            </layout>
+            <relation from="9e0747f00e464a6aa41a431c4cbbffa3" from-iid="e4c5a5995ad74e9d9699888df81640f0" to="ac503a5cac214b08bdf6aeca985336bd" to-iid="442899f9422f4c20b1ebfb51b84d5ab8" />
+          </item>
+          <item id="di90f17f8b6412476c8ab63d41c8e67e917337" iid="e51c1aca47d84886aaa31ac8ffe4ab6e" name="" creation-date="07/26/2021 16:25:36" order-index="30" type="diagram-description">
+            <layout ax="-85" ay="636" awidth="569" aheight="189" x="-85" y="636" width="569" height="189" />
+          </item>
+          <item id="7ee7d67385e04ecb891b8bb53369239b" iid="8c5e2934abb3425b96b0d07f01aedd38" show-stereotypes="true" creation-date="07/27/2021 07:45:39" order-index="31" type="entity">
+            <layout ax="271" ay="155" awidth="147" aheight="73" x="271" y="155" width="147" height="73" rotation-center="228.5,63.5" />
+          </item>
+          <item id="61fa259b55b44c46bc8653f1d54f0601" iid="bcbfbf294e684d29bc44cdf9d58146fd" creation-date="07/27/2021 07:46:39" order-index="32" type="relation">
+            <layout line-style="oblique" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="345" y1="228" x2="467" y2="362" start-border-pos="0.624301675977654" end-border-pos="0.874" start-local-pos="90" end-local-pos="63" name-position="0,20">
+              <points>
+                <point x="345" y="228" />
+                <point x="467" y="362" />
+              </points>
+            </layout>
+            <relation from="7ee7d67385e04ecb891b8bb53369239b" from-iid="8c5e2934abb3425b96b0d07f01aedd38" to="e3a46b4ffe05408990034f5f35aecf8f" to-iid="8f020f5d8c834acebe7a69b8bfa6c983" />
+          </item>
+          <item id="95fbe037654644db8258ba65239e5b98" iid="cb6f9ed88e2943d1b332a4c86456b859" creation-date="08/08/2021 16:44:39" order-index="33" type="relation">
+            <layout line-style="straight" lock-start-point="true" lock-end-point="true" lock-to-fields="false" auto-path="" x1="344" y1="228" x2="345" y2="299" start-border-pos="0.625850340136054" end-border-pos="0.156818181818182" start-local-pos="73" end-local-pos="69" name-position="0,20">
+              <points>
+                <point x="344" y="228" />
+                <point x="345" y="299" />
+              </points>
+            </layout>
+            <relation from="7ee7d67385e04ecb891b8bb53369239b" from-iid="8c5e2934abb3425b96b0d07f01aedd38" to="600a6d6508bd46dba1fa95c99a8109ef" to-iid="09f2397b1a1c4295a24416338c397def" />
+          </item>
+        </layer>
+      </diagram>
+    </model>
+  </models>
+</sim-project>

+ 12 - 0
AppServer/.config/dotnet-tools.json

@@ -0,0 +1,12 @@
+{
+  "version": 1,
+  "isRoot": true,
+  "tools": {
+    "microsoft.dotnet-msidentity": {
+      "version": "1.0.0-preview.2.21253.1",
+      "commands": [
+        "dotnet-msidentity"
+      ]
+    }
+  }
+}

+ 112 - 0
AppServer/AppServer.sln

@@ -0,0 +1,112 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.31424.327
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Web", "Web\Web.csproj", "{23C23612-3A15-44FB-AF2B-A07311A16ADF}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Common", "Common", "{AEA81A6D-7DE2-405E-A2FA-E7DB4B6B3524}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "qdr.fnd.core", "..\Common\qdr.fnd.core\qdr.fnd.core.csproj", "{F829A820-5187-49FF-A93B-4B274E72F584}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "qdr.fnd.core.web", "..\Common\qdr.fnd.core.web\qdr.fnd.core.web.csproj", "{752DFAFC-96DD-4978-B6D4-7130E513D9B9}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Business", "Business\Business.csproj", "{66E64DF5-AE9D-493C-9FB3-C6AA0FEFD51A}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Data", "Data\Data.csproj", "{D35D9CBC-D383-4D6C-9A1D-ADE4851F15EE}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Metadata", "Metadata\Metadata.csproj", "{64F85DA0-7D49-4BF9-956B-5DE10D7A6807}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "qdr.fnd.core.business", "..\Common\qdr.fnd.core.business\qdr.fnd.core.business.csproj", "{0523DD64-2BB8-41F3-A7F8-883DE6A3EFAB}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "qdr.fnd.core.data", "..\Common\qdr.fnd.core.data\qdr.fnd.core.data.csproj", "{0DCAC618-F1BE-45B5-A56E-C9A3D007A6B9}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "qdr.fnd.core.data.itfc", "..\Common\qdr.fnd.core.data.itfc\qdr.fnd.core.data.itfc.csproj", "{3B203CC5-9507-49F4-A5CE-C49EA947BA8A}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Connector.Console", "Connector.Console\Connector.Console.csproj", "{AC79F0EC-E36B-479B-8980-9A2F94D5B5A3}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Connector.B2B", "Connector.B2B\Connector.B2B.csproj", "{0A217339-058F-400F-B19F-04C4A0616020}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Connector.PS", "Connector.PS\Connector.PS.csproj", "{0A3EF4AE-FAF0-49CE-9631-36CD161F1017}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Connectors", "Connectors", "{00487509-0A0E-4942-BDC9-2584F874D3B6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Connector", "Connector\Connector.csproj", "{3CE1E7C5-7514-4EC4-B77C-7813E7A432EA}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Any CPU = Debug|Any CPU
+		Release|Any CPU = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{23C23612-3A15-44FB-AF2B-A07311A16ADF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{23C23612-3A15-44FB-AF2B-A07311A16ADF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{23C23612-3A15-44FB-AF2B-A07311A16ADF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{23C23612-3A15-44FB-AF2B-A07311A16ADF}.Release|Any CPU.Build.0 = Release|Any CPU
+		{F829A820-5187-49FF-A93B-4B274E72F584}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{F829A820-5187-49FF-A93B-4B274E72F584}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{F829A820-5187-49FF-A93B-4B274E72F584}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{F829A820-5187-49FF-A93B-4B274E72F584}.Release|Any CPU.Build.0 = Release|Any CPU
+		{752DFAFC-96DD-4978-B6D4-7130E513D9B9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{752DFAFC-96DD-4978-B6D4-7130E513D9B9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{752DFAFC-96DD-4978-B6D4-7130E513D9B9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{752DFAFC-96DD-4978-B6D4-7130E513D9B9}.Release|Any CPU.Build.0 = Release|Any CPU
+		{66E64DF5-AE9D-493C-9FB3-C6AA0FEFD51A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{66E64DF5-AE9D-493C-9FB3-C6AA0FEFD51A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{66E64DF5-AE9D-493C-9FB3-C6AA0FEFD51A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{66E64DF5-AE9D-493C-9FB3-C6AA0FEFD51A}.Release|Any CPU.Build.0 = Release|Any CPU
+		{D35D9CBC-D383-4D6C-9A1D-ADE4851F15EE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{D35D9CBC-D383-4D6C-9A1D-ADE4851F15EE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{D35D9CBC-D383-4D6C-9A1D-ADE4851F15EE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{D35D9CBC-D383-4D6C-9A1D-ADE4851F15EE}.Release|Any CPU.Build.0 = Release|Any CPU
+		{64F85DA0-7D49-4BF9-956B-5DE10D7A6807}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{64F85DA0-7D49-4BF9-956B-5DE10D7A6807}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{64F85DA0-7D49-4BF9-956B-5DE10D7A6807}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{64F85DA0-7D49-4BF9-956B-5DE10D7A6807}.Release|Any CPU.Build.0 = Release|Any CPU
+		{0523DD64-2BB8-41F3-A7F8-883DE6A3EFAB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{0523DD64-2BB8-41F3-A7F8-883DE6A3EFAB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{0523DD64-2BB8-41F3-A7F8-883DE6A3EFAB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{0523DD64-2BB8-41F3-A7F8-883DE6A3EFAB}.Release|Any CPU.Build.0 = Release|Any CPU
+		{0DCAC618-F1BE-45B5-A56E-C9A3D007A6B9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{0DCAC618-F1BE-45B5-A56E-C9A3D007A6B9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{0DCAC618-F1BE-45B5-A56E-C9A3D007A6B9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{0DCAC618-F1BE-45B5-A56E-C9A3D007A6B9}.Release|Any CPU.Build.0 = Release|Any CPU
+		{3B203CC5-9507-49F4-A5CE-C49EA947BA8A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{3B203CC5-9507-49F4-A5CE-C49EA947BA8A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{3B203CC5-9507-49F4-A5CE-C49EA947BA8A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{3B203CC5-9507-49F4-A5CE-C49EA947BA8A}.Release|Any CPU.Build.0 = Release|Any CPU
+		{AC79F0EC-E36B-479B-8980-9A2F94D5B5A3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{AC79F0EC-E36B-479B-8980-9A2F94D5B5A3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{AC79F0EC-E36B-479B-8980-9A2F94D5B5A3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{AC79F0EC-E36B-479B-8980-9A2F94D5B5A3}.Release|Any CPU.Build.0 = Release|Any CPU
+		{0A217339-058F-400F-B19F-04C4A0616020}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{0A217339-058F-400F-B19F-04C4A0616020}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{0A217339-058F-400F-B19F-04C4A0616020}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{0A217339-058F-400F-B19F-04C4A0616020}.Release|Any CPU.Build.0 = Release|Any CPU
+		{0A3EF4AE-FAF0-49CE-9631-36CD161F1017}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{0A3EF4AE-FAF0-49CE-9631-36CD161F1017}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{0A3EF4AE-FAF0-49CE-9631-36CD161F1017}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{0A3EF4AE-FAF0-49CE-9631-36CD161F1017}.Release|Any CPU.Build.0 = Release|Any CPU
+		{3CE1E7C5-7514-4EC4-B77C-7813E7A432EA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{3CE1E7C5-7514-4EC4-B77C-7813E7A432EA}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{3CE1E7C5-7514-4EC4-B77C-7813E7A432EA}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{3CE1E7C5-7514-4EC4-B77C-7813E7A432EA}.Release|Any CPU.Build.0 = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+	GlobalSection(NestedProjects) = preSolution
+		{F829A820-5187-49FF-A93B-4B274E72F584} = {AEA81A6D-7DE2-405E-A2FA-E7DB4B6B3524}
+		{752DFAFC-96DD-4978-B6D4-7130E513D9B9} = {AEA81A6D-7DE2-405E-A2FA-E7DB4B6B3524}
+		{0523DD64-2BB8-41F3-A7F8-883DE6A3EFAB} = {AEA81A6D-7DE2-405E-A2FA-E7DB4B6B3524}
+		{0DCAC618-F1BE-45B5-A56E-C9A3D007A6B9} = {AEA81A6D-7DE2-405E-A2FA-E7DB4B6B3524}
+		{3B203CC5-9507-49F4-A5CE-C49EA947BA8A} = {AEA81A6D-7DE2-405E-A2FA-E7DB4B6B3524}
+		{AC79F0EC-E36B-479B-8980-9A2F94D5B5A3} = {00487509-0A0E-4942-BDC9-2584F874D3B6}
+		{0A217339-058F-400F-B19F-04C4A0616020} = {00487509-0A0E-4942-BDC9-2584F874D3B6}
+		{0A3EF4AE-FAF0-49CE-9631-36CD161F1017} = {00487509-0A0E-4942-BDC9-2584F874D3B6}
+		{3CE1E7C5-7514-4EC4-B77C-7813E7A432EA} = {00487509-0A0E-4942-BDC9-2584F874D3B6}
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		SolutionGuid = {D052AD93-C763-4301-A873-59AFFA50A972}
+	EndGlobalSection
+EndGlobal

+ 24 - 0
AppServer/Business/Business.csproj

@@ -0,0 +1,24 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <AssemblyName>BO.AppServer.Business</AssemblyName>
+    <RootNamespace>BO.AppServer.Business</RootNamespace>
+    <SignAssembly>true</SignAssembly>
+    <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
+    <DelaySign>false</DelaySign>
+  </PropertyGroup>
+
+  <ItemGroup>
+    <PackageReference Include="Microsoft.AspNetCore.Identity" Version="2.2.0" />
+    <PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="5.0.8" />
+    <PackageReference Include="Microsoft.Extensions.Identity.Core" Version="5.0.8" />
+  </ItemGroup>
+
+  <ItemGroup>
+    <ProjectReference Include="..\..\Common\qdr.fnd.core.business\qdr.fnd.core.business.csproj" />
+    <ProjectReference Include="..\Data\Data.csproj" />
+    <ProjectReference Include="..\Metadata\Metadata.csproj" />
+  </ItemGroup>
+
+</Project>

+ 44 - 0
AppServer/Business/Configuration/Configuration.cs

@@ -0,0 +1,44 @@
+using System.Collections.Generic;
+using System.Globalization;
+
+namespace BO.AppServer.Business.Configuration
+{
+    public class Configuration
+    {
+        public CfgApis Api { get; set; }
+        public CfgSystem System { get; set; }
+        public CfgBusiness Business { get; set; }
+
+        public class CfgApis
+        {
+            public CfgApiConsole Console { get; set; }
+        }
+
+        public class CfgApiConsole
+        {
+            public IList<string> MagicKeys { get; set; }
+        }
+
+        public class CfgSystem
+        {
+            public CfgSystemAccount AccountSystem { get; set; }
+            public CfgSystemAccount AccountConsole { get; set; }
+            public CfgSystemAccount AccountAdmin { get; set; }
+            public string SessionIdleTimeout { get; set; }
+        }
+
+        public class CfgSystemAccount
+        {
+            public string Name { get; set; }
+            public string Password { get; set; }
+            public string Email { get; set; }
+            public string Culture { get; set; }
+            public int CultureLcid => CultureInfo.GetCultureInfo(Culture).LCID;
+        }
+
+        public class CfgBusiness
+        {
+            public string DefaultBillingPlan { get; set; }
+        }
+    }
+}

+ 21 - 0
AppServer/Business/Enums/StatisticItemTypeEnum.cs

@@ -0,0 +1,21 @@
+namespace BO.AppServer.Business.Enums
+{
+    public enum StatisticItemTypeEnum
+    {
+        UserNewCnt,
+        UserLoginCnt,
+        UserLoginB2bCnt,
+        UserTotalCnt,
+        WorspaceNewCnt,
+        WorspaceTotalCnt,
+        InvoiceNewCnt,
+        DocumentNewCnt,
+        DocumentFailedCnt,
+        DocumentDownloadedCnt,
+        DocumentTotalCnt,
+        DocumentProcessedCnt,
+        PSActiveCnt,
+        YieldWoth,
+        YieldWothTotal
+    }
+}

+ 16 - 0
AppServer/Business/ErrorCodes.txt

@@ -0,0 +1,16 @@
+Web
+0001	Internal error
+
+Business (1000 - 2000)
+1000	Entity '{0}' named '{1}' already exists in database.
+1001	Entity '{0}' named '{1}' not exists in database.
+
+
+Business.UserService (1100 - 1200)
+1100	Cannot create user '{0}', user name or email already exists.
+
+Business.AccessService (1200 - 1300)
+1200	User '{0}' has no permission to login in. Access denied!
+1201	User '{0}' doesn't exists!
+1202	User '{0}' is locked out!
+1203	Invalid login attempt for user '{userName}'.

+ 19 - 0
AppServer/Business/Exceptions/EntityAlreadyExistsException.cs

@@ -0,0 +1,19 @@
+using System;
+using Quadarax.Foundation.Core.Exceptions;
+
+namespace BO.AppServer.Business.Exceptions
+{
+    public class EntityAlreadyExistsException : CodeException
+    {
+        private const string CS_MESSAGE = "Entity '{0}' named '{1}' already exists in database.";
+        private const int CN_CODE = 1000;
+
+        public EntityAlreadyExistsException(Type entityType, string name, Exception innerException) : base(CN_CODE, string.Format(CS_MESSAGE, entityType.Name, name), innerException)
+        {
+        }
+
+        public EntityAlreadyExistsException(Type entityType, string name) : base(CN_CODE, string.Format(CS_MESSAGE, entityType.Name, name))
+        {
+        }
+    }
+}

+ 19 - 0
AppServer/Business/Exceptions/EntityNotExistsException.cs

@@ -0,0 +1,19 @@
+using System;
+using Quadarax.Foundation.Core.Exceptions;
+
+namespace BO.AppServer.Business.Exceptions
+{
+    public class EntityNotExistsException : CodeException
+    {
+        private const string CS_MESSAGE = "Entity '{0}' named '{1}' [{2}] not exists in database.";
+        private const int CN_CODE = 1001;
+
+        public EntityNotExistsException(Type entityType, string name,long id, Exception innerException) : base(CN_CODE, string.Format(CS_MESSAGE, entityType.Name, name, id), innerException)
+        {
+        }
+
+        public EntityNotExistsException(Type entityType, string name, long id) : base(CN_CODE, string.Format(CS_MESSAGE, entityType.Name, name, id))
+        {
+        }
+    }
+}

+ 18 - 0
AppServer/Business/HeaderPagingDto.cs

@@ -0,0 +1,18 @@
+using Quadarax.Foundation.Core.Data.Interface;
+
+namespace BO.AppServer.Business
+{
+    public class HeaderPagingDto : PagingDto
+    {
+        public HeaderPagingDto(string page, string pageSize) : base()
+        {
+            if (int.TryParse(page, out var nPage))
+                Page = nPage;
+
+            if (int.TryParse(pageSize, out var nPageSize))
+                PageSize = nPageSize;
+            
+            IsDisabled = nPageSize == 0;
+        }
+    }
+}

+ 21 - 0
AppServer/Business/Mapper/MapperKeyScalarDate.cs

@@ -0,0 +1,21 @@
+using BO.AppServer.Data;
+using BO.AppServer.Data.Entity;
+using BO.AppServer.Metadata.Dto;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Business.Mapper
+{
+    public class MapperKeyScalarDate: Quadarax.Foundation.Core.Data.Mapper.Mapper<MapperKeyScalarDate>
+    {
+        public MapperKeyScalarDate()
+        {
+            //DefineBiDirection<Statistic,StatisticsDto>();
+        }
+        public void DefineBiDirection<TDao, TDto>() 
+            where TDao : class, IDao<KeyScalarDate>, new()
+            where TDto : class, IDto, new()
+        {
+            DefineBiDirection<TDao, TDto, KeyScalarDate>();
+        }
+    }
+}

+ 78 - 0
AppServer/Business/Mapper/MapperKeyScalarDateExt.cs

@@ -0,0 +1,78 @@
+using System.Collections.Generic;
+using System.Linq;
+using BO.AppServer.Data;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Business.Mapper
+{
+    public static class MapperKeyScalarDateExt
+    {
+        public static TDto Map<TDao, TDto>(this TDao dao)
+            where TDao : class, IDao<KeyScalarDate>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dao == null) return null;
+            return MapperKeyScalarDate.Instance.Map<TDao, TDto>(dao);
+        }
+
+        public static TDao MapDto<TDto, TDao>(this TDto dto)
+            where TDao : class, IDao<KeyScalarDate>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dto == null) return null;
+            return MapperKeyScalarDate.Instance.Map<TDto, TDao>(dto);
+        }
+
+        public static void CopyToDto<TDto, TDao>(this TDto @from, TDao to)
+            where TDao : class, IDao<KeyScalarDate>, new()
+            where TDto : class, IDto, new()
+        {
+            if (@from == null) return;
+            if (to == null) return;
+            MapperKeyScalarDate.Instance.Update(@from,to);
+        }
+
+        public static void CopyToDto<TDto, TDao>(this TDao @from, TDto to)
+            where TDao : class, IDao<KeyScalarDate>, new()
+            where TDto : class, IDto, new()
+        {
+            if (to == null) return;
+            if (@from == null) return;
+            MapperKeyScalarDate.Instance.Update(@from,to);
+        }
+
+
+        public static List<TDto> MapList<TDao, TDto>(this IQueryable<TDao> dao)
+            where TDao : class, IDao<KeyScalarDate>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dao == null) return new List<TDto>();
+            return MapperKeyScalarDate.Instance.MapList<TDao, TDto>(dao);
+        }
+
+        public static List<TDto> MapList<TDao, TDto>(this IEnumerable<TDao> dao)
+            where TDao : class, IDao<KeyScalarDate>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dao == null) return new List<TDto>();
+            return MapperKeyScalarDate.Instance.MapList<TDao, TDto>(dao);
+        }
+
+        public static List<TDto> MapList<TDao, TDto>(this IList<TDao> dao)
+            where TDao : class, IDao<KeyScalarDate>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dao == null) return new List<TDto>();
+            return MapperKeyScalarDate.Instance.MapList<TDao, TDto>(dao);
+        }
+
+        public static IQueryable<TDao> MapListDto<TDto,TDao>(this IEnumerable<TDto> dto)
+            where TDao : class, IDao<KeyScalarDate>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dto == null) return new List<TDao>().AsQueryable();
+            return MapperKeyScalarDate.Instance.MapList<TDto, TDao>(dto.AsQueryable()).AsQueryable();
+        }
+
+    }
+}

+ 35 - 0
AppServer/Business/Mapper/MapperLong.cs

@@ -0,0 +1,35 @@
+using BO.AppServer.Data.Entity;
+using BO.AppServer.Metadata.Dto;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Business.Mapper
+{
+    public class MapperLong : Quadarax.Foundation.Core.Data.Mapper.Mapper<MapperLong>
+    {
+        public MapperLong()
+        {
+            //TODO: make automatic
+
+            DefineBiDirection<User,UserRDto>();
+            DefineBiDirection<User,UserCDto>();
+            DefineBiDirection<User,UserUDto>();
+
+            DefineBiDirection<BillingPlan,BillingPlanRDto>();
+            DefineBiDirection<BillingPlan,BillingPlanCDto>();
+            DefineBiDirection<BillingPlan,BillingPlanUDto>();
+
+
+            DefineBiDirection<MimeType,MimeTypeRDto>();
+            DefineBiDirection<MimeType,MimeTypeCDto>();
+            DefineBiDirection<MimeType,MimeTypeUDto>();
+
+            DefineBiDirection<Statistic,StatisticsDto>();
+        }
+        public void DefineBiDirection<TDao, TDto>() 
+            where TDao : class, IDao<long>, new()
+            where TDto : class, IDto, new()
+        {
+            DefineBiDirection<TDao, TDto, long>();
+        }
+    }
+}

+ 77 - 0
AppServer/Business/Mapper/MapperLongExt.cs

@@ -0,0 +1,77 @@
+using System.Collections.Generic;
+using System.Linq;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Business.Mapper
+{
+     public static class MapperLongExt
+    {
+        public static TDto Map<TDao, TDto>(this TDao dao)
+            where TDao : class, IDao<long>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dao == null) return null;
+            return MapperLong.Instance.Map<TDao, TDto>(dao);
+        }
+
+        public static TDao MapDto<TDto, TDao>(this TDto dto)
+            where TDao : class, IDao<long>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dto == null) return null;
+            return MapperLong.Instance.Map<TDto, TDao>(dto);
+        }
+
+        public static void CopyToDto<TDto, TDao>(this TDto @from, TDao to)
+            where TDao : class, IDao<long>, new()
+            where TDto : class, IDto, new()
+        {
+            if (@from == null) return;
+            if (to == null) return;
+            MapperLong.Instance.Update(@from,to);
+        }
+
+        public static void CopyToDto<TDto, TDao>(this TDao @from, TDto to)
+            where TDao : class, IDao<long>, new()
+            where TDto : class, IDto, new()
+        {
+            if (to == null) return;
+            if (@from == null) return;
+            MapperLong.Instance.Update(@from,to);
+        }
+
+
+        public static List<TDto> MapList<TDao, TDto>(this IQueryable<TDao> dao)
+            where TDao : class, IDao<long>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dao == null) return new List<TDto>();
+            return MapperLong.Instance.MapList<TDao, TDto>(dao);
+        }
+
+        public static List<TDto> MapList<TDao, TDto>(this IEnumerable<TDao> dao)
+            where TDao : class, IDao<long>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dao == null) return new List<TDto>();
+            return MapperLong.Instance.MapList<TDao, TDto>(dao);
+        }
+
+        public static List<TDto> MapList<TDao, TDto>(this IList<TDao> dao)
+            where TDao : class, IDao<long>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dao == null) return new List<TDto>();
+            return MapperLong.Instance.MapList<TDao, TDto>(dao);
+        }
+
+        public static IQueryable<TDao> MapListDto<TDto,TDao>(this IEnumerable<TDto> dto)
+            where TDao : class, IDao<long>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dto == null) return new List<TDao>().AsQueryable();
+            return MapperLong.Instance.MapList<TDto, TDao>(dto.AsQueryable()).AsQueryable();
+        }
+
+    }
+}

+ 20 - 0
AppServer/Business/Mapper/MapperNoKey.cs

@@ -0,0 +1,20 @@
+using BO.AppServer.Data.Entity;
+using BO.AppServer.Metadata.Dto;
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Business.Mapper
+{
+    public class MapperNoKey : Quadarax.Foundation.Core.Data.Mapper.Mapper<MapperNoKey>
+    {
+        public MapperNoKey()
+        {
+        }
+        public void DefineBiDirection<TDao, TDto>() 
+            where TDao : class, IDao<NoKey>, new()
+            where TDto : class, IDto, new()
+        {
+            DefineBiDirection<TDao, TDto, NoKey>();
+        }
+    }
+}

+ 80 - 0
AppServer/Business/Mapper/MapperNoKeyExt.cs

@@ -0,0 +1,80 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Business.Mapper
+{
+    public static class MapperNoKeyExt
+    {
+        public static TDto Map<TDao, TDto>(this TDao dao)
+            where TDao : class, IDao<NoKey>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dao == null) return null;
+            return MapperNoKey.Instance.Map<TDao, TDto>(dao);
+        }
+
+        public static TDao MapDto<TDto, TDao>(this TDto dto)
+            where TDao : class, IDao<NoKey>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dto == null) return null;
+            return MapperNoKey.Instance.Map<TDto, TDao>(dto);
+        }
+
+        public static void CopyToDto<TDto, TDao>(this TDto @from, TDao to)
+            where TDao : class, IDao<NoKey>, new()
+            where TDto : class, IDto, new()
+        {
+            if (@from == null) return;
+            if (to == null) return;
+            MapperNoKey.Instance.Update(@from,to);
+        }
+
+        public static void CopyToDto<TDto, TDao>(this TDao @from, TDto to)
+            where TDao : class, IDao<NoKey>, new()
+            where TDto : class, IDto, new()
+        {
+            if (to == null) return;
+            if (@from == null) return;
+            MapperNoKey.Instance.Update(@from,to);
+        }
+
+
+        public static List<TDto> MapList<TDao, TDto>(this IQueryable<TDao> dao)
+            where TDao : class, IDao<NoKey>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dao == null) return new List<TDto>();
+            return MapperNoKey.Instance.MapList<TDao, TDto>(dao);
+        }
+
+        public static List<TDto> MapList<TDao, TDto>(this IEnumerable<TDao> dao)
+            where TDao : class, IDao<NoKey>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dao == null) return new List<TDto>();
+            return MapperNoKey.Instance.MapList<TDao, TDto>(dao);
+        }
+
+        public static List<TDto> MapList<TDao, TDto>(this IList<TDao> dao)
+            where TDao : class, IDao<NoKey>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dao == null) return new List<TDto>();
+            return MapperNoKey.Instance.MapList<TDao, TDto>(dao);
+        }
+
+        public static IQueryable<TDao> MapListDto<TDto,TDao>(this IEnumerable<TDto> dto)
+            where TDao : class, IDao<NoKey>, new()
+            where TDto : class, IDto, new()
+        {
+            if (dto == null) return new List<TDao>().AsQueryable();
+            return MapperNoKey.Instance.MapList<TDto, TDao>(dto.AsQueryable()).AsQueryable();
+        }
+
+    }
+}

+ 115 - 0
AppServer/Business/Services/AccessService.cs

@@ -0,0 +1,115 @@
+using System;
+using System.Security.Principal;
+using System.Threading.Tasks;
+using BO.AppServer.Business.Mapper;
+using BO.AppServer.Data.Entity;
+using BO.AppServer.Metadata.Dto;
+using BO.AppServer.Metadata.Enums;
+using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Identity;
+using Microsoft.Extensions.Logging;
+using Microsoft.Extensions.Options;
+using Quadarax.Foundation.Core.Business;
+using Quadarax.Foundation.Core.Data.Interface.Entity.Dto;
+using Quadarax.Foundation.Core.Exceptions;
+
+namespace BO.AppServer.Business.Services
+{
+    public class AccessService : AbstractService
+    {
+        private const string CS_SESSION_MAGIC = "magic";
+        private const string CS_SESSION_TOKEN = "token";
+
+        private SignInManager<IdentityUser> _manSignIn;
+        private readonly UserManager<IdentityUser> _manUsers;
+        private readonly UserRepo _repoUsers;
+        private readonly IHttpContextAccessor _context;
+        private readonly Configuration.Configuration _configuration;
+        public AccessService(IOptions<Configuration.Configuration> config,
+            SignInManager<IdentityUser> manSignIn,
+            UserManager<IdentityUser> manUsers,
+            UserRepo repoUsers,
+            IPrincipal currentPrincipal, ILoggerFactory logger, 
+            IHttpContextAccessor context) : base(currentPrincipal, logger)
+        {
+            _configuration = config.Value;
+            _manUsers = manUsers ?? throw new ArgumentNullException(nameof(manUsers));
+            _repoUsers = repoUsers ?? throw new ArgumentNullException(nameof(repoUsers));
+            _context = context ?? throw new ArgumentNullException(nameof(context));
+            _manSignIn = manSignIn ?? throw new ArgumentNullException(nameof(manSignIn));
+        }
+
+        public void OpenMagic(string magic)
+        {
+            _context.HttpContext.Session.SetString(CS_SESSION_MAGIC , magic);
+            CheckMagic();
+            _context.HttpContext.Session.SetString(CS_SESSION_TOKEN , "TKN" + Guid.NewGuid().ToString("N"));
+        }
+
+        public string GetToken()
+        {
+            return _context.HttpContext.Session.GetString(CS_SESSION_TOKEN);
+        }
+
+        public void CheckMagic()
+        {
+            if (!_configuration.Api.Console.MagicKeys.Contains(_context.HttpContext.Session.GetString(CS_SESSION_MAGIC)))
+                throw new UnauthorizedAccessException("Wrong magic key to access to BO.AppServer api!");
+        }
+        public void CheckToken(string token)
+        {
+            if (string.IsNullOrEmpty(token) || _context.HttpContext.Session.GetString(CS_SESSION_TOKEN) != token)
+                throw new UnauthorizedAccessException("Wrong token to access to BO.AppServer api!");
+        }
+
+        public async Task<ResultValueDto<UserRDto>> Login(string userName, string userPassword, RoleEnum loginForRole)
+        {
+            var idtUser = await _manUsers.FindByNameAsync(userName);
+            if (idtUser == null)
+            {
+                return new ResultValueDto<UserRDto>(new CodeException(1201,
+                    $"User '{userName}' doesn't exists!"));
+            }
+            var isApproved = await _manUsers.IsInRoleAsync(idtUser, loginForRole.ToString());
+            if (!isApproved)
+            {
+                return new ResultValueDto<UserRDto>(new CodeException(1200,
+                    $"User '{userName}' has no permission to login in. Access denied!"));
+            }
+
+            var user = _repoUsers.GetByIfReference(idtUser.Id);
+            if (!user.IsEnabled)
+            {
+                Log.LogWarning($"User '{userName}' is disabled for log-in!");
+                return new ResultValueDto<UserRDto>(new CodeException(1202,
+                    $"User '{userName}' is disabled for log-in!"));
+            }
+
+
+            var result = await _manSignIn.PasswordSignInAsync(userName, userPassword, false, lockoutOnFailure: false);
+            if (result.Succeeded)
+            {
+               
+                user.LastLogged = DateTime.Now;
+                _repoUsers.Set(user);
+                _repoUsers.Commit();
+                Log.LogInformation($"User '{userName}' [{user.Id}/{idtUser.Id}] logged in.");
+                return new ResultValueDto<UserRDto>(user.Map<User, UserRDto>());
+            }
+            if (result.RequiresTwoFactor)
+            {
+                Log.LogWarning($"Two-factor sign for '{userName}' is set but not supported. Contact administrator.");
+                return new ResultValueDto<UserRDto>(new Exception(
+                    $"Two-factor sign for '{userName}' is set but not supported. Contact administrator."));
+            }
+            if (result.IsLockedOut)
+            {
+                Log.LogWarning($"User '{userName}' is locked out.");
+                return new ResultValueDto<UserRDto>(new CodeException(1202, $"User '{userName}' is locked out!"));
+            }
+            
+            Log.LogWarning($"Invalid login attempt for user '{userName}'.");
+            return new ResultValueDto<UserRDto>(new CodeException(1203, $"Invalid login attempt for user '{userName}'."));
+        }
+    }
+}

+ 31 - 0
AppServer/Business/Services/Base/UserContextService.cs

@@ -0,0 +1,31 @@
+using System;
+using System.Security.Principal;
+using BO.AppServer.Data.Entity;
+using Microsoft.AspNetCore.Identity;
+using Microsoft.Extensions.Logging;
+using Quadarax.Foundation.Core.Business;
+
+namespace BO.AppServer.Business.Services.Base
+{
+    public abstract class UserContextService : AbstractService
+    {
+        protected UserManager<IdentityUser> _manUser;
+        protected UserRepo _repoUser;
+        protected UserContextService(UserRepo repoUser, UserManager<IdentityUser> userManager, IPrincipal currentPrincipal, ILoggerFactory logger) : base(currentPrincipal, logger)
+        {
+            _manUser = userManager ?? throw new ArgumentNullException(nameof(userManager));
+            _repoUser = repoUser ?? throw new ArgumentNullException(nameof(repoUser));
+        }
+
+        protected User GetCurrentUser()
+        {
+            var userIdt = _manUser.FindByNameAsync(CurrentPrincipal.Identity.Name).Result;
+            return _repoUser.GetByIfReference(userIdt.Id);
+        }
+        protected long GetCurrentUserId()
+        {
+            var user = GetCurrentUser();
+            return user.Id;
+        }
+    }
+}

+ 172 - 0
AppServer/Business/Services/CatalogueService.cs

@@ -0,0 +1,172 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Security.Principal;
+using System.Threading.Tasks;
+using BO.AppServer.Business.Exceptions;
+using BO.AppServer.Business.Mapper;
+using BO.AppServer.Business.Services.Base;
+using BO.AppServer.Data.Entity;
+using BO.AppServer.Metadata.Dto;
+using BO.AppServer.Metadata.Enums;
+using Microsoft.AspNetCore.Identity;
+using Microsoft.Extensions.Logging;
+using Quadarax.Foundation.Core.Data;
+using Quadarax.Foundation.Core.Data.Interface;
+using Quadarax.Foundation.Core.Data.Interface.Entity.Dto;
+
+namespace BO.AppServer.Business.Services
+{
+    public class CatalogueService : UserContextService
+    {
+
+
+
+        #region *** Private fields ***
+
+        private readonly MimeTypeRepo _repoMimeType;
+        private readonly BillingPlanRepo _repoBillingPlan;
+        #endregion
+
+        #region *** Constructors ***
+        public CatalogueService(
+            MimeTypeRepo repoMimeType,
+            BillingPlanRepo repoBillingPlan,
+            UserRepo repoUser, 
+            UserManager<IdentityUser> userManager, 
+            IPrincipal currentPrincipal, ILoggerFactory logger) : base(repoUser, userManager, currentPrincipal, logger)
+        {
+            _repoMimeType = repoMimeType ?? throw new ArgumentNullException(nameof(repoMimeType));
+            _repoBillingPlan = repoBillingPlan ?? throw new ArgumentNullException(nameof(repoBillingPlan));
+        }
+        #endregion
+
+        #region *** Public operations ***
+        #region **** MIME Types ****
+        public async Task<ResultsValueDto<MimeTypeRDto>> GetMimeTypesAsync(MimeTypeScopeEnums scope, PagingDto paging)
+        {
+            List<MimeType> mimeTypes = null;
+            switch (scope)
+            {
+                case MimeTypeScopeEnums.All:
+                    mimeTypes = _repoMimeType.Query(paging).ToList();
+                    break;
+            }
+
+            return new ResultsValueDto<MimeTypeRDto>(mimeTypes.MapList<MimeType, MimeTypeRDto>());
+        }
+
+        public async Task<ResultValueDto<MimeTypeRDto>> CreateMimeTypeAsync(MimeTypeCDto mimeType)
+        {
+            // Validation
+            var exists = _repoMimeType.Query(new Paging())
+                .Any(x => x.IsEnabled && x.Mimetype1 == mimeType.Mimetype1.ToLower());
+            if (exists)
+            {
+                var exc = new EntityAlreadyExistsException(typeof(MimeType), mimeType.Mimetype1);
+                Log.LogWarning(exc.Message);
+                throw exc;
+            }
+
+            // Create entity
+            var newMimeType = _repoMimeType.New();
+            mimeType.CopyToDto(newMimeType);
+            newMimeType.Mimetype1 = newMimeType.Mimetype1.ToLower();
+            newMimeType.Created = DateTime.Now;
+            newMimeType.CreatedByUserId = GetCurrentUserId();
+            newMimeType.IsEnabled = true;
+            _repoMimeType.Set(newMimeType);
+            _repoMimeType.Commit();
+
+            return new ResultValueDto<MimeTypeRDto>(newMimeType.Map<MimeType, MimeTypeRDto>());
+        }
+
+        public async Task<ResultValueDto<MimeTypeRDto>> UpdateMimeTypeAsync(MimeTypeUDto mimeType)
+        {
+            // Validation
+            var updMimeType = _repoMimeType.Get(mimeType.Id);
+            if (updMimeType == null)
+            {
+                var exc = new EntityNotExistsException(typeof(MimeType), mimeType.Mimetype1, mimeType.Id);
+                Log.LogWarning(exc.Message);
+                throw exc;
+            }
+
+            // Update entity
+            mimeType.CopyToDto(updMimeType);
+            updMimeType.Mimetype1 = updMimeType.Mimetype1.ToLower();
+            updMimeType.Modified = DateTime.Now;
+            updMimeType.ModifiedByUser = GetCurrentUser();
+            _repoMimeType.Set(updMimeType);
+            _repoMimeType.Commit();
+
+            return new ResultValueDto<MimeTypeRDto>(updMimeType.Map<MimeType, MimeTypeRDto>());
+        }
+        #endregion
+        #region **** Billing Plan ****
+        public async Task<ResultsValueDto<BillingPlanRDto>> GetBillingPlansAsync(BillingPlanScopeEnums scope, PagingDto paging)
+        {
+            List<BillingPlan> billingPlans = null;
+            switch (scope)
+            {
+                case BillingPlanScopeEnums.All:
+                    billingPlans = _repoBillingPlan.Query(paging).ToList();
+                    break;
+            }
+
+            return new ResultsValueDto<BillingPlanRDto>(billingPlans.MapList<BillingPlan, BillingPlanRDto>());
+        }
+
+        public async Task<ResultValueDto<BillingPlanRDto>> CreateBillingPlanAsync(BillingPlanCDto billingPlan)
+        {
+            // Validation
+            var exists = _repoBillingPlan.Query(new Paging())
+                .Any(x => x.IsEnabled && x.Code == billingPlan.Code.ToLower());
+            if (exists)
+            {
+                var exc = new EntityAlreadyExistsException(typeof(BillingPlan), billingPlan.Code);
+                Log.LogWarning(exc.Message);
+                throw exc;
+            }
+
+            // Create entity
+            var newBillingPlan = _repoBillingPlan.New();
+            billingPlan.CopyToDto(newBillingPlan);
+            newBillingPlan.Created = DateTime.Now;
+            newBillingPlan.CreatedByUser = GetCurrentUser();
+            newBillingPlan.IsEnabled = true;
+            _repoBillingPlan.Set(newBillingPlan);
+            _repoBillingPlan.Commit();
+
+            return new ResultValueDto<BillingPlanRDto>(newBillingPlan.Map<BillingPlan, BillingPlanRDto>());
+        }
+
+        public async Task<ResultValueDto<BillingPlanRDto>> UpdateBillingPlanAsync(BillingPlanUDto billingPlan)
+        {
+            // Validation
+            var updBillingPlan = _repoBillingPlan.Get(billingPlan.Id);
+            if (updBillingPlan == null)
+            {
+                var exc = new EntityNotExistsException(typeof(BillingPlan), billingPlan.Code, billingPlan.Id);
+                Log.LogWarning(exc.Message);
+                throw exc;
+            }
+
+            // Update entity
+            billingPlan.CopyToDto(updBillingPlan);
+            updBillingPlan.Modified = DateTime.Now;
+            updBillingPlan.ModifiedByUser = GetCurrentUser();
+            _repoMimeType.Commit();
+
+            return new ResultValueDto<BillingPlanRDto>(updBillingPlan.Map<BillingPlan, BillingPlanRDto>());
+        }
+        #endregion
+        #endregion
+
+        #region *** Private operations ***
+        #endregion
+
+
+        
+    }
+}

+ 82 - 0
AppServer/Business/Services/ConfigurationService.cs

@@ -0,0 +1,82 @@
+using System;
+using System.Security.Principal;
+using System.Threading.Tasks;
+using BO.AppServer.Metadata.Enums;
+using Microsoft.Extensions.DependencyInjection;
+using Microsoft.Extensions.Logging;
+using Microsoft.Extensions.Options;
+using Quadarax.Foundation.Core.Business;
+using Quadarax.Foundation.Core.Data.Interface.Entity.Dto;
+
+namespace BO.AppServer.Business.Services
+{
+    public class ConfigurationService : AbstractService
+    {
+        private IServiceProvider _serviceProvider;
+
+        public Configuration.Configuration Configuration { get; }
+
+        public ConfigurationService(IOptions<Configuration.Configuration> config,
+            IServiceProvider serviceProvider,
+            IPrincipal currentPrincipal, 
+            ILoggerFactory logger) : base(currentPrincipal, logger)
+        {
+            if (config == null)
+                throw new ArgumentNullException(nameof(config));
+            Configuration = config.Value;
+
+            _serviceProvider = serviceProvider;
+        }
+
+        public async Task<ResultPlain> Install()
+        {
+
+            using (var scope = _serviceProvider.CreateScope())
+            {
+                var srvUsers = scope.ServiceProvider.GetRequiredService<UserService>();
+
+                await srvUsers.EnsureRolesAsync();
+                    
+                await EnsureUser(srvUsers, Configuration.System.AccountSystem.Name,
+                    Configuration.System.AccountSystem.Password,
+                    Configuration.System.AccountSystem.Email,
+                    Configuration.System.AccountSystem.CultureLcid, new[]
+                    {
+                        RoleEnum.System,
+                    });
+
+                await EnsureUser(srvUsers, Configuration.System.AccountConsole.Name,
+                    Configuration.System.AccountConsole.Password,
+                    Configuration.System.AccountConsole.Email,
+                    Configuration.System.AccountConsole.CultureLcid, new[]
+                    {
+                        RoleEnum.System,
+                        RoleEnum.Console,
+                        RoleEnum.SuperAdmin
+                    });
+
+                await EnsureUser(srvUsers, Configuration.System.AccountAdmin.Name,
+                    Configuration.System.AccountAdmin.Password,
+                    Configuration.System.AccountAdmin.Email,
+                    Configuration.System.AccountAdmin.CultureLcid, new[]
+                    {
+                        RoleEnum.User,
+                        RoleEnum.SuperAdmin
+                    });
+            }
+            return new ResultPlain();
+        }
+
+        protected async Task EnsureUser(UserService srvUsers, string userName, string userPassword, string userEmail, int prefferedLCID,
+            RoleEnum[] roles)
+        {
+            if (!(await srvUsers.ExistsUserByNameAsync(userName)).Value)
+                await srvUsers.CreateUserAsync(userName,
+                    userPassword,
+                    userEmail,
+                    prefferedLCID, roles);
+            else
+                await srvUsers.EnusreUserRolesAsync(userName, roles);
+        }
+    }
+}

+ 44 - 0
AppServer/Business/Services/StatisticsService.cs

@@ -0,0 +1,44 @@
+using System;
+using System.Security.Principal;
+using System.Threading.Tasks;
+using BO.AppServer.Data.Entity;
+using BO.AppServer.Data.Repository;
+using BO.AppServer.Metadata.Dto;
+using  BO.AppServer.Business.Mapper;
+using Microsoft.Extensions.Logging;
+using Quadarax.Foundation.Core.Business;
+using Quadarax.Foundation.Core.Data.Interface.Entity.Dto;
+
+namespace BO.AppServer.Business.Services
+{
+    public class StatisticsService : AbstractService
+    {
+        #region *** Private fields ***
+        protected StatisticRepo _repoStatistic;
+        protected UserRepo _repoUser;
+        #endregion
+
+        #region *** Constructor & DI ***
+        public StatisticsService(
+            StatisticRepo repoStatistic,
+            UserRepo repoUser,
+            IPrincipal currentPrincipal,
+            ILoggerFactory logger) : base(currentPrincipal, logger)
+        {
+            _repoStatistic = repoStatistic ?? throw new ArgumentNullException(nameof(repoStatistic));
+            _repoUser = repoUser ?? throw new ArgumentNullException(nameof(repoUser));
+
+        }
+        #endregion
+
+        #region *** Public Operations ***
+
+        public async Task<ResultValueDto<StatisticsDto>> GetCurrent()
+        {
+            var current = _repoStatistic.GetCurrent();
+            return new ResultValueDto<StatisticsDto>(current.Map<Statistic, StatisticsDto>());
+        }
+
+        #endregion
+    }
+}

+ 229 - 0
AppServer/Business/Services/UserService.cs

@@ -0,0 +1,229 @@
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.Linq;
+using System.Security.Principal;
+using System.Threading.Tasks;
+using BO.AppServer.Business.Mapper;
+using BO.AppServer.Business.Services.Base;
+using BO.AppServer.Data.Entity;
+using BO.AppServer.Metadata.Dto;
+using BO.AppServer.Metadata.Enums;
+using Microsoft.AspNetCore.Identity;
+using Microsoft.Extensions.Logging;
+using Quadarax.Foundation.Core.Business.Security;
+using Quadarax.Foundation.Core.Data;
+using Quadarax.Foundation.Core.Data.Interface;
+using Quadarax.Foundation.Core.Data.Interface.Entity.Dto;
+using Quadarax.Foundation.Core.Exceptions;
+
+namespace BO.AppServer.Business.Services
+{
+    public class UserService : UserContextService
+    {
+        #region *** Private fields ***
+        private UserManager<IdentityUser> _manUser;
+        private RoleManager<IdentityRole> _manRole;
+
+        protected WorkspaceRepo _repoWorkspace;
+        #endregion
+
+        #region *** Constructor & DI ***
+        public UserService(
+            WorkspaceRepo repoWorkspace,
+            AccessService srvAccessService,
+            RoleManager<IdentityRole> roleManager, 
+            UserRepo repoUser,
+            UserManager<IdentityUser> userManager,
+            IPrincipal currentPrincipal,
+            ILoggerFactory logger) : base(repoUser, userManager, currentPrincipal, logger)
+        {
+            _manUser = userManager ?? throw new ArgumentNullException(nameof(userManager));
+            _manRole = roleManager ?? throw new ArgumentNullException(nameof(roleManager));
+
+            _repoWorkspace = repoWorkspace ?? throw new ArgumentNullException(nameof(repoWorkspace));
+
+        }
+        #endregion
+
+        #region *** Public Operations ***
+        public async Task<ResultsValueDto<UserRDto>> GetAllUsersAsync(UserScopeEnums scope, PagingDto paging)
+        {
+            List<User> users = null;
+            switch (scope)
+            {
+                case UserScopeEnums.All:
+                    users = _repoUser.Query(paging).ToList();
+                    break;
+                case UserScopeEnums.Locked:
+                    users = _repoUser.Query(paging).Where(x=>x.IsEnabled==false).ToList();
+                    break;
+                case UserScopeEnums.System:
+                    users = _repoUser.Query(paging).Where(x=>x.IsSystem==true).ToList();
+                    break;
+            }
+            return new ResultsValueDto<UserRDto>(users.MapList<User, UserRDto>());
+        }
+
+        public async Task<ResultValueDto<UserRDto>> GetUserAsync(long userId)
+        {
+            var user = _repoUser.Get(new []{userId}).FirstOrDefault();
+            return new ResultValueDto<UserRDto>(user.Map<User, UserRDto>());
+        }
+
+        public async Task<ResultValueDto<UserRDto>> CreateUserAsync(UserCDto newUser)
+        {
+            //TODO: role validation
+            return await CreateUserAsync(newUser.Name, newUser.Password,newUser.Email,newUser.LangLcid,newUser.Roles.Select(Enum.Parse<RoleEnum>).ToArray());
+        }
+
+        public async Task<ResultValueDto<UserRDto>> CreateUserAsync(string userName,string userPassword, string userEmail, int prefferedLCID, RoleEnum[] roles)
+        {
+
+            try
+            {
+                // Validations
+                var exists = await ExistsUserByNameAsync(userName);
+                if (exists.Value)
+                    throw new CodeException(1100, $"Cannot create user '{userName}', user name or email already exists.");
+
+                // Create Identity User
+                var idtUser = await _manUser.FindByNameAsync(userName);
+                if (idtUser == null)
+                {
+                    idtUser = new IdentityUser(userName)
+                    {
+                        NormalizedUserName = userName.ToLower(CultureInfo.InvariantCulture),
+                        Email = userEmail,
+                        NormalizedEmail = userEmail.ToLower(CultureInfo.InvariantCulture),
+                        LockoutEnabled = true,
+                        PasswordHash = PasswordHelper.HashPassword(userPassword)
+                    };
+
+                    await _manUser.CreateAsync(idtUser);
+                    Log.Log(LogLevel.Debug, $"User '{userName}' created in IF.");
+                }
+                else
+                    Log.Log(LogLevel.Debug, $"User '{userName}' already exists in IF.");
+
+
+                // Append roles
+                var currentRoles = await _manUser.GetRolesAsync(idtUser);
+                await _manUser.RemoveFromRolesAsync(idtUser, currentRoles.ToArray());
+
+                foreach (var role in roles)
+                {
+                    await _manUser.AddToRoleAsync(idtUser, role.ToString().ToUpper());
+                    Log.Log(LogLevel.Debug, $"User '{userName}' add to role '{role}' in IF.");
+                }
+
+
+                // Create BO user
+                var user = _repoUser.GetByIfReference(idtUser.Id);
+                if (user == null)
+                {
+                    user = _repoUser.New();
+                    user.Ifreference = idtUser.Id;
+                    user.Name = userName;
+                    user.LangLcid = prefferedLCID;
+                    user.Created = DateTime.Now;
+                    user.IsEnabled = false;
+                    user.LangLcid = prefferedLCID;
+                    user.IsSystem = roles.Contains(RoleEnum.System);
+                    user.IsEnabled = true;
+                    _repoUser.Set(user);
+                    Log.Log(LogLevel.Debug,
+                        $"User '{userName}' [{user.Id}] created as enabled={user.IsEnabled} in BO.");
+                    user = _repoUser.Get(user.Id);
+                }
+                else
+                {
+                    user.Name = idtUser.UserName;
+                    user.LangLcid = prefferedLCID;
+                    user.Modified = DateTime.Now;
+                    user.IsSystem = roles.Contains(RoleEnum.System);
+                    _repoUser.Set(user);
+                    Log.Log(LogLevel.Debug,
+                        $"User '{userName}' [{user.Id}] was recovered in BO.");
+                }
+
+                _repoUser.Commit();
+                return new ResultValueDto<UserRDto>(user.Map<User, UserRDto>());
+            }
+            catch (Exception e)
+            {
+                return new ResultValueDto<UserRDto>(e);
+            }
+        }
+
+        public async Task<ResultBoolDto> ExistsUserByNameAsync(string userName)
+        {
+            var user = await _manUser.FindByNameAsync(userName);
+            if (user == null)
+                    return new ResultBoolDto(false);
+
+
+            var exists = _repoUser.Query(new Paging()).Any(x =>
+                x.Name.ToLower() == userName.ToLower(CultureInfo.InvariantCulture) && x.Ifreference == user.Id);
+            
+            return new ResultBoolDto(exists);
+        }
+
+        public async Task<ResultBoolDto> EnusreUserRolesAsync(string userName, RoleEnum[] roles)
+        {
+            var idtUser = await _manUser.FindByNameAsync(userName);
+            if (idtUser == null)
+                return new ResultBoolDto(false);
+
+            var currentRoles = await _manUser.GetRolesAsync(idtUser);
+            await _manUser.RemoveFromRolesAsync(idtUser, currentRoles.ToArray());
+
+            foreach (var role in roles)
+            {
+                await _manUser.AddToRoleAsync(idtUser, role.ToString().ToUpper());
+                Log.Log(LogLevel.Debug, $"User '{userName}' add to role '{role}' in IF.");
+            }
+
+            return new ResultBoolDto(true);
+        }
+
+        public ResultBoolDto ExistsUserByIfReference(string ifReference)
+        {
+            var exists = _manUser.FindByIdAsync(ifReference).Result;
+            return new ResultBoolDto(exists!=null);
+        }
+
+        public async Task EnsureRolesAsync()
+        {
+            var roles = Enum.GetNames(typeof(RoleEnum));
+            foreach (var roleName in roles)
+            {
+                if (!await _manRole.RoleExistsAsync(roleName))
+                {
+                    var role = new IdentityRole(roleName);
+                    role.NormalizedName = roleName.ToUpper(CultureInfo.InvariantCulture);
+                    await _manRole.CreateAsync(role);
+                    Log.Log(LogLevel.Information, $"Role '{roleName}' [{role.Id}] created.");
+                }
+            }
+        }
+
+        /*
+        public ResultValueDto<UserRDto> SetUser(long userId, UserUDto user)
+        {
+
+        }
+
+        public ResultValueDto<UserRDto> SetUserLock(long userId, bool flagEnabledDisabled)
+        {
+
+        }
+
+        public ResultValueDto<UserRDto> SetUserLogAudit(long userId)
+        {
+
+        }
+        */
+        #endregion
+    }
+}

+ 8 - 0
AppServer/Connector.B2B/Class1.cs

@@ -0,0 +1,8 @@
+using System;
+
+namespace Connector.B2B
+{
+    public class Class1
+    {
+    }
+}

+ 12 - 0
AppServer/Connector.B2B/Connector.B2B.csproj

@@ -0,0 +1,12 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <AssemblyName>BO.Connector.B2B</AssemblyName>
+    <RootNamespace>BO.Connector.B2B</RootNamespace>
+    <SignAssembly>true</SignAssembly>
+    <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
+    <DelaySign>false</DelaySign>
+  </PropertyGroup>
+
+</Project>

+ 133 - 0
AppServer/Connector.Console/Connection.cs

@@ -0,0 +1,133 @@
+using System;
+using System.Collections.Generic;
+using System.Threading.Tasks;
+using BO.AppServer.Metadata.Dto;
+using BO.AppServer.Metadata.Enums;
+using Quadarax.Foundation.Core.Data.Interface;
+using Quadarax.Foundation.Core.Data.Interface.Entity.Dto;
+using Quadarax.Foundation.Core.Logging;
+
+namespace BO.Connector.Console
+{
+    public class Connection : AbstractConnection
+    {
+        #region *** Private fields ***
+        protected override string ApiName => "Console";
+        #endregion
+
+        #region *** Constructors ***
+        public Connection(Uri uriApiBase, TimeSpan timeout, ILogHandler log = null, bool isDumpContentEnabled = false) : base(uriApiBase, timeout, log, isDumpContentEnabled)
+        {
+        }
+        #endregion
+
+        #region *** CRUD User ***
+        public async Task<UserRDto> GetUserAsync(IdentificationTypeEnum identificationType, string identificationValue)
+        {
+            CheckIsOpen();
+            var result = await CallRequestAsync<ResultValueDto<UserRDto>>($"{Ticket}/user/{identificationType}/{identificationValue}", RestCallTypeEnum.Get);
+            return result.Value;
+        }
+
+        public async Task<IEnumerable<UserRDto>> GetUsersAsync(UserScopeEnums scope, PagingDto paging = null)
+        {
+            CheckIsOpen();
+            var result = await CallRequestAsync<ResultsValueDto<UserRDto>>($"{Ticket}/users/{scope}", RestCallTypeEnum.Get,null, GetPagingHeaderAttributes(paging));
+            return result.Values;
+        }
+
+        public async Task<UserRDto> CreateUserAsync(UserCDto newUser)
+        {
+            CheckIsOpen();
+            var result = await CallRequestAsync<ResultValueDto<UserRDto>>($"{Ticket}/user", RestCallTypeEnum.Post, newUser);
+            return result.Value;
+        }
+
+        public async Task<UserRDto> UpdateUserAsnc(IdentificationTypeEnum identificationType, string identificationValue, UserUDto updateUser)
+        {
+            CheckIsOpen();
+            var result = await CallRequestAsync<ResultValueDto<UserRDto>>($"{Ticket}/user/{identificationType}/{identificationValue}", RestCallTypeEnum.Put, updateUser);
+            return result.Value;
+        }
+
+        public async Task<UserRDto> DeleteUserAsync(IdentificationTypeEnum identificationType, string identificationValue)
+        {
+            CheckIsOpen();
+            var result =  await CallRequestAsync<ResultValueDto<UserRDto>>($"{Ticket}/user/{identificationType}/{identificationValue}", RestCallTypeEnum.Delete);
+            return result.Value;
+        }
+        #endregion
+
+        #region *** Statistics ***
+        public async Task<IEnumerable<StatisticsDto>> GetStatisticsAsync(StatisticsScopeEnums scope, PagingDto paging = null)
+        {
+            CheckIsOpen();
+            var result = await CallRequestAsync<ResultsValueDto<StatisticsDto>>($"{Ticket}/statistics/{scope}", RestCallTypeEnum.Get,null,GetPagingHeaderAttributes(paging));
+            return result.Values;
+        }
+        public async Task<IEnumerable<AssemblyInfoDto>> GetVersionsAsync()
+        {
+            CheckIsOpen();
+            var result =  await CallRequestAsync<ResultsValueDto<AssemblyInfoDto>>($"{Ticket}/versions", RestCallTypeEnum.Get);
+            return result.Values;
+        }
+        #endregion
+
+        #region *** CRUD BillingPlan ***
+        public async Task<BillingPlanRDto> CreateBillingPlanAsync(BillingPlanCDto newBillingPlan)
+        {
+            CheckIsOpen();
+            var result =  await CallRequestAsync<ResultValueDto<BillingPlanRDto>>($"{Ticket}/bplan", RestCallTypeEnum.Post,newBillingPlan);
+            return result.Value;
+        }
+
+        public async Task<BillingPlanRDto> UpdateBillingPlanAsync(BillingPlanUDto updBillingPlan)
+        {
+            CheckIsOpen();
+            var result =  await CallRequestAsync<ResultValueDto<BillingPlanRDto>>($"{Ticket}/bplan", RestCallTypeEnum.Put,updBillingPlan);
+            return result.Value;
+        }
+
+
+        public async Task<IEnumerable<BillingPlanRDto>> GetBillingPlansAsync(BPlanScopeEnums scope, PagingDto paging = null)
+        {
+            CheckIsOpen();
+            var result =  await CallRequestAsync<ResultsValueDto<BillingPlanRDto>>($"{Ticket}/bplans/{scope}", RestCallTypeEnum.Get,null,GetPagingHeaderAttributes(paging));
+            return result.Values;
+        }
+        #endregion
+
+        #region *** CRUD MIME Type ***
+        public async Task<MimeTypeRDto> CreateMimeTypeAsync(MimeTypeCDto newMimeType)
+        {
+            CheckIsOpen();
+            var result =  await CallRequestAsync<ResultValueDto<MimeTypeRDto>>($"{Ticket}/mtype", RestCallTypeEnum.Post,newMimeType);
+            return result.Value;
+        }
+
+        public async Task<MimeTypeRDto> UpdateMimeTypeAsync(MimeTypeUDto updMimeType)
+        {
+            CheckIsOpen();
+            var result =  await CallRequestAsync<ResultValueDto<MimeTypeRDto>>($"{Ticket}/mtype", RestCallTypeEnum.Put,updMimeType);
+            return result.Value;
+        }
+
+        public async Task<IEnumerable<MimeTypeRDto>> GetMimeTypesAsync(MimeTypeScopeEnums scope, PagingDto paging = null)
+        {
+            CheckIsOpen();
+            var result =  await CallRequestAsync<ResultsValueDto<MimeTypeRDto>>($"{Ticket}/mtypes/{scope}", RestCallTypeEnum.Get,null,GetPagingHeaderAttributes(paging));
+            return result.Values;
+        }
+        #endregion
+
+        #region *** Documents ***
+        public async Task<IEnumerable<DocumentRDto>> GetDocumentsAsync(MimeTypeScopeEnums scope,IdentificationTypeEnum identificationType, string identificationValue, PagingDto paging = null)
+        {
+            CheckIsOpen();
+            var result = await CallRequestAsync<ResultsValueDto<DocumentRDto>>($"{Ticket}/documents/{identificationType}/{identificationValue}/{scope}", RestCallTypeEnum.Get,null,GetPagingHeaderAttributes(paging));
+            return result.Values;
+        }
+        #endregion
+
+    }
+}

+ 18 - 0
AppServer/Connector.Console/Connector.Console.csproj

@@ -0,0 +1,18 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <AssemblyName>BO.Connector.Console</AssemblyName>
+    <RootNamespace>BO.Connector.Console</RootNamespace>
+    <SignAssembly>true</SignAssembly>
+    <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
+    <DelaySign>false</DelaySign>
+  </PropertyGroup>
+
+  <ItemGroup>
+    <ProjectReference Include="..\..\Common\qdr.fnd.core\qdr.fnd.core.csproj" />
+    <ProjectReference Include="..\Connector\Connector.csproj" />
+    <ProjectReference Include="..\Metadata\Metadata.csproj" />
+  </ItemGroup>
+
+</Project>

+ 8 - 0
AppServer/Connector.PS/Class1.cs

@@ -0,0 +1,8 @@
+using System;
+
+namespace Connector.PS
+{
+    public class Class1
+    {
+    }
+}

+ 11 - 0
AppServer/Connector.PS/Connector.PS.csproj

@@ -0,0 +1,11 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <AssemblyName>BO.Connector.PS</AssemblyName>
+    <SignAssembly>true</SignAssembly>
+    <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
+    <DelaySign>false</DelaySign>
+  </PropertyGroup>
+
+</Project>

+ 234 - 0
AppServer/Connector/AbstractConnection.cs

@@ -0,0 +1,234 @@
+using System;
+using System.Collections.Generic;
+using System.IO.Abstractions;
+using System.Net.Http;
+using System.Net.Http.Headers;
+using System.Text.Json;
+using System.Threading.Tasks;
+using BO.AppServer.Metadata.Dto;
+using Quadarax.Foundation.Core.Data.Interface;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity.Dto;
+using Quadarax.Foundation.Core.Json;
+using Quadarax.Foundation.Core.Logging;
+using Quadarax.Foundation.Core.Object;
+using Quadarax.Foundation.Core.Value.Extensions;
+
+namespace BO.Connector
+{
+    public abstract class AbstractConnection : DisposableObject
+    {
+        #region *** Private fields ***
+        private HttpClient _client;
+        private Uri _uriApiBase;
+        private ILogHandler _log;
+        private TimeSpan _timeout;
+        private string _ticket;
+        private Binder _binder;
+        private bool _isDumpContentEnabled;
+
+        protected abstract string ApiName { get; }
+        protected bool IsOpen => !string.IsNullOrEmpty(_ticket);
+        protected string Ticket => _ticket;
+        #endregion
+
+
+        #region *** Constructors ***
+        protected AbstractConnection(Uri uriApiBase, TimeSpan timeout, ILogHandler log = null, bool isDumpContentEnabled = false)
+        {
+            _uriApiBase = uriApiBase ?? throw new ArgumentNullException(nameof(uriApiBase));
+            _uriApiBase = new Uri(_uriApiBase.AbsoluteUri + ApiName + "/");
+            _log = log;
+            _timeout = timeout;
+            _binder = new Binder(new FileSystem());
+            _binder.SerializerOptions.IgnoreReadOnlyProperties = true;
+            _binder.SerializerOptions.IgnoreNullValues = true;
+            _isDumpContentEnabled = isDumpContentEnabled;
+        }
+        #endregion
+
+        #region *** Public Operations ***
+        public void Open(string userName, string userPassword, string magicKey)
+        {
+            Log(LogSeverityEnum.Trace, $"Opening Connector '{ApiName}' open with magicKey='{magicKey}'");
+            _client = new HttpClient();
+            _client.BaseAddress = new Uri(_uriApiBase, ApiName);
+            _client.Timeout = _timeout;
+            _client.DefaultRequestHeaders.Accept.Clear();
+            _client.DefaultRequestHeaders.Add("User-Agent", "BO.Connector." + ApiName);
+            // Add an Accept header for JSON format.
+            _client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
+
+            InitTicket(magicKey);
+            Login(userName, userPassword);
+            Log(LogSeverityEnum.Debug, $"Connector '{ApiName}' open for user '{userName}' with timeout setting {_timeout}.");
+        }
+
+        public void Close()
+        {
+            _client?.CancelPendingRequests();
+            _client?.Dispose();
+            _client = null;
+            _ticket = string.Empty;
+            Log(LogSeverityEnum.Debug, $"Connector '{ApiName}' closed.");
+        }
+
+        public bool Ping(out TimeSpan duration, out string status)
+        {
+            CheckIsOpen();
+            var start = DateTime.Now;
+            var ping = Task.Run(() =>CallRequestAsync<ResultValueDto<PingDto>>($"{_ticket}/ping", RestCallTypeEnum.Get, null, null, true));
+            ping.Wait();
+            duration = DateTime.Now - start;
+            if (ping.Result == null)
+            {
+                status = string.Empty;
+                return false;
+            }
+            status = ping.Result.Value.Status;
+            return ping.Result.IsSuccess;
+        }
+        #endregion
+
+
+        #region *** Virtuals & Overrides ***
+        protected override void OnDisposing()
+        {
+            _client?.Dispose();
+        }
+        #endregion
+
+        #region *** Private Operations ***
+
+        protected void CheckIsOpen()
+        {
+            if (!IsOpen)
+                throw new InvalidOperationException(
+                    "Connector is not open to call specific operation. Call Open() first.");
+        }
+        protected void Log(LogSeverityEnum type, string message, Exception e = null)
+        {
+            _log?.Log(type, message, e);
+        }
+
+        protected void InitTicket(string magicKey)
+        {
+            var result = Task.Run(() => CallRequestAsync<ResultValueDto<AuthDto>>($"{magicKey}/auth", RestCallTypeEnum.Get));;
+            result.Wait();
+            if (!result.Result.IsSuccess)
+                throw result.Result.ToAggregateException();
+            _ticket = result.Result.Value.Ticket;
+        }
+
+        protected void Login(string userName, string userPassword)
+        {
+            var headerAtts = new Dictionary<string, string>();
+            headerAtts.Add("userName",userName);
+            headerAtts.Add("userPassword",userPassword);
+            var result = Task.Run(() => CallRequestAsync<ResultValueDto<UserRDto>>($"{_ticket}/login", RestCallTypeEnum.Post, new ResultPlain(), headerAtts));
+            result.Wait();
+            if (!result.Result.IsSuccess)
+                throw result.Result.ToAggregateException();
+            Log(LogSeverityEnum.Info,$"User '{result.Result.Value.Name}' is logged in.");
+        }
+
+        protected IDictionary<string, string> GetPagingHeaderAttributes(PagingDto paging)
+        {
+            if (paging == null || paging.IsDisabled)
+                return null;//paging = new PagingDto();
+
+            var result = new Dictionary<string, string>
+            {
+                { "page", paging.Page.ToString() },
+                { "pageSize", paging.PageSize.ToString() }
+            };
+            return result;
+        }
+
+        protected async Task<TResult> CallRequestAsync<TResult>(string relativeUrlApiCall,RestCallTypeEnum method, IDto data = null,IDictionary<string,string> headerAttributes = null, bool silent = false) where TResult : ResultDto
+        {
+            if (data == null)
+                if(method != RestCallTypeEnum.Get && method != RestCallTypeEnum.GetStream && method != RestCallTypeEnum.Delete)
+                    throw new ArgumentNullException(nameof(data), $"For REST API method '{method}' data must be specified!");
+
+            Log(LogSeverityEnum.Trace, $"Calling REST API {method} {_uriApiBase.AbsoluteUri + relativeUrlApiCall}");
+            var start = DateTime.Now;
+            HttpResponseMessage resp = null;
+
+            switch (method)
+            {
+                case RestCallTypeEnum.Get:
+                    if (headerAttributes != null)
+                    {
+                        foreach (var key in headerAttributes.Keys)
+                        {
+                            _client.DefaultRequestHeaders.Remove(key);
+                            _client.DefaultRequestHeaders.Add(key,headerAttributes[key]);
+                        }
+                    }
+                    resp = await _client.GetAsync(relativeUrlApiCall);
+                    break;
+                case RestCallTypeEnum.Post:
+                    var req = new StringContent(_binder.SaveToString(data));
+                    if (headerAttributes!=null)
+                        foreach (var key in headerAttributes.Keys)
+                            req.Headers.Add(key,headerAttributes[key]);
+                    req.Headers.ContentType = new MediaTypeHeaderValue("application/json");
+                    resp = await _client.PostAsync(relativeUrlApiCall, req);
+                    break;
+                case RestCallTypeEnum.Put:
+                    req = new StringContent(_binder.SaveToString(data));
+                    if (headerAttributes!=null)
+                        foreach (var key in headerAttributes.Keys)
+                            req.Headers.Add(key,headerAttributes[key]);
+                    req.Headers.ContentType = new MediaTypeHeaderValue("application/json");
+                    resp = await _client.PutAsync(relativeUrlApiCall, req);
+                    break;
+                case RestCallTypeEnum.Delete:
+                    resp = await _client.DeleteAsync(relativeUrlApiCall);
+                    break;
+                default:
+                    throw new NotSupportedException($"{method} REST API operation is not implemented.");
+            }
+            
+
+            // may remove paging headers after call
+            /*
+            if (headerAttributes != null)
+                foreach (var key in headerAttributes.Keys)
+                    _client.DefaultRequestHeaders.Remove(key);
+            */
+
+            Log(LogSeverityEnum.Trace, $"REST API {method} {_uriApiBase.AbsoluteUri + relativeUrlApiCall} done @ {(DateTime.Now - start).ToReadableString()}");
+            if (!resp.IsSuccessStatusCode)
+            {
+                var message = $"Calling REST API {method} {_uriApiBase.AbsoluteUri + relativeUrlApiCall} ends with result code '{resp.StatusCode}'";
+                Log(LogSeverityEnum.Warn, message);
+                throw new Exception(message);
+            }
+
+            var content = await resp.Content.ReadAsStringAsync();
+            if (_isDumpContentEnabled)
+                Log(LogSeverityEnum.Trace, content);
+
+            var result = (TResult)_binder.LoadFromString(content, typeof(TResult));
+            if (result.IsSuccess) return result;
+            if (silent) return result;
+
+            // handle errors
+            var excps = new List<Exception>();
+            foreach (var err in result.Errors)
+            {
+                var exc = new Exception($"[{err.Code}] {err.Message}");
+                exc.Data.Add("Code", err.Code);
+                excps.Add(exc);
+            }
+
+            throw new AggregateException(excps);
+        }
+
+
+        #endregion
+
+    }
+}

+ 21 - 0
AppServer/Connector/Connector.csproj

@@ -0,0 +1,21 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <AssemblyName>BO.Connector</AssemblyName>
+    <RootNamespace>BO.Connector</RootNamespace>
+    <SignAssembly>true</SignAssembly>
+    <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
+    <DelaySign>false</DelaySign>
+  </PropertyGroup>
+
+  <ItemGroup>
+    <PackageReference Include="System.Net.Http" Version="4.3.4" />
+  </ItemGroup>
+
+  <ItemGroup>
+    <ProjectReference Include="..\..\Common\qdr.fnd.core.data.itfc\qdr.fnd.core.data.itfc.csproj" />
+    <ProjectReference Include="..\..\Common\qdr.fnd.core\qdr.fnd.core.csproj" />
+    <ProjectReference Include="..\Metadata\Metadata.csproj" />
+  </ItemGroup>
+</Project>

+ 24 - 0
AppServer/Connector/RESTCallTypeEnum.cs

@@ -0,0 +1,24 @@
+namespace BO.Connector
+{
+    public enum RestCallTypeEnum
+    {
+        /// <summary>
+        /// Gets data
+        /// </summary>
+        Get,
+        /// <summary>
+        /// Update data
+        /// </summary>
+        Put,
+        /// <summary>
+        /// Creates data
+        /// </summary>
+        Post,
+        /// <summary>
+        /// Deletes
+        /// </summary>
+        Delete,
+        GetStream,
+        PutStream
+    }
+}

+ 29 - 0
AppServer/Data/Data.csproj

@@ -0,0 +1,29 @@
+<Project Sdk="Microsoft.NET.Sdk">
+
+  <PropertyGroup>
+    <TargetFramework>netcoreapp3.1</TargetFramework>
+    <AssemblyName>BO.AppServer.Data</AssemblyName>
+    <RootNamespace>BO.AppServer.Data</RootNamespace>
+    <SignAssembly>true</SignAssembly>
+    <AssemblyOriginatorKeyFile>..\bo_strong_key_pair.snk</AssemblyOriginatorKeyFile>
+    <DelaySign>false</DelaySign>
+  </PropertyGroup>
+
+  <ItemGroup>
+    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="5.0.9" />
+    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="5.0.9" />
+    <PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="5.0.9">
+      <PrivateAssets>all</PrivateAssets>
+      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
+    </PackageReference>
+  </ItemGroup>
+
+  <ItemGroup>
+    <ProjectReference Include="..\..\Common\qdr.fnd.core.data\qdr.fnd.core.data.csproj" />
+  </ItemGroup>
+
+  <ItemGroup>
+    <Service Include="{508349b6-6b84-4df5-91f0-309beebad82d}" />
+  </ItemGroup>
+
+</Project>

+ 24 - 0
AppServer/Data/Entity/Artifact.cs

@@ -0,0 +1,24 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Artifact
+    {
+        // public long Id { get; set; }
+        public long MetadocumentId { get; set; }
+        public string Name { get; set; }
+        public string Extension { get; set; }
+        public long MimeTypeId { get; set; }
+        public int Type { get; set; }
+        public long Length { get; set; }
+        public DateTime Created { get; set; }
+        public long CreatedByUserId { get; set; }
+
+        public virtual User CreatedByUser { get; set; }
+        public virtual Metadocument Metadocument { get; set; }
+        public virtual MimeType MimeType { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/Artifact.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Artifact : Entity<long>, IDao<long>
+    {
+    }
+}

+ 1163 - 0
AppServer/Data/Entity/BOContext.cs

@@ -0,0 +1,1163 @@
+using System;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Quadarax.Foundation.Core.Data.Domain;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class BOContext : DataDomain
+    {
+        public BOContext(DbContextOptions<BOContext> options)
+            : base(options)
+        {
+        }
+
+        public virtual DbSet<Artifact> Artifacts { get; set; }
+        public virtual DbSet<BillingInfo> BillingInfos { get; set; }
+        public virtual DbSet<BillingPlan> BillingPlans { get; set; }
+        public virtual DbSet<Invoice> Invoices { get; set; }
+        public virtual DbSet<InvoiceIssuer> InvoiceIssuers { get; set; }
+        public virtual DbSet<InvoiceItem> InvoiceItems { get; set; }
+        public virtual DbSet<Metadocument> Metadocuments { get; set; }
+        public virtual DbSet<MetadocumentBilling> MetadocumentBillings { get; set; }
+        public virtual DbSet<MetadocumentTag> MetadocumentTags { get; set; }
+        public virtual DbSet<MimeType> MimeTypes { get; set; }
+        public virtual DbSet<Statistic> Statistics { get; set; }
+        public virtual DbSet<StatusHistory> StatusHistories { get; set; }
+        public virtual DbSet<Structure> Structures { get; set; }
+        public virtual DbSet<Tag> Tags { get; set; }
+        public virtual DbSet<User> Users { get; set; }
+        public virtual DbSet<UserWorkspace> UserWorkspaces { get; set; }
+        public virtual DbSet<Workspace> Workspaces { get; set; }
+        public virtual DbSet<WorkspaceBilling> WorkspaceBillings { get; set; }
+
+        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
+        {
+            if (!optionsBuilder.IsConfigured)
+            {
+#warning To protect potentially sensitive information in your connection string, you should move it out of source code. You can avoid scaffolding the connection string by using the Name= syntax to read it from configuration - see https://go.microsoft.com/fwlink/?linkid=2131148. For more guidance on storing connection strings, see http://go.microsoft.com/fwlink/?LinkId=723263.
+                optionsBuilder.UseSqlServer("Server=(local);Database=BO;Trusted_Connection=True;");
+            }
+        }
+
+        protected override void OnModelCreating(ModelBuilder modelBuilder)
+        {
+            modelBuilder.HasAnnotation("Relational:Collation", "Czech_CI_AS");
+
+            modelBuilder.Entity<Artifact>(entity =>
+            {
+                entity.ToTable("Artifact");
+
+                entity.HasComment("Stores single part of metadocument (called artifact). Refresents fingle physical file included for processing.");
+
+                entity.Property(e => e.Id).HasComment("Primary key of artifact record");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when artifact was created (uploaded)");
+
+                entity.Property(e => e.CreatedByUserId).HasComment("Reference to user who created (uploaded) artifact");
+
+                entity.Property(e => e.Extension)
+                    .HasMaxLength(10)
+                    .HasComment("Artifact file  extension");
+
+                entity.Property(e => e.Length).HasComment("Defines file content length in bytes");
+
+                entity.Property(e => e.MetadocumentId).HasComment("Reference to owning metadocument");
+
+                entity.Property(e => e.MimeTypeId).HasComment("Reference to MIME Type enumeration");
+
+                entity.Property(e => e.Name)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Artifact file name without extension");
+
+                entity.Property(e => e.Type).HasComment("Defines type of artifact. 0 - Input, 1 - Output");
+
+                entity.HasOne(d => d.CreatedByUser)
+                    .WithMany(p => p.Artifacts)
+                    .HasForeignKey(d => d.CreatedByUserId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Artifact_User_Created");
+
+                entity.HasOne(d => d.Metadocument)
+                    .WithMany(p => p.Artifacts)
+                    .HasForeignKey(d => d.MetadocumentId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Artifact_Metadocument");
+
+                entity.HasOne(d => d.MimeType)
+                    .WithMany(p => p.Artifacts)
+                    .HasForeignKey(d => d.MimeTypeId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Artifact_MimeType");
+            });
+
+            modelBuilder.Entity<BillingInfo>(entity =>
+            {
+                entity.ToTable("BillingInfo");
+
+                entity.HasComment("Workspace billing information for invoicing");
+
+                entity.Property(e => e.Id).HasComment("Primary key of billing information record");
+
+                entity.Property(e => e.Address1)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Billing Address line 1");
+
+                entity.Property(e => e.Address2)
+                    .HasMaxLength(200)
+                    .HasComment("Billing Address line 2");
+
+                entity.Property(e => e.City)
+                    .IsRequired()
+                    .HasMaxLength(100)
+                    .HasComment("Billing Address city");
+
+                entity.Property(e => e.Country)
+                    .IsRequired()
+                    .HasMaxLength(50)
+                    .HasComment("Billing Address country");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when billing info was created");
+
+                entity.Property(e => e.CreatedByUserId).HasComment("Reference to user who created billing info");
+
+                entity.Property(e => e.Email)
+                    .IsRequired()
+                    .HasMaxLength(20)
+                    .HasComment("Billing email");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when billing info was modified");
+
+                entity.Property(e => e.ModifiedByUserId).HasComment("Reference to user who updated billing info");
+
+                entity.Property(e => e.Phone)
+                    .HasMaxLength(20)
+                    .HasComment("Billing phone with format +XXXXXXXXX");
+
+                entity.Property(e => e.SubjectName)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Billing Subject name");
+
+                entity.Property(e => e.TaxNumber)
+                    .IsRequired()
+                    .HasMaxLength(20)
+                    .HasComment("Billing Tax number");
+
+                entity.Property(e => e.Vatnumber)
+                    .HasMaxLength(20)
+                    .HasColumnName("VATNumber")
+                    .HasComment("Billing VAT number");
+
+                entity.Property(e => e.WorkspaceId).HasComment("Reference to owning workspace");
+
+                entity.Property(e => e.Zip)
+                    .IsRequired()
+                    .HasMaxLength(20)
+                    .HasColumnName("ZIP")
+                    .HasComment("Billing Address ZIP");
+
+                entity.HasOne(d => d.CreatedByUser)
+                    .WithMany(p => p.BillingInfoCreatedByUsers)
+                    .HasForeignKey(d => d.CreatedByUserId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_BillingInfo_User_Created");
+
+                entity.HasOne(d => d.ModifiedByUser)
+                    .WithMany(p => p.BillingInfoModifiedByUsers)
+                    .HasForeignKey(d => d.ModifiedByUserId)
+                    .HasConstraintName("REL_BillingInfo_User_Modified");
+
+                entity.HasOne(d => d.Workspace)
+                    .WithMany(p => p.BillingInfos)
+                    .HasForeignKey(d => d.WorkspaceId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_BillingInfo_Workspace");
+            });
+
+            modelBuilder.Entity<BillingPlan>(entity =>
+            {
+                entity.ToTable("BillingPlan");
+
+                entity.HasComment("Defines global Billing plan strategies (how to bill document processing in workspace). This table is managed only with administrator.");
+
+                entity.Property(e => e.Id).HasComment("Primary key of BillingPlan record");
+
+                entity.Property(e => e.Code)
+                    .IsRequired()
+                    .HasMaxLength(10)
+                    .HasComment("Billing plan short code");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when metadocument was created (uploaded)");
+
+                entity.Property(e => e.CreatedByUserId).HasComment("Reference to user who created (uploaded) metadocument");
+
+                entity.Property(e => e.Currency)
+                    .IsRequired()
+                    .HasMaxLength(3)
+                    .IsUnicode(false)
+                    .HasComment("Billing plan price currency");
+
+                entity.Property(e => e.Description)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Billing plan short description");
+
+                entity.Property(e => e.IsCustom).HasComment("Flag if billing plan is custom dependent");
+
+                entity.Property(e => e.IsEnabled).HasComment("Flag if record is active, otherwise shuld be delete");
+
+                entity.Property(e => e.IsHidden).HasComment("Flag if billing plan is private for use, only SuperAdmin can use it");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when metadocument was modified");
+
+                entity.Property(e => e.ModifiedByUserId).HasComment("Reference to user who updated metadocument");
+
+                entity.Property(e => e.Name)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Billing plan name");
+
+                entity.Property(e => e.Price)
+                    .HasColumnType("decimal(18, 0)")
+                    .HasComment("Billing plan price");
+
+                entity.Property(e => e.PstcreditsPerItem)
+                    .HasColumnName("PSTCreditsPerItem")
+                    .HasComment("Preset - single item credit cost");
+
+                entity.Property(e => e.PstinitialCredits)
+                    .HasColumnName("PSTInitialCredits")
+                    .HasComment("Preset - initial credit amount");
+
+                entity.Property(e => e.PstprocessProfile)
+                    .HasMaxLength(5)
+                    .IsUnicode(false)
+                    .HasColumnName("PSTProcessProfile")
+                    .HasComment("Preset - processing profile code");
+
+                entity.Property(e => e.Pstquality)
+                    .HasColumnName("PSTQuality")
+                    .HasComment("Preset - process quality 0 = lowest");
+
+                entity.Property(e => e.Psttest)
+                    .HasColumnName("PSTTest")
+                    .HasComment("Preset - testing mode");
+
+                entity.Property(e => e.Pstwatermark)
+                    .HasColumnName("PSTWatermark")
+                    .HasComment("Preset - watermarked");
+
+                entity.HasOne(d => d.CreatedByUser)
+                    .WithMany(p => p.BillingPlanCreatedByUsers)
+                    .HasForeignKey(d => d.CreatedByUserId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_BillingPlan_User_Created");
+
+                entity.HasOne(d => d.ModifiedByUser)
+                    .WithMany(p => p.BillingPlanModifiedByUsers)
+                    .HasForeignKey(d => d.ModifiedByUserId)
+                    .HasConstraintName("REL_BillingPlan_User_Modified");
+            });
+
+            modelBuilder.Entity<Invoice>(entity =>
+            {
+                entity.ToTable("Invoice");
+
+                entity.HasComment("Stores invoice information of Workspace BusinessPlan ");
+
+                entity.Property(e => e.Id).HasComment("Primary key of invoice record");
+
+                entity.Property(e => e.Address1)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Billing Address line 1");
+
+                entity.Property(e => e.Address2)
+                    .HasMaxLength(200)
+                    .HasComment("Billing Address line 2");
+
+                entity.Property(e => e.Channel)
+                    .IsRequired()
+                    .HasMaxLength(20)
+                    .HasComment("Pay channel");
+
+                entity.Property(e => e.ChannelReference)
+                    .IsRequired()
+                    .HasMaxLength(50)
+                    .HasComment("Pay channel reference (account number)");
+
+                entity.Property(e => e.City)
+                    .IsRequired()
+                    .HasMaxLength(100)
+                    .HasComment("Billing Address city");
+
+                entity.Property(e => e.Code)
+                    .IsRequired()
+                    .HasMaxLength(12)
+                    .IsUnicode(false)
+                    .HasComment("Invoice number");
+
+                entity.Property(e => e.Country)
+                    .IsRequired()
+                    .HasMaxLength(50)
+                    .HasComment("Billing Address country");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when billing info was created");
+
+                entity.Property(e => e.CreatedByUserId).HasComment("Reference to user who created billing info");
+
+                entity.Property(e => e.DueDate)
+                    .HasColumnType("datetime")
+                    .HasComment("Due date");
+
+                entity.Property(e => e.Email)
+                    .IsRequired()
+                    .HasMaxLength(20)
+                    .HasComment("Billing email");
+
+                entity.Property(e => e.InvoiceIssuerId).HasComment("Reference to invoice issuer record");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when billing info was modified");
+
+                entity.Property(e => e.ModifiedByUserId).HasComment("Reference to user who updated billing info");
+
+                entity.Property(e => e.Phone)
+                    .HasMaxLength(20)
+                    .HasComment("Billing phone with format +XXXXXXXXX");
+
+                entity.Property(e => e.SubjectName)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Billing Subject name");
+
+                entity.Property(e => e.TaxDate)
+                    .HasColumnType("datetime")
+                    .HasComment("Tax date");
+
+                entity.Property(e => e.TaxNumber)
+                    .IsRequired()
+                    .HasMaxLength(20)
+                    .HasComment("Billing Tax number");
+
+                entity.Property(e => e.TotalBaseCurrency)
+                    .IsRequired()
+                    .HasMaxLength(3)
+                    .IsUnicode(false)
+                    .HasComment("Total base price currency (w/o VAT)");
+
+                entity.Property(e => e.TotalBasePrice)
+                    .HasColumnType("decimal(16, 4)")
+                    .HasComment("Total base price (w/o VAT)");
+
+                entity.Property(e => e.Vatnumber)
+                    .HasMaxLength(20)
+                    .HasColumnName("VATNumber")
+                    .HasComment("Billing VAT number");
+
+                entity.Property(e => e.WorkspaceId).HasComment("Reference to owning workspace");
+
+                entity.Property(e => e.Zip)
+                    .IsRequired()
+                    .HasMaxLength(20)
+                    .HasColumnName("ZIP")
+                    .HasComment("Billing Address ZIP");
+
+                entity.HasOne(d => d.CreatedByUser)
+                    .WithMany(p => p.InvoiceCreatedByUsers)
+                    .HasForeignKey(d => d.CreatedByUserId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Invoice_User_Created");
+
+                entity.HasOne(d => d.InvoiceIssuer)
+                    .WithMany(p => p.Invoices)
+                    .HasForeignKey(d => d.InvoiceIssuerId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Invoice_InvoiceIssuer");
+
+                entity.HasOne(d => d.ModifiedByUser)
+                    .WithMany(p => p.InvoiceModifiedByUsers)
+                    .HasForeignKey(d => d.ModifiedByUserId)
+                    .HasConstraintName("REL_Invoice_User_Modified");
+
+                entity.HasOne(d => d.Workspace)
+                    .WithMany(p => p.Invoices)
+                    .HasForeignKey(d => d.WorkspaceId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Invoice_Workspace");
+            });
+
+            modelBuilder.Entity<InvoiceIssuer>(entity =>
+            {
+                entity.ToTable("InvoiceIssuer");
+
+                entity.HasComment("Defines information about Invoice Issuer and its contacts information (used in invoice header)");
+
+                entity.Property(e => e.Id).HasComment("Primary key of invoice issuer record");
+
+                entity.Property(e => e.Address1)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Billing Address line 1");
+
+                entity.Property(e => e.Address2)
+                    .HasMaxLength(200)
+                    .HasComment("Billing Address line 2");
+
+                entity.Property(e => e.City)
+                    .IsRequired()
+                    .HasMaxLength(100)
+                    .HasComment("Billing Address city");
+
+                entity.Property(e => e.Country)
+                    .IsRequired()
+                    .HasMaxLength(50)
+                    .HasComment("Billing Address country");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when billing info was created");
+
+                entity.Property(e => e.CreatedByUserId).HasComment("Reference to user who created billing info");
+
+                entity.Property(e => e.Email)
+                    .IsRequired()
+                    .HasMaxLength(20)
+                    .HasComment("Billing email");
+
+                entity.Property(e => e.IsEnabled).HasComment("Flag if record is enabled");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when billing info was modified");
+
+                entity.Property(e => e.ModifiedByUserId).HasComment("Reference to user who updated billing info");
+
+                entity.Property(e => e.Phone)
+                    .HasMaxLength(20)
+                    .HasComment("Billing phone with format +XXXXXXXXX");
+
+                entity.Property(e => e.SubjectName)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Billing Subject name");
+
+                entity.Property(e => e.TaxNumber)
+                    .IsRequired()
+                    .HasMaxLength(20)
+                    .HasComment("Billing Tax number");
+
+                entity.Property(e => e.Vatnumber)
+                    .HasMaxLength(20)
+                    .HasColumnName("VATNumber")
+                    .HasComment("Billing VAT number");
+
+                entity.Property(e => e.Zip)
+                    .IsRequired()
+                    .HasMaxLength(20)
+                    .HasColumnName("ZIP")
+                    .HasComment("Billing Address ZIP");
+
+                entity.HasOne(d => d.CreatedByUser)
+                    .WithMany(p => p.InvoiceIssuerCreatedByUsers)
+                    .HasForeignKey(d => d.CreatedByUserId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_InvoiceIssuer_User_Created");
+
+                entity.HasOne(d => d.ModifiedByUser)
+                    .WithMany(p => p.InvoiceIssuerModifiedByUsers)
+                    .HasForeignKey(d => d.ModifiedByUserId)
+                    .HasConstraintName("REL_InvoiceIssuer_User_Modified");
+            });
+
+            modelBuilder.Entity<InvoiceItem>(entity =>
+            {
+                entity.ToTable("InvoiceItem");
+
+                entity.HasComment("Invoice item");
+
+                entity.Property(e => e.Id).HasComment("Primary key of invoice item record");
+
+                entity.Property(e => e.BillingPlanCode)
+                    .IsRequired()
+                    .HasMaxLength(10)
+                    .HasComment("Billing plan short code");
+
+                entity.Property(e => e.BillingPlanId).HasComment("Reference to billing plan");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when billing info was created");
+
+                entity.Property(e => e.CreatedByUserId).HasComment("Reference to user who created billing info");
+
+                entity.Property(e => e.InvoiceId).HasComment("Reference to owning invoice");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when billing info was modified");
+
+                entity.Property(e => e.ModifiedByUserId).HasComment("Reference to user who updated billing info");
+
+                entity.Property(e => e.UnitBaseCurrency)
+                    .IsRequired()
+                    .HasMaxLength(3)
+                    .IsUnicode(false)
+                    .HasComment("Unit base price currency (w/o VAT)");
+
+                entity.Property(e => e.UnitBasePrice)
+                    .HasColumnType("decimal(16, 4)")
+                    .HasComment("Unit base price (w/o VAT)");
+
+                entity.Property(e => e.UnitQuantity)
+                    .HasDefaultValueSql("((1))")
+                    .HasComment("Unit quantity");
+
+                entity.HasOne(d => d.BillingPlan)
+                    .WithMany(p => p.InvoiceItems)
+                    .HasForeignKey(d => d.BillingPlanId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_InvoiceItem_BillingPlan");
+
+                entity.HasOne(d => d.CreatedByUser)
+                    .WithMany(p => p.InvoiceItemCreatedByUsers)
+                    .HasForeignKey(d => d.CreatedByUserId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_InvoiceItem_User_Created");
+
+                entity.HasOne(d => d.Invoice)
+                    .WithMany(p => p.InvoiceItems)
+                    .HasForeignKey(d => d.InvoiceId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_InvoiceItem_Invoice");
+
+                entity.HasOne(d => d.ModifiedByUser)
+                    .WithMany(p => p.InvoiceItemModifiedByUsers)
+                    .HasForeignKey(d => d.ModifiedByUserId)
+                    .HasConstraintName("REL_InvoiceItem_User_Modified");
+            });
+
+            modelBuilder.Entity<Metadocument>(entity =>
+            {
+                entity.ToTable("Metadocument");
+
+                entity.HasComment("Abstract single document header to process. Has setting parameters for computing and status");
+
+                entity.Property(e => e.Id).HasComment("Primary key of metadocument record");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when metadocument was created (uploaded)");
+
+                entity.Property(e => e.CreatedByUserId).HasComment("Reference to user who created (uploaded) metadocument");
+
+                entity.Property(e => e.LastDowloaded)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when metadocument was last downloaded");
+
+                entity.Property(e => e.LastDownloadedByUserId).HasComment("Reference to user who last metadocument dowloaded");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when metadocument was modified");
+
+                entity.Property(e => e.ModifiedByUserId).HasComment("Reference to user who updated metadocument");
+
+                entity.Property(e => e.Name)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Metadocument name");
+
+                entity.Property(e => e.Status).HasComment("Metadocument status");
+
+                entity.Property(e => e.StructureId).HasComment("Reference to owning structure (workspace)");
+
+                entity.HasOne(d => d.CreatedByUser)
+                    .WithMany(p => p.MetadocumentCreatedByUsers)
+                    .HasForeignKey(d => d.CreatedByUserId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Metadocument_User_Created");
+
+                entity.HasOne(d => d.LastDownloadedByUser)
+                    .WithMany(p => p.MetadocumentLastDownloadedByUsers)
+                    .HasForeignKey(d => d.LastDownloadedByUserId)
+                    .HasConstraintName("REL_Metadocument_User_Downloaded");
+
+                entity.HasOne(d => d.ModifiedByUser)
+                    .WithMany(p => p.MetadocumentModifiedByUsers)
+                    .HasForeignKey(d => d.ModifiedByUserId)
+                    .HasConstraintName("REL_Metadocument_User_Modified");
+
+                entity.HasOne(d => d.Structure)
+                    .WithMany(p => p.Metadocuments)
+                    .HasForeignKey(d => d.StructureId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Metadocument_Structure");
+            });
+
+            modelBuilder.Entity<MetadocumentBilling>(entity =>
+            {
+                entity.HasNoKey();
+
+                entity.ToTable("MetadocumentBilling");
+
+                entity.HasComment("Association of metadocument and billing plan");
+
+                entity.Property(e => e.BillingPlanId).HasComment("Reference to billing plan");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when billing was created");
+
+                entity.Property(e => e.CreditCost).HasComment("Numeric value of billing plan spending. Depends on BillingPlan.");
+
+                entity.Property(e => e.MetadocumentId).HasComment("Reference to owning metadocument");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when billing was modified");
+
+                entity.Property(e => e.ProcessProfile)
+                    .HasMaxLength(5)
+                    .IsUnicode(false)
+                    .HasComment("Processing profile code");
+
+                entity.Property(e => e.Quality).HasComment("Process quality 0 = lowest");
+
+                entity.Property(e => e.Test).HasComment("Flag if testing mode");
+
+                entity.Property(e => e.Watermark).HasComment("Flag if watermarked");
+
+                entity.HasOne(d => d.BillingPlan)
+                    .WithMany()
+                    .HasForeignKey(d => d.BillingPlanId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_MetadocumentBilling_BillingPlan");
+
+                entity.HasOne(d => d.Metadocument)
+                    .WithMany()
+                    .HasForeignKey(d => d.MetadocumentId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_MetadocumentBilling_Metadocument");
+            });
+
+            modelBuilder.Entity<MetadocumentTag>(entity =>
+            {
+                entity.HasNoKey();
+
+                entity.ToTable("MetadocumentTag");
+
+                entity.HasComment("Association of metadocument and tag");
+
+                entity.Property(e => e.MetadocumentId).HasComment("Reference to owning metadocument");
+
+                entity.Property(e => e.TagId).HasComment("Reference to Tag");
+
+                entity.HasOne(d => d.Metadocument)
+                    .WithMany()
+                    .HasForeignKey(d => d.MetadocumentId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_MetadocumentTag_Metadocument");
+
+                entity.HasOne(d => d.Tag)
+                    .WithMany()
+                    .HasForeignKey(d => d.TagId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_MetadocumentTag_Tag");
+            });
+
+            modelBuilder.Entity<MimeType>(entity =>
+            {
+                entity.ToTable("MimeType");
+
+                entity.HasComment("MIME Types global enumeration. Defines file extension and MIME type association, This table is managed only with administrator.");
+
+                entity.Property(e => e.Id).HasComment("Primary key of MIMEType record");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when metadocument was created (uploaded)");
+
+                entity.Property(e => e.CreatedByUserId).HasComment("Reference to user who created (uploaded) metadocument");
+
+                entity.Property(e => e.Description)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Short description of MIMEType");
+
+                entity.Property(e => e.Extensions)
+                    .IsRequired()
+                    .HasMaxLength(500)
+                    .HasComment("Extensions for mime type separated by semicolomn (example cad; cat; txt)");
+
+                entity.Property(e => e.IsEnabled).HasComment("Flag if record is active, otherwise shuld be delete");
+
+                entity.Property(e => e.Mimetype1)
+                    .IsRequired()
+                    .HasMaxLength(500)
+                    .HasColumnName("MIMEType")
+                    .HasComment("MIMEType code");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when metadocument was modified");
+
+                entity.Property(e => e.ModifiedByUserId).HasComment("Reference to user who updated metadocument");
+
+                entity.HasOne(d => d.CreatedByUser)
+                    .WithMany(p => p.MimeTypeCreatedByUsers)
+                    .HasForeignKey(d => d.CreatedByUserId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_MimeType_User_Created");
+
+                entity.HasOne(d => d.ModifiedByUser)
+                    .WithMany(p => p.MimeTypeModifiedByUsers)
+                    .HasForeignKey(d => d.ModifiedByUserId)
+                    .HasConstraintName("REL_MimeType_User_Modified");
+            });
+
+            modelBuilder.Entity<Statistic>(entity =>
+            {
+                entity.ToTable("Statistic");
+
+                entity.HasComment("Holds statistics information on daily base");
+
+                entity.Property(e => e.Id).HasComment("Primary key of Statistic record");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when billing info was created");
+
+                entity.Property(e => e.Day).HasComment("Day number");
+
+                entity.Property(e => e.DocumentDownloadedCnt).HasComment("# of downloaded documents");
+
+                entity.Property(e => e.DocumentFailedCnt).HasComment("# of failed documents");
+
+                entity.Property(e => e.DocumentNewCnt).HasComment("# of new created/uploaded documents");
+
+                entity.Property(e => e.DocumentProcessedCnt).HasComment("# of processed documents");
+
+                entity.Property(e => e.DocumentTotalCnt).HasComment("# of all available documents");
+
+                entity.Property(e => e.InvoiceNewCnt).HasComment("# of new created invoices");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when billing info was modified");
+
+                entity.Property(e => e.Month).HasComment("Month number");
+
+                entity.Property(e => e.PsactiveCnt)
+                    .HasColumnName("PSActiveCnt")
+                    .HasComment("# of active ProcessServer instances");
+
+                entity.Property(e => e.UserLoginB2bcnt)
+                    .HasColumnName("UserLoginB2BCnt")
+                    .HasComment("# of logged B2B users");
+
+                entity.Property(e => e.UserLoginCnt).HasComment("# of logged users (incl B2B)");
+
+                entity.Property(e => e.UserNewCnt).HasComment("# of new created users");
+
+                entity.Property(e => e.UserTotalCnt).HasComment("# of all users (incl system)");
+
+                entity.Property(e => e.WorkspaceNewCnt).HasComment("# of new created workspaces");
+
+                entity.Property(e => e.WorkspaceTotalCnt).HasComment("# of all workspaces");
+
+                entity.Property(e => e.Year).HasComment("Year number");
+
+                entity.Property(e => e.YieldWorthCurrency)
+                    .IsRequired()
+                    .HasMaxLength(3)
+                    .IsUnicode(false)
+                    .HasComment("currency code of yieldworth");
+
+                entity.Property(e => e.YieldWorthSum)
+                    .HasColumnType("decimal(16, 4)")
+                    .HasComment("sum of daily yield worth");
+
+                entity.Property(e => e.YieldWorthTotalCurrency)
+                    .IsRequired()
+                    .HasMaxLength(3)
+                    .IsUnicode(false)
+                    .HasComment("currency code of yieldworth");
+
+                entity.Property(e => e.YieldWorthTotalSum)
+                    .HasColumnType("decimal(16, 4)")
+                    .HasComment("sum of daily yield worth");
+            });
+
+            modelBuilder.Entity<StatusHistory>(entity =>
+            {
+                entity.ToTable("StatusHistory");
+
+                entity.HasComment("Stores metadocument status changing log with messages");
+
+                entity.Property(e => e.Id).HasComment("Primary key of metadocument status history record");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when metadocument was created (uploaded)");
+
+                entity.Property(e => e.CreatedByUserId).HasComment("Reference to user who created (uploaded) metadocument");
+
+                entity.Property(e => e.Message)
+                    .HasMaxLength(4000)
+                    .HasComment("Status change message or error message. This value is optional.");
+
+                entity.Property(e => e.MetadocumentId).HasComment("Reference to owning metadocument");
+
+                entity.Property(e => e.Status).HasComment("Metadocument status");
+
+                entity.HasOne(d => d.CreatedByUser)
+                    .WithMany(p => p.StatusHistories)
+                    .HasForeignKey(d => d.CreatedByUserId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_StatusHistory_User_Created");
+
+                entity.HasOne(d => d.Metadocument)
+                    .WithMany(p => p.StatusHistories)
+                    .HasForeignKey(d => d.MetadocumentId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_StatusHistory_Metadocument");
+            });
+
+            modelBuilder.Entity<Structure>(entity =>
+            {
+                entity.ToTable("Structure");
+
+                entity.HasComment("Abstract repository structure (folder-like) where documents are assignig");
+
+                entity.Property(e => e.Id).HasComment("Structure primary key");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when workspace was created");
+
+                entity.Property(e => e.CreatedByUserId).HasComment("Reference to user who created workspace");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when workspace was modified");
+
+                entity.Property(e => e.ModifiedByUserId).HasComment("Reference to user who updated workspace");
+
+                entity.Property(e => e.Name)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Structure name");
+
+                entity.Property(e => e.ParentId).HasComment("Reference to parent structure (folder). If null then record is root");
+
+                entity.Property(e => e.WorkspaceId).HasComment("Reference to owning workspace");
+
+                entity.HasOne(d => d.Parent)
+                    .WithMany(p => p.InverseParent)
+                    .HasForeignKey(d => d.ParentId)
+                    .HasConstraintName("REL_Structure_Structure_Parent");
+
+                entity.HasOne(d => d.Workspace)
+                    .WithMany(p => p.Structures)
+                    .HasForeignKey(d => d.WorkspaceId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Structure_Workspace");
+            });
+
+            modelBuilder.Entity<Tag>(entity =>
+            {
+                entity.ToTable("Tag");
+
+                entity.HasComment("Declares tag for workspace scope. Tag is used on metadocument.");
+
+                entity.Property(e => e.Id).HasComment("Primary key of tag record");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when billing info was created");
+
+                entity.Property(e => e.CreatedByUserId).HasComment("Reference to user who created billing info");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when billing info was modified");
+
+                entity.Property(e => e.ModifiedByUserId).HasComment("Reference to user who updated billing info");
+
+                entity.Property(e => e.Name)
+                    .IsRequired()
+                    .HasMaxLength(50)
+                    .HasComment("Tag name");
+
+                entity.Property(e => e.Rgb)
+                    .IsRequired()
+                    .HasMaxLength(50)
+                    .IsUnicode(false)
+                    .HasColumnName("RGB")
+                    .HasComment("Tag color in RGB format");
+
+                entity.Property(e => e.WorkspaceId).HasComment("Reference to owning workspace");
+
+                entity.HasOne(d => d.CreatedByUser)
+                    .WithMany(p => p.TagCreatedByUsers)
+                    .HasForeignKey(d => d.CreatedByUserId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Tag_User_Created");
+
+                entity.HasOne(d => d.ModifiedByUser)
+                    .WithMany(p => p.TagModifiedByUsers)
+                    .HasForeignKey(d => d.ModifiedByUserId)
+                    .HasConstraintName("REL_Tag_User_Modified");
+
+                entity.HasOne(d => d.Workspace)
+                    .WithMany(p => p.Tags)
+                    .HasForeignKey(d => d.WorkspaceId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Tag_Workspace");
+            });
+
+            modelBuilder.Entity<User>(entity =>
+            {
+                entity.ToTable("User");
+
+                entity.HasComment("User identity with properties");
+
+                entity.Property(e => e.Id).HasComment("User primary key");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when user was created");
+
+                entity.Property(e => e.Ifreference)
+                    .IsRequired()
+                    .HasMaxLength(50)
+                    .IsUnicode(false)
+                    .HasColumnName("IFReference")
+                    .HasComment("Reference to Identity framework IdentityUser.Id");
+
+                entity.Property(e => e.IsEnabled).HasComment("Flag if user can sign on");
+
+                entity.Property(e => e.IsSystem).HasComment("Flag if user is system only account. Cannot log in.");
+
+                entity.Property(e => e.LangLcid)
+                    .HasColumnName("LangLCID")
+                    .HasDefaultValueSql("((1033))")
+                    .HasComment("LCID of preffered user language");
+
+                entity.Property(e => e.LastDisabled)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp of last user set to be disabled");
+
+                entity.Property(e => e.LastEnabled)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp of last user set to be enabled");
+
+                entity.Property(e => e.LastLogged)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp of user last successful login");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when user was modified");
+
+                entity.Property(e => e.Name)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Full user name");
+            });
+
+            modelBuilder.Entity<UserWorkspace>(entity =>
+            {
+                entity.HasNoKey();
+
+                entity.ToTable("UserWorkspace");
+
+                entity.HasComment("Association between User and Workspace. Which Workspace is assigned to user.");
+
+                entity.Property(e => e.IsDefault).HasComment("Flag if relation is default");
+
+                entity.Property(e => e.UserId).HasComment("Reference to user record");
+
+                entity.Property(e => e.WorkspaceId).HasComment("Reference to workspace record");
+
+                entity.HasOne(d => d.User)
+                    .WithMany()
+                    .HasForeignKey(d => d.UserId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_UserWorkspace_User");
+
+                entity.HasOne(d => d.Workspace)
+                    .WithMany()
+                    .HasForeignKey(d => d.WorkspaceId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_UserWorkspace_Workspace");
+            });
+
+            modelBuilder.Entity<Workspace>(entity =>
+            {
+                entity.ToTable("Workspace");
+
+                entity.HasComment("Main workspace root structure holds information about working space (set of documents) and their business plan");
+
+                entity.Property(e => e.Id).HasComment("Workspace primary key");
+
+                entity.Property(e => e.Apikey)
+                    .HasColumnName("APIKey")
+                    .HasDefaultValueSql("(newid())")
+                    .HasComment("API Key for access to workspace via B2B interface");
+
+                entity.Property(e => e.Apipassword)
+                    .IsRequired()
+                    .HasMaxLength(50)
+                    .HasColumnName("APIPassword")
+                    .HasComment("API Key Password for access to workspace via B2B interface");
+
+                entity.Property(e => e.BillingInfoId).HasComment("Reference to current billing info record");
+
+                entity.Property(e => e.BillingPlanId).HasComment("Reference to current billing plan record");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when workspace was created");
+
+                entity.Property(e => e.CreatedByUserId).HasComment("Reference to user who created workspace");
+
+                entity.Property(e => e.IsGold).HasComment("Define if workspace is GOLD mode (has custom billing plan)");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when workspace was modified");
+
+                entity.Property(e => e.ModifiedByUserId).HasComment("Reference to user who updated workspace");
+
+                entity.Property(e => e.Name)
+                    .IsRequired()
+                    .HasMaxLength(200)
+                    .HasComment("Workspace name");
+
+                entity.HasOne(d => d.BillingInfo)
+                    .WithMany(p => p.Workspaces)
+                    .HasForeignKey(d => d.BillingInfoId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Workspace_BillingInfo");
+
+                entity.HasOne(d => d.CreatedByUser)
+                    .WithMany(p => p.WorkspaceCreatedByUsers)
+                    .HasForeignKey(d => d.CreatedByUserId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_Workspace_User_Created");
+
+                entity.HasOne(d => d.ModifiedByUser)
+                    .WithMany(p => p.WorkspaceModifiedByUsers)
+                    .HasForeignKey(d => d.ModifiedByUserId)
+                    .HasConstraintName("REL_Workspace_User_Modified");
+            });
+
+            modelBuilder.Entity<WorkspaceBilling>(entity =>
+            {
+                entity.HasNoKey();
+
+                entity.ToTable("WorkspaceBilling");
+
+                entity.HasComment("Deffines current state of billing plan for workspace");
+
+                entity.Property(e => e.BillingPlanId).HasComment("Reference to billing plan");
+
+                entity.Property(e => e.Created)
+                    .HasColumnType("datetime")
+                    .HasDefaultValueSql("(getdate())")
+                    .HasComment("Timestamp when billing was created");
+
+                entity.Property(e => e.CustomPstcreditsPerItem)
+                    .HasColumnName("CustomPSTCreditsPerItem")
+                    .HasComment("Custom Preset Override - single item credit cost");
+
+                entity.Property(e => e.CustomPstinitialCredits)
+                    .HasColumnName("CustomPSTInitialCredits")
+                    .HasComment("Custom Preset Override - initial credit amount");
+
+                entity.Property(e => e.CustomPstprocessProfile)
+                    .HasMaxLength(5)
+                    .IsUnicode(false)
+                    .HasColumnName("CustomPSTProcessProfile")
+                    .HasComment("Custom Preset Override - processing profile code");
+
+                entity.Property(e => e.CustomPstquality)
+                    .HasColumnName("CustomPSTQuality")
+                    .HasComment("Custom Preset Override - process quality 0 = lowest");
+
+                entity.Property(e => e.CustomPsttest)
+                    .HasColumnName("CustomPSTTest")
+                    .HasComment("Custom Preset Override - testing mode");
+
+                entity.Property(e => e.CustomPstwatermark)
+                    .HasColumnName("CustomPSTWatermark")
+                    .HasComment("Custom Preset Override - watermarked");
+
+                entity.Property(e => e.Modified)
+                    .HasColumnType("datetime")
+                    .HasComment("Timestamp when billing was modified");
+
+                entity.Property(e => e.ValueDate)
+                    .HasColumnType("datetime")
+                    .HasComment("DateTime value of billing plan spending. Depends on BillingPlan");
+
+                entity.Property(e => e.ValueNumber)
+                    .HasColumnType("decimal(16, 4)")
+                    .HasComment("Numeric value of billing plan spending. Depends on BillingPlan.");
+
+                entity.Property(e => e.WorkspaceId).HasComment("Reference to owning workspace");
+
+                entity.HasOne(d => d.BillingPlan)
+                    .WithMany()
+                    .HasForeignKey(d => d.BillingPlanId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_WorkspaceBilling_BillingPlan");
+
+                entity.HasOne(d => d.Workspace)
+                    .WithMany()
+                    .HasForeignKey(d => d.WorkspaceId)
+                    .OnDelete(DeleteBehavior.ClientSetNull)
+                    .HasConstraintName("REL_WorkspaceBilling_Workspace");
+            });
+
+            OnModelCreatingPartial(modelBuilder);
+        }
+
+        partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
+    }
+}

+ 37 - 0
AppServer/Data/Entity/BillingInfo.cs

@@ -0,0 +1,37 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class BillingInfo
+    {
+        public BillingInfo()
+        {
+            Workspaces = new HashSet<Workspace>();
+        }
+
+        // public long Id { get; set; }
+        public long WorkspaceId { get; set; }
+        public string SubjectName { get; set; }
+        public string Address1 { get; set; }
+        public string Address2 { get; set; }
+        public string City { get; set; }
+        public string Zip { get; set; }
+        public string Country { get; set; }
+        public string TaxNumber { get; set; }
+        public string Vatnumber { get; set; }
+        public string Phone { get; set; }
+        public string Email { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+        public long CreatedByUserId { get; set; }
+        public long? ModifiedByUserId { get; set; }
+
+        public virtual User CreatedByUser { get; set; }
+        public virtual User ModifiedByUser { get; set; }
+        public virtual Workspace Workspace { get; set; }
+        public virtual ICollection<Workspace> Workspaces { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/BillingInfo.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class BillingInfo :  Entity<long>, IDao<long>
+    {
+    }
+}

+ 39 - 0
AppServer/Data/Entity/BillingPlan.cs

@@ -0,0 +1,39 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class BillingPlan
+    {
+        public BillingPlan()
+        {
+            InvoiceItems = new HashSet<InvoiceItem>();
+        }
+
+        // public long Id { get; set; }
+        public string Name { get; set; }
+        public string Code { get; set; }
+        public string Description { get; set; }
+        public int PstinitialCredits { get; set; }
+        public int PstcreditsPerItem { get; set; }
+        public bool Pstwatermark { get; set; }
+        public int Pstquality { get; set; }
+        public string PstprocessProfile { get; set; }
+        public bool Psttest { get; set; }
+        public decimal Price { get; set; }
+        public string Currency { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+        public long CreatedByUserId { get; set; }
+        public long? ModifiedByUserId { get; set; }
+        public bool IsCustom { get; set; }
+        public bool IsHidden { get; set; }
+        public bool IsEnabled { get; set; }
+
+        public virtual User CreatedByUser { get; set; }
+        public virtual User ModifiedByUser { get; set; }
+        public virtual ICollection<InvoiceItem> InvoiceItems { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/BillingPlan.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class BillingPlan :  Entity<long>, IDao<long>
+    {
+    }
+}

+ 46 - 0
AppServer/Data/Entity/Invoice.cs

@@ -0,0 +1,46 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Invoice
+    {
+        public Invoice()
+        {
+            InvoiceItems = new HashSet<InvoiceItem>();
+        }
+
+        // public long Id { get; set; }
+        public long WorkspaceId { get; set; }
+        public long InvoiceIssuerId { get; set; }
+        public string Code { get; set; }
+        public string SubjectName { get; set; }
+        public string Address1 { get; set; }
+        public string Address2 { get; set; }
+        public string City { get; set; }
+        public string Zip { get; set; }
+        public string Country { get; set; }
+        public string TaxNumber { get; set; }
+        public string Vatnumber { get; set; }
+        public string Phone { get; set; }
+        public string Email { get; set; }
+        public decimal TotalBasePrice { get; set; }
+        public string TotalBaseCurrency { get; set; }
+        public string Channel { get; set; }
+        public string ChannelReference { get; set; }
+        public DateTime DueDate { get; set; }
+        public DateTime TaxDate { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+        public long CreatedByUserId { get; set; }
+        public long? ModifiedByUserId { get; set; }
+
+        public virtual User CreatedByUser { get; set; }
+        public virtual InvoiceIssuer InvoiceIssuer { get; set; }
+        public virtual User ModifiedByUser { get; set; }
+        public virtual Workspace Workspace { get; set; }
+        public virtual ICollection<InvoiceItem> InvoiceItems { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/Invoice.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Invoice :  Entity<long>, IDao<long>
+    {
+    }
+}

+ 36 - 0
AppServer/Data/Entity/InvoiceIssuer.cs

@@ -0,0 +1,36 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class InvoiceIssuer
+    {
+        public InvoiceIssuer()
+        {
+            Invoices = new HashSet<Invoice>();
+        }
+
+        // public long Id { get; set; }
+        public string SubjectName { get; set; }
+        public string Address1 { get; set; }
+        public string Address2 { get; set; }
+        public string City { get; set; }
+        public string Zip { get; set; }
+        public string Country { get; set; }
+        public string TaxNumber { get; set; }
+        public string Vatnumber { get; set; }
+        public string Phone { get; set; }
+        public string Email { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+        public long CreatedByUserId { get; set; }
+        public long? ModifiedByUserId { get; set; }
+        public bool IsEnabled { get; set; }
+
+        public virtual User CreatedByUser { get; set; }
+        public virtual User ModifiedByUser { get; set; }
+        public virtual ICollection<Invoice> Invoices { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/InvoiceIssuer.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class InvoiceIssuer :  Entity<long>, IDao<long>
+    {
+    }
+}

+ 27 - 0
AppServer/Data/Entity/InvoiceItem.cs

@@ -0,0 +1,27 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class InvoiceItem
+    {
+        // public long Id { get; set; }
+        public long InvoiceId { get; set; }
+        public long BillingPlanId { get; set; }
+        public string BillingPlanCode { get; set; }
+        public int UnitQuantity { get; set; }
+        public decimal UnitBasePrice { get; set; }
+        public string UnitBaseCurrency { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+        public long CreatedByUserId { get; set; }
+        public long? ModifiedByUserId { get; set; }
+
+        public virtual BillingPlan BillingPlan { get; set; }
+        public virtual User CreatedByUser { get; set; }
+        public virtual Invoice Invoice { get; set; }
+        public virtual User ModifiedByUser { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/InvoiceItem.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class InvoiceItem :  Entity<long>, IDao<long>
+    {
+    }
+}

+ 34 - 0
AppServer/Data/Entity/Metadocument.cs

@@ -0,0 +1,34 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Metadocument
+    {
+        public Metadocument()
+        {
+            Artifacts = new HashSet<Artifact>();
+            StatusHistories = new HashSet<StatusHistory>();
+        }
+
+        // public long Id { get; set; }
+        public long StructureId { get; set; }
+        public string Name { get; set; }
+        public int Status { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+        public DateTime? LastDowloaded { get; set; }
+        public long CreatedByUserId { get; set; }
+        public long? ModifiedByUserId { get; set; }
+        public long? LastDownloadedByUserId { get; set; }
+
+        public virtual User CreatedByUser { get; set; }
+        public virtual User LastDownloadedByUser { get; set; }
+        public virtual User ModifiedByUser { get; set; }
+        public virtual Structure Structure { get; set; }
+        public virtual ICollection<Artifact> Artifacts { get; set; }
+        public virtual ICollection<StatusHistory> StatusHistories { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/Metadocument.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Metadocument : Entity<long>, IDao<long>
+    {
+    }
+}

+ 23 - 0
AppServer/Data/Entity/MetadocumentBilling.cs

@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class MetadocumentBilling
+    {
+        public long MetadocumentId { get; set; }
+        public long BillingPlanId { get; set; }
+        public int CreditCost { get; set; }
+        public bool Watermark { get; set; }
+        public int Quality { get; set; }
+        public string ProcessProfile { get; set; }
+        public bool Test { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+
+        public virtual BillingPlan BillingPlan { get; set; }
+        public virtual Metadocument Metadocument { get; set; }
+    }
+}

+ 16 - 0
AppServer/Data/Entity/MetadocumentTag.cs

@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class MetadocumentTag
+    {
+        public long MetadocumentId { get; set; }
+        public long TagId { get; set; }
+
+        public virtual Metadocument Metadocument { get; set; }
+        public virtual Tag Tag { get; set; }
+    }
+}

+ 29 - 0
AppServer/Data/Entity/MimeType.cs

@@ -0,0 +1,29 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class MimeType
+    {
+        public MimeType()
+        {
+            Artifacts = new HashSet<Artifact>();
+        }
+
+        // public long Id { get; set; }
+        public string Mimetype1 { get; set; }
+        public string Extensions { get; set; }
+        public string Description { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+        public long CreatedByUserId { get; set; }
+        public long? ModifiedByUserId { get; set; }
+        public bool IsEnabled { get; set; }
+
+        public virtual User CreatedByUser { get; set; }
+        public virtual User ModifiedByUser { get; set; }
+        public virtual ICollection<Artifact> Artifacts { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/MimeType.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class MimeType :  Entity<long>, IDao<long>
+    {
+    }
+}

+ 34 - 0
AppServer/Data/Entity/Statistic.cs

@@ -0,0 +1,34 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Statistic
+    {
+        // public long Id { get; set; }
+        public int Year { get; set; }
+        public int Month { get; set; }
+        public int Day { get; set; }
+        public int UserNewCnt { get; set; }
+        public int UserLoginCnt { get; set; }
+        public int UserLoginB2bcnt { get; set; }
+        public int UserTotalCnt { get; set; }
+        public int WorkspaceNewCnt { get; set; }
+        public int WorkspaceTotalCnt { get; set; }
+        public int InvoiceNewCnt { get; set; }
+        public int DocumentNewCnt { get; set; }
+        public int DocumentFailedCnt { get; set; }
+        public int DocumentDownloadedCnt { get; set; }
+        public int DocumentTotalCnt { get; set; }
+        public int DocumentProcessedCnt { get; set; }
+        public int PsactiveCnt { get; set; }
+        public decimal YieldWorthSum { get; set; }
+        public string YieldWorthCurrency { get; set; }
+        public decimal YieldWorthTotalSum { get; set; }
+        public string YieldWorthTotalCurrency { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/Statistic.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Statistic :  Entity<long>, IDao<long>
+    {
+    }
+}

+ 20 - 0
AppServer/Data/Entity/StatusHistory.cs

@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class StatusHistory
+    {
+        // public long Id { get; set; }
+        public long MetadocumentId { get; set; }
+        public int Status { get; set; }
+        public string Message { get; set; }
+        public DateTime Created { get; set; }
+        public long CreatedByUserId { get; set; }
+
+        public virtual User CreatedByUser { get; set; }
+        public virtual Metadocument Metadocument { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/StatusHistory.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class StatusHistory :  Entity<long>, IDao<long>
+    {
+    }
+}

+ 30 - 0
AppServer/Data/Entity/Structure.cs

@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Structure
+    {
+        public Structure()
+        {
+            InverseParent = new HashSet<Structure>();
+            Metadocuments = new HashSet<Metadocument>();
+        }
+
+        // public long Id { get; set; }
+        public string Name { get; set; }
+        public long WorkspaceId { get; set; }
+        public long? ParentId { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+        public long CreatedByUserId { get; set; }
+        public long? ModifiedByUserId { get; set; }
+
+        public virtual Structure Parent { get; set; }
+        public virtual Workspace Workspace { get; set; }
+        public virtual ICollection<Structure> InverseParent { get; set; }
+        public virtual ICollection<Metadocument> Metadocuments { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/Structure.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Structure :  Entity<long>, IDao<long>
+    {
+    }
+}

+ 23 - 0
AppServer/Data/Entity/Tag.cs

@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Tag
+    {
+        // public long Id { get; set; }
+        public long WorkspaceId { get; set; }
+        public string Name { get; set; }
+        public string Rgb { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+        public long CreatedByUserId { get; set; }
+        public long? ModifiedByUserId { get; set; }
+
+        public virtual User CreatedByUser { get; set; }
+        public virtual User ModifiedByUser { get; set; }
+        public virtual Workspace Workspace { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/Tag.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Tag :  Entity<long>, IDao<long>
+    {
+    }
+}

+ 69 - 0
AppServer/Data/Entity/User.cs

@@ -0,0 +1,69 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class User
+    {
+        public User()
+        {
+            Artifacts = new HashSet<Artifact>();
+            BillingInfoCreatedByUsers = new HashSet<BillingInfo>();
+            BillingInfoModifiedByUsers = new HashSet<BillingInfo>();
+            BillingPlanCreatedByUsers = new HashSet<BillingPlan>();
+            BillingPlanModifiedByUsers = new HashSet<BillingPlan>();
+            InvoiceCreatedByUsers = new HashSet<Invoice>();
+            InvoiceIssuerCreatedByUsers = new HashSet<InvoiceIssuer>();
+            InvoiceIssuerModifiedByUsers = new HashSet<InvoiceIssuer>();
+            InvoiceItemCreatedByUsers = new HashSet<InvoiceItem>();
+            InvoiceItemModifiedByUsers = new HashSet<InvoiceItem>();
+            InvoiceModifiedByUsers = new HashSet<Invoice>();
+            MetadocumentCreatedByUsers = new HashSet<Metadocument>();
+            MetadocumentLastDownloadedByUsers = new HashSet<Metadocument>();
+            MetadocumentModifiedByUsers = new HashSet<Metadocument>();
+            MimeTypeCreatedByUsers = new HashSet<MimeType>();
+            MimeTypeModifiedByUsers = new HashSet<MimeType>();
+            StatusHistories = new HashSet<StatusHistory>();
+            TagCreatedByUsers = new HashSet<Tag>();
+            TagModifiedByUsers = new HashSet<Tag>();
+            WorkspaceCreatedByUsers = new HashSet<Workspace>();
+            WorkspaceModifiedByUsers = new HashSet<Workspace>();
+        }
+
+        // public long Id { get; set; }
+        public string Ifreference { get; set; }
+        public string Name { get; set; }
+        public DateTime? LastLogged { get; set; }
+        public DateTime? LastDisabled { get; set; }
+        public DateTime? LastEnabled { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+        public int LangLcid { get; set; }
+        public bool IsSystem { get; set; }
+        public bool IsEnabled { get; set; }
+
+        public virtual ICollection<Artifact> Artifacts { get; set; }
+        public virtual ICollection<BillingInfo> BillingInfoCreatedByUsers { get; set; }
+        public virtual ICollection<BillingInfo> BillingInfoModifiedByUsers { get; set; }
+        public virtual ICollection<BillingPlan> BillingPlanCreatedByUsers { get; set; }
+        public virtual ICollection<BillingPlan> BillingPlanModifiedByUsers { get; set; }
+        public virtual ICollection<Invoice> InvoiceCreatedByUsers { get; set; }
+        public virtual ICollection<InvoiceIssuer> InvoiceIssuerCreatedByUsers { get; set; }
+        public virtual ICollection<InvoiceIssuer> InvoiceIssuerModifiedByUsers { get; set; }
+        public virtual ICollection<InvoiceItem> InvoiceItemCreatedByUsers { get; set; }
+        public virtual ICollection<InvoiceItem> InvoiceItemModifiedByUsers { get; set; }
+        public virtual ICollection<Invoice> InvoiceModifiedByUsers { get; set; }
+        public virtual ICollection<Metadocument> MetadocumentCreatedByUsers { get; set; }
+        public virtual ICollection<Metadocument> MetadocumentLastDownloadedByUsers { get; set; }
+        public virtual ICollection<Metadocument> MetadocumentModifiedByUsers { get; set; }
+        public virtual ICollection<MimeType> MimeTypeCreatedByUsers { get; set; }
+        public virtual ICollection<MimeType> MimeTypeModifiedByUsers { get; set; }
+        public virtual ICollection<StatusHistory> StatusHistories { get; set; }
+        public virtual ICollection<Tag> TagCreatedByUsers { get; set; }
+        public virtual ICollection<Tag> TagModifiedByUsers { get; set; }
+        public virtual ICollection<Workspace> WorkspaceCreatedByUsers { get; set; }
+        public virtual ICollection<Workspace> WorkspaceModifiedByUsers { get; set; }
+    }
+}

+ 9 - 0
AppServer/Data/Entity/User.decl.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class User :  Entity<long>, IDao<long>
+    {
+    }
+}

+ 17 - 0
AppServer/Data/Entity/UserWorkspace.cs

@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class UserWorkspace
+    {
+        public long UserId { get; set; }
+        public long WorkspaceId { get; set; }
+        public bool IsDefault { get; set; }
+
+        public virtual User User { get; set; }
+        public virtual Workspace Workspace { get; set; }
+    }
+}

+ 38 - 0
AppServer/Data/Entity/Workspace.cs

@@ -0,0 +1,38 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Workspace
+    {
+        public Workspace()
+        {
+            BillingInfos = new HashSet<BillingInfo>();
+            Invoices = new HashSet<Invoice>();
+            Structures = new HashSet<Structure>();
+            Tags = new HashSet<Tag>();
+        }
+
+        // public long Id { get; set; }
+        public string Name { get; set; }
+        public long BillingInfoId { get; set; }
+        public long BillingPlanId { get; set; }
+        public Guid Apikey { get; set; }
+        public string Apipassword { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+        public long CreatedByUserId { get; set; }
+        public long? ModifiedByUserId { get; set; }
+        public bool IsGold { get; set; }
+
+        public virtual BillingInfo BillingInfo { get; set; }
+        public virtual User CreatedByUser { get; set; }
+        public virtual User ModifiedByUser { get; set; }
+        public virtual ICollection<BillingInfo> BillingInfos { get; set; }
+        public virtual ICollection<Invoice> Invoices { get; set; }
+        public virtual ICollection<Structure> Structures { get; set; }
+        public virtual ICollection<Tag> Tags { get; set; }
+    }
+}

+ 10 - 0
AppServer/Data/Entity/Workspace.decl.cs

@@ -0,0 +1,10 @@
+using Quadarax.Foundation.Core.Data.Entity;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class Workspace :  Entity<long>, IDao<long>
+
+    {
+    }
+}

+ 26 - 0
AppServer/Data/Entity/WorkspaceBilling.cs

@@ -0,0 +1,26 @@
+using System;
+using System.Collections.Generic;
+
+#nullable disable
+
+namespace BO.AppServer.Data.Entity
+{
+    public partial class WorkspaceBilling
+    {
+        public long WorkspaceId { get; set; }
+        public long BillingPlanId { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+        public decimal ValueNumber { get; set; }
+        public DateTime? ValueDate { get; set; }
+        public int CustomPstinitialCredits { get; set; }
+        public int CustomPstcreditsPerItem { get; set; }
+        public bool CustomPstwatermark { get; set; }
+        public int CustomPstquality { get; set; }
+        public string CustomPstprocessProfile { get; set; }
+        public bool CustomPsttest { get; set; }
+
+        public virtual BillingPlan BillingPlan { get; set; }
+        public virtual Workspace Workspace { get; set; }
+    }
+}

+ 42 - 0
AppServer/Data/KeyScalarDate.cs

@@ -0,0 +1,42 @@
+using System;
+
+namespace BO.AppServer.Data
+{
+    public class KeyScalarDate : IEquatable<KeyScalarDate>
+    {
+
+        public int Day { get; set; }
+        public int Month { get; set; }
+        public int Year { get; set; }
+
+        public bool Equals(KeyScalarDate other)
+        {
+            if (other == null)
+                return false;
+            return Day == other.Day && Year == other.Year && Month == other.Month;
+        }
+
+        public override bool Equals(object obj)
+        {
+            if (ReferenceEquals(null, obj)) return false;
+            if (ReferenceEquals(this, obj)) return true;
+            if (obj.GetType() != this.GetType()) return false;
+            return Equals((KeyScalarDate)obj);
+        }
+
+        public override int GetHashCode()
+        {
+            return (Day * Month * Year).GetHashCode();
+        }
+
+        public static bool operator ==(KeyScalarDate left, KeyScalarDate right)
+        {
+            return Equals(left, right);
+        }
+
+        public static bool operator !=(KeyScalarDate left, KeyScalarDate right)
+        {
+            return !Equals(left, right);
+        }
+    }
+}

+ 14 - 0
AppServer/Data/Repository/ArtifactRepo.cs

@@ -0,0 +1,14 @@
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+namespace BO.AppServer.Data.Repository
+{
+    public class ArtifactRepo : EntityRepository<long, Artifact>
+    {
+        public ArtifactRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+    }
+}

+ 11 - 0
AppServer/Data/Repository/BillingInfoRepo.cs

@@ -0,0 +1,11 @@
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+public class BillingInfoRepo : EntityRepository<long,  BillingInfo>
+    {
+        public BillingInfoRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+    }

+ 11 - 0
AppServer/Data/Repository/BillingPlanRepo.cs

@@ -0,0 +1,11 @@
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+public class BillingPlanRepo : EntityRepository<long,  BillingPlan>
+    {
+        public BillingPlanRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+    }

+ 11 - 0
AppServer/Data/Repository/InvoiceIssuerRepo.cs

@@ -0,0 +1,11 @@
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+public class InvoiceIssuerRepo : EntityRepository<long,  InvoiceIssuer>
+    {
+        public InvoiceIssuerRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+    }

+ 11 - 0
AppServer/Data/Repository/InvoiceItemRepo.cs

@@ -0,0 +1,11 @@
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+public class InvoiceItemRepo : EntityRepository<long,  InvoiceItem>
+    {
+        public InvoiceItemRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+    }

+ 11 - 0
AppServer/Data/Repository/InvoiceRepo.cs

@@ -0,0 +1,11 @@
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+public class InvoiceRepo : EntityRepository<long,  Invoice>
+    {
+        public InvoiceRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+    }

+ 11 - 0
AppServer/Data/Repository/MetadocumentRepo.cs

@@ -0,0 +1,11 @@
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+public class MetadocumentRepo : EntityRepository<long,  Metadocument>
+    {
+        public MetadocumentRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+    }

+ 11 - 0
AppServer/Data/Repository/MimeTypeRepo.cs

@@ -0,0 +1,11 @@
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+public class MimeTypeRepo : EntityRepository<long,  MimeType>
+    {
+        public MimeTypeRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+    }

+ 36 - 0
AppServer/Data/Repository/StatisticRepo.cs

@@ -0,0 +1,36 @@
+using System;
+using System.Linq;
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+namespace BO.AppServer.Data.Repository
+{
+    public class StatisticRepo : EntityRepository<long,  Statistic>
+    {
+        public StatisticRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+
+        public Statistic GetCurrent()
+        {
+            var timestamp = DateTime.Now;
+            var current = Query(Paging.NoPaging())
+                .FirstOrDefault(x => x.Day == timestamp.Day && x.Month == timestamp.Month && x.Year == timestamp.Year);
+            if (current != null)
+                return current;
+
+            current = New();
+            current.Day = timestamp.Day;
+            current.Month = timestamp.Month;
+            current.Year = timestamp.Year;
+            current.Created = DateTime.Now;
+            Set(current);
+            Commit();
+            return current;
+        }
+    }
+}
+

+ 11 - 0
AppServer/Data/Repository/StatusHistoryRepo.cs

@@ -0,0 +1,11 @@
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+public class StatusHistoryRepo : EntityRepository<long,  StatusHistory>
+    {
+        public StatusHistoryRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+    }

+ 11 - 0
AppServer/Data/Repository/StructureRepo.cs

@@ -0,0 +1,11 @@
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+public class StructureRepo : EntityRepository<long,  Structure>
+    {
+        public StructureRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+    }

+ 11 - 0
AppServer/Data/Repository/TagRepo.cs

@@ -0,0 +1,11 @@
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+public class TagRepo : EntityRepository<long,  Tag>
+    {
+        public TagRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+    }

+ 19 - 0
AppServer/Data/Repository/UserRepo.cs

@@ -0,0 +1,19 @@
+using System.Linq;
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+public class UserRepo : EntityRepository<long,  User>
+    {
+        public UserRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+
+        public User GetByIfReference(string ifReference)
+        {
+            return Query(new Paging()).FirstOrDefault(x => x.Ifreference == ifReference);
+        }
+       
+    }

+ 11 - 0
AppServer/Data/Repository/WorkspaceRepo.cs

@@ -0,0 +1,11 @@
+using BO.AppServer.Data.Entity;
+using Quadarax.Foundation.Core.Data.Domain;
+using Quadarax.Foundation.Core.Data.Interface.Domain;
+using Quadarax.Foundation.Core.Data.Repository;
+
+public class WorkspaceRepo : EntityRepository<long,  Workspace>
+    {
+        public WorkspaceRepo(IUnitOfWork<DataDomain> unitOfWork) : base(unitOfWork)
+        {
+        }
+    }

+ 10 - 0
AppServer/Data/readme.txt

@@ -0,0 +1,10 @@
+Upd: 2.8.2021
+
+To reverse update:
+- Set Data project as Startup Project
+- Ensure if solution is buildable - backup Entity folder
+- Open PM (Package Manager Console from View menu)
+- Run following command
+Scaffold-DbContext "Server=(local);Database=BO;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Entity -Force
+- Go to file BOContext.cs and replace class declaration as : public partial class BOContext : DataDomain
+- replace in all entities // public long Id { get; set; } -> // // public long Id { get; set; }

+ 50 - 0
AppServer/Metadata/Dto/ArtifactDto.cs

@@ -0,0 +1,50 @@
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    #region *** Artifact - Create ***
+
+    public class ArtifactBaseDto : BoDto
+    {
+    }
+
+    #endregion
+
+    #region *** Artifact - Create ***
+
+    internal class ArtifactCDto : BoDto, ICreateDto
+    {
+    }
+
+    #endregion
+
+    #region *** Artifact - Update ***
+
+    internal class ArtifactUDto : ArtifactBaseDto, IUpdateDto
+    {
+    }
+
+    #endregion
+
+    #region *** Artifact - Read ***
+
+    public class ArtifactRDto : ArtifactBaseDto, IReadDto
+    {
+        public BoAuditDto Audit { get; }        
+        public string Name { get; }
+        public string Extension { get; }
+        public string MimeType { get; }
+        public string MimeTypeDescription { get; }
+        public long Length { get; }
+    }
+
+    #endregion
+
+    #region *** Artifact - Delete ***
+
+    internal class ArtifactDDto : BoDto, IDeleteDto
+    {
+    }
+
+    #endregion
+}

+ 11 - 0
AppServer/Metadata/Dto/AssemblyInfoDto.cs

@@ -0,0 +1,11 @@
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    public class AssemblyInfoDto : IDto
+    {
+        public string Name { get; set; }
+        public string AssemblyVersion { get; set; }
+        public string FileVersion { get; set; }
+    }
+}

+ 11 - 0
AppServer/Metadata/Dto/AuthDto.cs

@@ -0,0 +1,11 @@
+using System.Text.Json.Serialization;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    public class AuthDto : BoDto, IReadDto
+    {
+        [JsonPropertyName("ticket")]
+        public string Ticket { get; set; }
+    }
+}

+ 57 - 0
AppServer/Metadata/Dto/BillingInfo.cs

@@ -0,0 +1,57 @@
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+
+    #region *** BillingInfo - Base ***
+
+    public abstract class BillingInfoBaseDto : BoDto
+    {
+        public string SubjectName { get; set; }
+        public string Address1 { get; set; }
+        public string Address2 { get; set; }
+        public string City { get; set; }
+        public string Zip { get; set; }
+        public string Country { get; set; }
+        public string TaxNumber { get; set; }
+        public string Vatnumber { get; set; }
+        public string Phone { get; set; }
+        public string Email { get; set; }
+        public bool IsPreffered { get; set; }
+    }
+
+    #endregion
+
+    #region *** Workspace - Create ***
+
+    public class BillingInfoCDto : BillingInfoBaseDto, ICreateDto
+    {
+    }
+
+    #endregion
+
+    #region *** Workspace - Update ***
+
+    public class BillingInfoUDto : BillingInfoBaseDto, IUpdateDto
+    {
+    }
+
+    #endregion
+
+    #region *** Workspace - Read ***
+
+    public class BillingInfoRDto : BillingInfoBaseDto, IReadDto
+    {
+        public BoAuditDto Audit { get; }
+    }
+
+    #endregion
+
+    #region *** Workspace - Delete ***
+
+    public class BillingInfoDDto : BoDto, IDeleteDto
+    {
+    }
+
+    #endregion
+}

+ 79 - 0
AppServer/Metadata/Dto/BillingPlanDto.cs

@@ -0,0 +1,79 @@
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    #region *** BillingPlan - Create ***
+
+    public class BillingPlanBaseDto : BoDto
+    {
+        public string Name { get; set; }
+        public string Code { get; set; }
+        public string Description { get; set; }
+        public int PstinitialCredits { get; set; }
+        public int PstcreditsPerItem { get; set; }
+        public bool Pstwatermark { get; set; }
+        public int Pstquality { get; set; }
+        public string PstprocessProfile { get; set; }
+        public bool Psttest { get; set; }
+        public decimal Price { get; set; }
+        public string Currency { get; set; }
+        public bool IsCustom { get; set; }
+        public bool IsHidden { get; set; }
+        public bool IsEnabled { get; set; }
+    }
+
+    #endregion
+
+    #region *** BillingPlan - Create ***
+
+    public class BillingPlanCDto : IDto, ICreateDto
+    {
+        public string Name { get; set; }
+        public string Code { get; set; }
+        public string Description { get; set; }
+        public int PstinitialCredits { get; set; }
+        public int PstcreditsPerItem { get; set; }
+        public bool Pstwatermark { get; set; }
+        public int Pstquality { get; set; }
+        public string PstprocessProfile { get; set; }
+        public bool Psttest { get; set; }
+        public decimal Price { get; set; }
+        public string Currency { get; set; }
+        public bool IsCustom { get; set; }
+        public bool IsHidden { get; set; }
+        public bool IsEnabled { get; set; }
+    }
+
+    #endregion
+
+    #region *** BillingPlan - Update ***
+
+    public class BillingPlanUDto : BillingPlanBaseDto, IUpdateDto
+    {
+    }
+
+    #endregion
+
+    #region *** BillingPlan - Read ***
+
+    public class BillingPlanRDto : BillingPlanBaseDto, IReadDto
+    {
+        public BoAuditDto Audit { get; }        
+        public string Name { get; }
+        public string Code { get; }
+        public string Description { get; }
+        public int PSTInitCredits { get; }
+        public decimal PSTPrize { get; }
+        public string PSTCurrency { get; }
+    }
+
+    #endregion
+
+    #region *** BillingPlan - Delete ***
+
+    internal class BillingPlanDDto : BoDto, IDeleteDto
+    {
+    }
+
+    #endregion
+}

+ 12 - 0
AppServer/Metadata/Dto/BoAuditDto.cs

@@ -0,0 +1,12 @@
+using System;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    public abstract class BoAuditDto : BoDto
+    {
+        public DateTime Created { get; }
+        public DateTime Changed { get; }
+        public string CreatedBy { get; }
+        public string ModifiedBy { get; }
+    }
+}

+ 11 - 0
AppServer/Metadata/Dto/BoDto.cs

@@ -0,0 +1,11 @@
+using System.Text.Json.Serialization;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    public abstract class BoDto : IDto
+    {
+        [JsonPropertyName("id")]
+        public long Id { get; set; }
+    }
+}

+ 60 - 0
AppServer/Metadata/Dto/DocumentDto.cs

@@ -0,0 +1,60 @@
+using System;
+using System.Collections.Generic;
+using BO.AppServer.Metadata.Enums;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    #region *** Document - Create ***
+
+    public class DocumentBaseDto : BoDto
+    {
+    }
+
+    #endregion
+
+    #region *** Document - Create ***
+
+    internal class DocumentCDto : BoDto, ICreateDto
+    {
+    }
+
+    #endregion
+
+    #region *** Document - Update ***
+
+    internal class DocumentUDto : DocumentBaseDto, IUpdateDto
+    {
+    }
+
+    #endregion
+
+    #region *** Document - Read ***
+
+    public class DocumentRDto : DocumentBaseDto, IReadDto
+    {
+        public string Name { get; }
+        public DateTime? LastDownloaded { get; }
+        public BoAuditDto Audit { get; }
+
+        public int PresetCreditCost { get; }
+        public bool PresetWatermark { get; }
+        public int PresetQuality { get; }
+        public string PresetProcessProfile { get; }
+        public bool PresetTest { get; }
+
+        public DocumentStatusEnum Status { get; }
+        public IEnumerable<ArtifactRDto> Artifacts { get; }
+        public IEnumerable<DocumentStatusHistoryRDto> History { get; }
+    }
+
+    #endregion
+
+    #region *** Document - Delete ***
+
+    internal class DocumentDDto : BoDto, IDeleteDto
+    {
+    }
+
+    #endregion
+}

+ 50 - 0
AppServer/Metadata/Dto/DocumentStatusHistoryDto.cs

@@ -0,0 +1,50 @@
+using System;
+using BO.AppServer.Metadata.Enums;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    #region *** DocumentStatusHistory - Create ***
+
+    public class DocumentStatusHistoryBaseDto : BoDto
+    {
+    }
+
+    #endregion
+
+    #region *** DocumentStatusHistory - Create ***
+
+    internal class DocumentStatusHistoryCDto : BoDto, ICreateDto
+    {
+    }
+
+    #endregion
+
+    #region *** DocumentStatusHistory - Update ***
+
+    internal class DocumentStatusHistoryUDto : DocumentStatusHistoryBaseDto, IUpdateDto
+    {
+    }
+
+    #endregion
+
+    #region *** DocumentStatusHistory - Read ***
+
+    public class DocumentStatusHistoryRDto : DocumentStatusHistoryBaseDto, IReadDto
+    {
+        public DocumentStatusEnum PreviousStatus { get; }
+        public string Message { get; }
+        public DateTime Created { get; }
+        public string CreatedBy { get; }
+    }
+
+    #endregion
+
+    #region *** DocumentStatusHistory - Delete ***
+
+    internal class DocumentStatusHistoryDDto : BoDto, IDeleteDto
+    {
+    }
+
+    #endregion
+}

+ 54 - 0
AppServer/Metadata/Dto/MimeTypeDto.cs

@@ -0,0 +1,54 @@
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    #region *** MimeType - Create ***
+
+    public class MimeTypeBaseDto : BoDto
+    {
+        public string Mimetype1 { get; set; }
+        public string Extensions { get; set; }
+        public string Description { get; set; }
+        public bool IsEnabled { get; set; }
+    }
+
+    #endregion
+
+    #region *** MimeType - Create ***
+
+    public class MimeTypeCDto : IDto, ICreateDto
+    {
+        public string Mimetype1 { get; set; }
+        public string Extensions { get; set; }
+        public string Description { get; set; }
+        public bool IsEnabled { get; set; }
+    }
+
+    #endregion
+
+    #region *** MimeType - Update ***
+
+    public class MimeTypeUDto : MimeTypeBaseDto, IUpdateDto
+    {
+    }
+
+    #endregion
+
+    #region *** MimeType - Read ***
+
+    public class MimeTypeRDto : MimeTypeBaseDto, IReadDto
+    {
+        public BoAuditDto Audit { get; }        
+       
+    }
+
+    #endregion
+
+    #region *** MimeType - Delete ***
+
+    internal class MimeTypeDDto : BoDto, IDeleteDto
+    {
+    }
+
+    #endregion
+}

+ 9 - 0
AppServer/Metadata/Dto/PingDto.cs

@@ -0,0 +1,9 @@
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    public class PingDto : IDto
+    {
+        public string Status { get; set; }
+    }
+}

+ 31 - 0
AppServer/Metadata/Dto/StatisticsDto.cs

@@ -0,0 +1,31 @@
+using System;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    public class StatisticsDto : IDto
+    {
+        public int Year { get; set; }
+        public int Month { get; set; }
+        public int Day { get; set; }
+        public int UserNewCnt { get; set; }
+        public int UserLoginCnt { get; set; }
+        public int UserLoginB2bcnt { get; set; }
+        public int UserTotalCnt { get; set; }
+        public int WorspaceNewCnt { get; set; }
+        public int WorspaceTotalCnt { get; set; }
+        public int InvoiceNewCnt { get; set; }
+        public int DocumentNewCnt { get; set; }
+        public int DocumentFailedCnt { get; set; }
+        public int DocumentDownloadedCnt { get; set; }
+        public int DocumentTotalCnt { get; set; }
+        public int DocumentProcessedCnt { get; set; }
+        public int PSActiveCnt { get; set; }
+        public decimal YieldWothSum { get; set; }
+        public string YieldWothCurrency { get; set; }
+        public decimal YieldWothTotalSum { get; set; }
+        public string YieldWothTotalCurrency { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+    }
+}

+ 55 - 0
AppServer/Metadata/Dto/UserDto.cs

@@ -0,0 +1,55 @@
+using System;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    #region *** User - Create ***
+    public class UserCDto : IDto, ICreateDto
+    {
+        public string Name { get; set; }
+        public string Password { get; set; }
+        public string Email { get; set; }
+
+        public int LangLcid { get; set; }
+        public string[] Roles { get; set; }
+    }
+    #endregion
+
+    #region *** User - Update ***
+    public class UserUDto : BoDto, IUpdateDto
+    {
+        public string Password { get; set; }
+        public string Email { get; set; }
+        public string[] Roles { get; set; }
+
+        public int LangLcid { get; set; }
+        public bool IsEnabled { get; set; }
+
+    }
+    #endregion
+
+    #region *** User - Read ***
+    public class UserRDto : BoDto, IReadDto
+    {
+        public string Name { get; set; }
+        public DateTime? LastLogged { get; set; }
+        public DateTime? LastDisabled { get; set; }
+        public DateTime? LastEnabled { get; set; }
+        public DateTime Created { get; set; }
+        public DateTime? Modified { get; set; }
+
+        public int LangLcid { get; set; }
+        public bool IsSystem { get; set; }
+        public bool IsEnabled { get; set; }
+        
+        public string[] Roles { get; set; }
+    }
+    #endregion
+
+    #region *** User - Delete ***
+    internal class UserDDto : BoDto, IDeleteDto
+    {
+    }
+    #endregion
+
+}

+ 55 - 0
AppServer/Metadata/Dto/WorkspaceDto.cs

@@ -0,0 +1,55 @@
+using System;
+using System.Collections.Generic;
+using Quadarax.Foundation.Core.Data.Interface.Entity;
+
+namespace BO.AppServer.Metadata.Dto
+{
+    #region *** Workspace - Create ***
+
+    public class WorkspaceBaseDto : BoDto
+    {
+        public string Name { get; set; }
+        public string Apipassword { get; set; }
+        public long BillingPlanId { get; set; }
+    }
+
+    #endregion
+
+    #region *** Workspace - Create ***
+
+    internal class WorkspaceCDto : BoDto, ICreateDto
+    {
+    }
+
+    #endregion
+
+    #region *** Workspace - Update ***
+
+    public class WorkspaceUDto : WorkspaceBaseDto, IUpdateDto
+    {
+    }
+
+    #endregion
+
+    #region *** Workspace - Read ***
+
+    public class WorkspaceRDto : WorkspaceBaseDto, IReadDto
+    {
+        public IEnumerable<BillingInfoRDto> BillingInfos { get; set; }
+        public string BillingPlanCode { get; set; }
+        public Guid Apikey { get; set; }
+        public long CreditAmount { get; set; }
+
+        public BoAuditDto Audit { get; }
+    }
+
+    #endregion
+
+    #region *** Workspace - Delete ***
+
+    internal class WorkspaceDDto : BoDto, IDeleteDto
+    {
+    }
+
+    #endregion
+}

+ 12 - 0
AppServer/Metadata/Enums/ArtifactTypeEnum.cs

@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace BO.AppServer.Metadata.Enums
+{
+    public enum ArtifactTypeEnum : int
+    {
+        Input = 0,
+        Output = 1
+    }
+}

Some files were not shown because too many files changed in this diff