diff --git a/src/Components/Root/RootComponent.ts b/src/Components/Root/RootComponent.ts
new file mode 100755
index 00000000..7ad70908
--- /dev/null
+++ b/src/Components/Root/RootComponent.ts
@@ -0,0 +1,8 @@
+import {Component} from '@angular/core';
+
+@Component({
+ selector: 'sf-root',
+ templateUrl: './RootComponent.html'
+})
+export class RootComponent {
+}
diff --git a/src/Components/index.ts b/src/Components/index.ts
new file mode 100755
index 00000000..b96bbb87
--- /dev/null
+++ b/src/Components/index.ts
@@ -0,0 +1,2 @@
+export {BreadcrumbsComponent} from './Breadcrumbs/BreadcrumbsComponent';
+export {RootComponent} from './Root/RootComponent';
diff --git a/src/Constants.ts b/src/Constants.ts
old mode 100644
new mode 100755
index 9241ff38..5ce1da07
--- a/src/Constants.ts
+++ b/src/Constants.ts
@@ -1,3 +1,8 @@
+import {IBuildingSchema} from '@src/Schema/IBuildingSchema';
+import {IItemSchema} from '@src/Schema/IItemSchema';
+import {IRecipeSchema} from '@src/Schema/IRecipeSchema';
+import {ISchematicSchema} from '@src/Schema/ISchematicSchema';
+
export class Constants
{
public static STACK_SIZE: { [key: string]: number } = {
@@ -24,7 +29,7 @@ export class Constants
public static WATER_CLASSNAME = 'Desc_Water_C';
public static NUCLEAR_WASTE_CLASSNAME = 'Desc_NuclearWaste_C';
public static NUCLEAR_FUEL_ROD_CLASSNAME = 'Desc_NuclearFuelRod_C';
- public static GEOTHERMAL_GENERATOR_CLASSNAME = 'Build_GeneratorGeoThermal_C';
+ public static GEOTHERMAL_GENERATOR_CLASSNAME = 'Desc_GeneratorGeoThermal_C';
public static RESOURCE_MULTIPLIER_IMPURE = 0.5;
public static RESOURCE_MULTIPLIER_NORMAL = 1;
@@ -47,3 +52,5 @@ export type PHYSICAL_STATE_LIQUID = 'liquid';
export type STACK_SIZES = STACK_SIZE_ONE|STACK_SIZE_SMALL|STACK_SIZE_MEDIUM|STACK_SIZE_BIG|STACK_SIZE_LARGE;
export type PHYSICAL_STATES = PHYSICAL_STATE_SOLID|PHYSICAL_STATE_LIQUID;
export type RESOURCE_PURITY = RESOURCE_PURITY_IMPURE|RESOURCE_PURITY_NORMAL|RESOURCE_PURITY_PURE;
+
+export type CODEX_TYPES = IItemSchema|IBuildingSchema|ISchematicSchema|IRecipeSchema;
diff --git a/src/Data/Data.ts b/src/Data/Data.ts
old mode 100644
new mode 100755
index 2b5a1cf5..851f3411
--- a/src/Data/Data.ts
+++ b/src/Data/Data.ts
@@ -44,6 +44,11 @@ export class Data
return rawData as any;
}
+ public getAllRecipes(): {[key: string]: IRecipeSchema}
+ {
+ return this.getRawData().recipes;
+ }
+
public getAllItems(): {[key: string]: IItemSchema}
{
return this.getRawData().items;
diff --git a/src/Data/Item.ts b/src/Data/Item.ts
old mode 100644
new mode 100755
diff --git a/src/Data/ItemAmount.ts b/src/Data/ItemAmount.ts
old mode 100644
new mode 100755
diff --git a/src/Data/Model.ts b/src/Data/Model.ts
old mode 100644
new mode 100755
diff --git a/src/Data/Recipe.ts b/src/Data/Recipe.ts
old mode 100644
new mode 100755
diff --git a/src/Formula.ts b/src/Formula.ts
old mode 100644
new mode 100755
diff --git a/src/Module/AppModule.ts b/src/Module/AppModule.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/ApplicationBreadcrumbsComponent.ts b/src/Module/Components/ApplicationBreadcrumbsComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/BuildingFilterComponent.ts b/src/Module/Components/BuildingFilterComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/BuildingFilterController.ts b/src/Module/Components/BuildingFilterController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/CodexComponent.ts b/src/Module/Components/CodexComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/CodexController.ts b/src/Module/Components/CodexController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/EntityListingComponent.ts b/src/Module/Components/EntityListingComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/ExtractorDetailsComponent.ts b/src/Module/Components/ExtractorDetailsComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/ExtractorDetailsComponentController.ts b/src/Module/Components/ExtractorDetailsComponentController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/ExtractorResourcesComponent.ts b/src/Module/Components/ExtractorResourcesComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/ExtractorResourcesComponentController.ts b/src/Module/Components/ExtractorResourcesComponentController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/GeneratorDetailsComponent.ts b/src/Module/Components/GeneratorDetailsComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/GeneratorDetailsComponentController.ts b/src/Module/Components/GeneratorDetailsComponentController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/GeneratorFuelsComponent.ts b/src/Module/Components/GeneratorFuelsComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/GeneratorFuelsComponentController.ts b/src/Module/Components/GeneratorFuelsComponentController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/ItemFilterComponent.ts b/src/Module/Components/ItemFilterComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/ItemFilterController.ts b/src/Module/Components/ItemFilterController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/ManufacturerDetailsComponent.ts b/src/Module/Components/ManufacturerDetailsComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/ManufacturerDetailsComponentController.ts b/src/Module/Components/ManufacturerDetailsComponentController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/ManufacturerRecipesComponent.ts b/src/Module/Components/ManufacturerRecipesComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/ManufacturerRecipesComponentController.ts b/src/Module/Components/ManufacturerRecipesComponentController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/OtherBuildingsDetailsComponent.ts b/src/Module/Components/OtherBuildingsDetailsComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/OtherBuildingsDetailsComponentController.ts b/src/Module/Components/OtherBuildingsDetailsComponentController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/RecipesTableComponent.ts b/src/Module/Components/RecipesTableComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/RecipesTableController.ts b/src/Module/Components/RecipesTableController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/SchematicFilterComponent.ts b/src/Module/Components/SchematicFilterComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/SchematicFilterController.ts b/src/Module/Components/SchematicFilterController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/VisualizationComponent.ts b/src/Module/Components/VisualizationComponent.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Components/VisualizationComponentController.ts b/src/Module/Components/VisualizationComponentController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Controllers/BuildingController.ts b/src/Module/Controllers/BuildingController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Controllers/HomeController.ts b/src/Module/Controllers/HomeController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Controllers/ItemController.ts b/src/Module/Controllers/ItemController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Controllers/ProductionController.ts b/src/Module/Controllers/ProductionController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Controllers/SchematicController.ts b/src/Module/Controllers/SchematicController.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Directives/AppDirective.ts b/src/Module/Directives/AppDirective.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Directives/ItemIconDirective.ts b/src/Module/Directives/ItemIconDirective.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Directives/LazyLoadDirective.ts b/src/Module/Directives/LazyLoadDirective.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Directives/PerfectScrollbarDirective.ts b/src/Module/Directives/PerfectScrollbarDirective.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Services/BuildingFiltersService.ts b/src/Module/Services/BuildingFiltersService.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Services/ComponentOptionsService.ts b/src/Module/Services/ComponentOptionsService.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Services/DataStorageService.ts b/src/Module/Services/DataStorageService.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Services/ItemFiltersService.ts b/src/Module/Services/ItemFiltersService.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Services/RecentlyVisitedItemsService.ts b/src/Module/Services/RecentlyVisitedItemsService.ts
old mode 100644
new mode 100755
diff --git a/src/Module/Services/SchematicFiltersService.ts b/src/Module/Services/SchematicFiltersService.ts
old mode 100644
new mode 100755
diff --git a/src/Modules/Calculator/CalculatorModule.ts b/src/Modules/Calculator/CalculatorModule.ts
new file mode 100755
index 00000000..0f636323
--- /dev/null
+++ b/src/Modules/Calculator/CalculatorModule.ts
@@ -0,0 +1,32 @@
+import {NgModule} from "@angular/core";
+import {SharedModule} from "@modules/Shared";
+import {NavigationModule} from "@modules/Navigation";
+import {RouterModule} from "@angular/router";
+import {navigation} from "@modules/Calculator/navigation";
+import {routes} from "@modules/Calculator/routes";
+import {
+ IndexComponent,
+ ProductionTabComponent,
+ SectionInputsComponent,
+ SectionProductionComponent
+} from "@modules/Calculator/Components";
+import {ProductionPersistentStorage} from "@modules/Calculator/Service/ProductionPersistentStorage";
+
+@NgModule({
+ declarations: [
+ IndexComponent,
+ ProductionTabComponent,
+ SectionProductionComponent,
+ SectionInputsComponent
+ ],
+ imports: [
+ SharedModule,
+ NavigationModule.forChild(navigation),
+ RouterModule.forChild(routes)
+ ],
+ providers: [
+ ProductionPersistentStorage
+ ]
+})
+export class CalculatorModule {
+}
diff --git a/src/Modules/Calculator/Components/Index/IndexComponent.html b/src/Modules/Calculator/Components/Index/IndexComponent.html
new file mode 100755
index 00000000..7f63a710
--- /dev/null
+++ b/src/Modules/Calculator/Components/Index/IndexComponent.html
@@ -0,0 +1,29 @@
+
Production
+
+ Each tab is a separate production line. You can have multiple
+ tabs and they will be automatically saved in your browser. You can also share them using the share button or
+ reorganize by dragging them.
+
+ Select items that you want to produce. You can choose between item per minute (will produce given amount from as low
+ amount of raw resources as possible) or maximize (will produce as much as possible, given the raw resource limits).
+
Special thanks to my testers: Caledorn, flo025, GenericGames, Gruffus, LilithKitsune, MagicCookie, pancakes, Pleasure, SLiPCoR, Soerili, Tom, Totalxclipse, VanStorm and 𝔅𝔯3𝔲𝔨𝔢𝔯 🎀 𝔍𝔢𝔫𝔦𝔣𝔣𝔢𝔯.
+
Also thanks to all the people that decided to support me financially and help me with covering the costs of running the server. If you're interested to help as well, you can check out
+ Paypal or Patreon links in the top right of the website.
+
You can also join my Discord server and chat about the tools and Satisfactory in general!
+
diff --git a/src/Modules/Home/Components/Index/IndexComponent.ts b/src/Modules/Home/Components/Index/IndexComponent.ts
new file mode 100755
index 00000000..e742140d
--- /dev/null
+++ b/src/Modules/Home/Components/Index/IndexComponent.ts
@@ -0,0 +1,9 @@
+import {Component} from '@angular/core';
+
+@Component({
+ selector: 'home-index',
+ templateUrl: './IndexComponent.html'
+})
+export class IndexComponent
+{
+}
diff --git a/src/Modules/Home/Components/index.ts b/src/Modules/Home/Components/index.ts
new file mode 100755
index 00000000..03e71283
--- /dev/null
+++ b/src/Modules/Home/Components/index.ts
@@ -0,0 +1 @@
+export {IndexComponent} from './Index/IndexComponent';
diff --git a/src/Modules/Home/HomeModule.ts b/src/Modules/Home/HomeModule.ts
new file mode 100755
index 00000000..4f7b6be3
--- /dev/null
+++ b/src/Modules/Home/HomeModule.ts
@@ -0,0 +1,21 @@
+import {NgModule} from '@angular/core';
+import {RouterModule} from '@angular/router';
+import {IndexComponent} from '@modules/Home/Components';
+import {navigation} from '@modules/Home/navigation';
+import {routes} from '@modules/Home/routes';
+import {NavigationModule} from '@modules/Navigation';
+import {SharedModule} from '@modules/Shared';
+
+@NgModule({
+ declarations: [
+ IndexComponent
+ ],
+ imports: [
+ SharedModule,
+ RouterModule.forChild(routes),
+ NavigationModule.forChild(navigation)
+ ]
+})
+export class HomeModule
+{
+}
diff --git a/src/Modules/Home/index.ts b/src/Modules/Home/index.ts
new file mode 100755
index 00000000..2d2d89a6
--- /dev/null
+++ b/src/Modules/Home/index.ts
@@ -0,0 +1 @@
+export {HomeModule} from './HomeModule';
diff --git a/src/Modules/Home/navigation.ts b/src/Modules/Home/navigation.ts
new file mode 100755
index 00000000..a838a08f
--- /dev/null
+++ b/src/Modules/Home/navigation.ts
@@ -0,0 +1,12 @@
+import {NavigationRoot} from '@modules/Navigation/Model/INavigationLink';
+
+export const navigation: NavigationRoot[] = [
+ {
+ label: 'Home',
+ icon: 'fas fa-fw fa-home',
+ path: '',
+ exact: true,
+ priority: 100,
+ slot: 'left'
+ }
+];
diff --git a/src/Modules/Home/routes.ts b/src/Modules/Home/routes.ts
new file mode 100755
index 00000000..dffac5f1
--- /dev/null
+++ b/src/Modules/Home/routes.ts
@@ -0,0 +1,12 @@
+import {Route} from '@angular/router';
+import {IndexComponent} from '@modules/Home/Components';
+
+export const routes: Route[] = [
+ {
+ path: '',
+ component: IndexComponent,
+ data: {
+ breadcrumbs: 'Satisfactory Tools'
+ }
+ }
+];
diff --git a/src/Modules/Navigation/Components/Navigation/NavigationComponent.html b/src/Modules/Navigation/Components/Navigation/NavigationComponent.html
new file mode 100755
index 00000000..d4def781
--- /dev/null
+++ b/src/Modules/Navigation/Components/Navigation/NavigationComponent.html
@@ -0,0 +1,84 @@
+
+
+
+
+
+
+
diff --git a/src/Modules/Shared/Components/Formly/RepeatType/RepeatTypeComponent.ts b/src/Modules/Shared/Components/Formly/RepeatType/RepeatTypeComponent.ts
new file mode 100755
index 00000000..9ffa7947
--- /dev/null
+++ b/src/Modules/Shared/Components/Formly/RepeatType/RepeatTypeComponent.ts
@@ -0,0 +1,21 @@
+import {Component} from "@angular/core";
+import {FieldArrayType} from "@ngx-formly/core";
+import {Objects} from "@utils/Objects";
+
+@Component({
+ selector: 'formly-repeat-section',
+ templateUrl: './RepeatTypeComponent.html'
+})
+export class RepeatTypeComponent extends FieldArrayType {
+ clone(i: number, markAsDirty: boolean = true): void {
+ this.add(this.model.length, Objects.deepCopy(this.model[i]), {markAsDirty: true});
+ }
+
+ clear(): void {
+ if (0 === this.model.length) {
+ return;
+ }
+ this.remove(0);
+ this.clear();
+ }
+}
diff --git a/src/Modules/Shared/Components/ItemIcon/ItemIconComponent.html b/src/Modules/Shared/Components/ItemIcon/ItemIconComponent.html
new file mode 100755
index 00000000..1374b858
--- /dev/null
+++ b/src/Modules/Shared/Components/ItemIcon/ItemIconComponent.html
@@ -0,0 +1,11 @@
+
+
+
+
+
+ {{ icon.name }}
+
+
+
+ {{ icon.name }}
+
diff --git a/src/Modules/Shared/Components/ItemIcon/ItemIconComponent.ts b/src/Modules/Shared/Components/ItemIcon/ItemIconComponent.ts
new file mode 100755
index 00000000..076fc3ae
--- /dev/null
+++ b/src/Modules/Shared/Components/ItemIcon/ItemIconComponent.ts
@@ -0,0 +1,80 @@
+import {Component, Input, OnChanges, SimpleChanges} from '@angular/core';
+import {Data} from '@src/Data/Data';
+import {IBuildingSchema} from '@src/Schema/IBuildingSchema';
+import {IItemSchema} from '@src/Schema/IItemSchema';
+import {BehaviorSubject, Observable, of} from 'rxjs';
+import {concatMap, filter, map, withLatestFrom} from 'rxjs/operators';
+
+interface ISelectableIcon
+{
+ address: string;
+ name: string;
+ size: number;
+ tooltip?: string;
+}
+
+type AcceptableType = IItemSchema|IBuildingSchema;
+
+@Component({
+ selector: 'sf-item-icon',
+ templateUrl: './ItemIconComponent.html'
+})
+export class ItemIconComponent implements OnChanges
+{
+ @Input() item: AcceptableType = null;
+ @Input() size: number = 64;
+ @Input() showTooltip: boolean = true;
+ @Input() showName: boolean = false;
+ icon$: Observable;
+ private readonly stack$: Observable;
+ private itemChange$ = new BehaviorSubject(this.item);
+
+ constructor()
+ {
+ const data = new Data();
+ this.stack$ = of(
+ []
+ .concat(Object.values(data.getAllBuildings()))
+ .concat(Object.values(data.getAllItems()))
+ .concat(data.getResources())
+ );
+ this.icon$ = this.itemChange$.pipe(
+ withLatestFrom(this.stack$),
+ map(([name, elements]) => {
+ return elements.map((element) => [name, element]);
+ }),
+ concatMap(x => x),
+ filter((element: [AcceptableType, AcceptableType]) => element[1].className === element[0].className),
+ map(e => {
+ return {
+ address: `/assets/images/items/${e[1].slug}_${this.getSize()}.png`,
+ name: e[1].name,
+ size: this.size,
+ tooltip: e[1].name
+ };
+ })
+ );
+ }
+
+ ngOnChanges(changes: SimpleChanges): void
+ {
+ if (!changes.item) {
+ return;
+ }
+
+ if (changes.item.previousValue === changes.item.currentValue) {
+ return;
+ }
+
+ this.itemChange$.next(changes.item.currentValue);
+ }
+
+ private getSize(): number
+ {
+ if (this.size <= 64) {
+ return 64;
+ }
+
+ return 256;
+ }
+}
diff --git a/src/Modules/Shared/Components/index.ts b/src/Modules/Shared/Components/index.ts
new file mode 100755
index 00000000..1e9ad021
--- /dev/null
+++ b/src/Modules/Shared/Components/index.ts
@@ -0,0 +1,4 @@
+export {ItemIconComponent} from './ItemIcon/ItemIconComponent';
+export {RepeatTypeComponent} from './Formly/RepeatType/RepeatTypeComponent';
+export {ItemSelectComponent} from './Formly/ItemSelect/ItemSelectComponent';
+export {ItemResourceMaxComponent} from './Formly/ItemResourceMax/ItemResourceMaxComponent';
diff --git a/src/Modules/Shared/Pipe/IsOverclockablePipe.ts b/src/Modules/Shared/Pipe/IsOverclockablePipe.ts
new file mode 100755
index 00000000..eebe5219
--- /dev/null
+++ b/src/Modules/Shared/Pipe/IsOverclockablePipe.ts
@@ -0,0 +1,29 @@
+import {Pipe, PipeTransform} from '@angular/core';
+import {DataService} from '@modules/Codex/Service';
+import {Constants} from '@src/Constants';
+import {Data} from '@src/Data/Data';
+import {IBuildingSchema} from '@src/Schema/IBuildingSchema';
+
+@Pipe({
+ name: 'IsOverclockable'
+})
+export class IsOverclockablePipe implements PipeTransform
+{
+ constructor(private dataService: DataService)
+ {
+ }
+
+ public transform(entity: IBuildingSchema, ...args: any[]): boolean
+ {
+ const data: Data = this.dataService.getData();
+ if (true === data.isManualManufacturer(entity)) {
+ return false;
+ }
+
+ if (true === data.isManufacturerBuilding(entity) || true === data.isExtractorBuilding(entity)) {
+ return true;
+ }
+
+ return true === data.isGeneratorBuilding(entity) && Constants.GEOTHERMAL_GENERATOR_CLASSNAME !== entity.className;
+ }
+}
diff --git a/src/Modules/Shared/Pipe/UcFirstPipe.ts b/src/Modules/Shared/Pipe/UcFirstPipe.ts
new file mode 100755
index 00000000..c22b118b
--- /dev/null
+++ b/src/Modules/Shared/Pipe/UcFirstPipe.ts
@@ -0,0 +1,12 @@
+import {Pipe, PipeTransform} from '@angular/core';
+
+@Pipe({
+ name: 'ucfirst'
+})
+export class UcFirstPipe implements PipeTransform
+{
+ public transform(value: string): string
+ {
+ return value.charAt(0).toUpperCase() + value.slice(1)
+ }
+}
diff --git a/src/Modules/Shared/SharedModule.ts b/src/Modules/Shared/SharedModule.ts
new file mode 100755
index 00000000..d1069e74
--- /dev/null
+++ b/src/Modules/Shared/SharedModule.ts
@@ -0,0 +1,81 @@
+import {CommonModule} from '@angular/common';
+import {HttpClientModule} from '@angular/common/http';
+import {NgModule} from '@angular/core';
+import {FlexLayoutModule} from '@angular/flex-layout';
+import {FormsModule, ReactiveFormsModule} from '@angular/forms';
+import {BrowserModule} from '@angular/platform-browser';
+import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
+import {
+ ItemIconComponent,
+ ItemResourceMaxComponent,
+ ItemSelectComponent,
+ RepeatTypeComponent
+} from '@modules/Shared/Components';
+import {IsOverclockablePipe} from '@modules/Shared/Pipe/IsOverclockablePipe';
+import {UcFirstPipe} from '@modules/Shared/Pipe/UcFirstPipe';
+import {CollapseModule} from 'ngx-bootstrap/collapse';
+import {BsDropdownModule} from 'ngx-bootstrap/dropdown';
+import {TooltipModule} from 'ngx-bootstrap/tooltip';
+import {FormlyModule} from "@ngx-formly/core";
+import {FormlyBootstrapModule} from "@ngx-formly/bootstrap";
+import {DropdownModule} from 'primeng/dropdown';
+import {NgxLocalStorageModule} from "ngx-localstorage";
+
+@NgModule({
+ declarations: [
+ ItemIconComponent,
+ IsOverclockablePipe,
+ ItemSelectComponent,
+ UcFirstPipe,
+ RepeatTypeComponent,
+ ItemResourceMaxComponent,
+ ],
+ imports: [
+ BrowserModule,
+ BrowserAnimationsModule,
+ HttpClientModule,
+ ReactiveFormsModule,
+ FormlyModule.forRoot({
+ types: [
+ {name: 'repeat', component: RepeatTypeComponent},
+ {name: 'item-select', component: ItemSelectComponent},
+ {name: 'resource-max', component: ItemResourceMaxComponent},
+ ]
+ }),
+ FormlyBootstrapModule,
+ CommonModule,
+ DropdownModule,
+ BsDropdownModule.forRoot(),
+ TooltipModule.forRoot(),
+ CollapseModule.forRoot(),
+ NgxLocalStorageModule.forRoot(),
+ FlexLayoutModule,
+ // PerfectScrollbarModule,
+ FormsModule,
+ ReactiveFormsModule
+ // LaddaModule
+ ],
+ exports: [
+ BrowserModule,
+ BrowserAnimationsModule,
+ HttpClientModule,
+ CommonModule,
+ BsDropdownModule,
+ TooltipModule,
+ CollapseModule,
+ NgxLocalStorageModule,
+ FlexLayoutModule,
+ // PerfectScrollbarModule,
+ FormsModule,
+ ReactiveFormsModule,
+ // LaddaModule
+ ItemIconComponent,
+ IsOverclockablePipe,
+ UcFirstPipe,
+ FormlyModule,
+ FormlyBootstrapModule
+ ]
+})
+export class SharedModule {
+
+}
diff --git a/src/Modules/Shared/index.ts b/src/Modules/Shared/index.ts
new file mode 100755
index 00000000..9e7cac7e
--- /dev/null
+++ b/src/Modules/Shared/index.ts
@@ -0,0 +1 @@
+export {SharedModule} from './SharedModule';
diff --git a/src/Schema/IBuildingMetadataSchema.ts b/src/Schema/IBuildingMetadataSchema.ts
old mode 100644
new mode 100755
diff --git a/src/Schema/IBuildingSchema.ts b/src/Schema/IBuildingSchema.ts
old mode 100644
new mode 100755
diff --git a/src/Schema/IColorSchema.ts b/src/Schema/IColorSchema.ts
old mode 100644
new mode 100755
diff --git a/src/Schema/IGeneratorSchema.ts b/src/Schema/IGeneratorSchema.ts
old mode 100644
new mode 100755
diff --git a/src/Schema/IItemAmountSchema.ts b/src/Schema/IItemAmountSchema.ts
old mode 100644
new mode 100755
diff --git a/src/Schema/IItemSchema.ts b/src/Schema/IItemSchema.ts
old mode 100644
new mode 100755
diff --git a/src/Schema/IJsonSchema.ts b/src/Schema/IJsonSchema.ts
old mode 100644
new mode 100755
diff --git a/src/Schema/IMinerSchema.ts b/src/Schema/IMinerSchema.ts
old mode 100644
new mode 100755
diff --git a/src/Schema/IRecipeSchema.ts b/src/Schema/IRecipeSchema.ts
old mode 100644
new mode 100755
diff --git a/src/Schema/IResourceSchema.ts b/src/Schema/IResourceSchema.ts
old mode 100644
new mode 100755
diff --git a/src/Schema/ISchematicSchema.ts b/src/Schema/ISchematicSchema.ts
old mode 100644
new mode 100755
diff --git a/src/Solver/IElkGraph.ts b/src/Solver/IElkGraph.ts
old mode 100644
new mode 100755
diff --git a/src/Solver/Solver.ts b/src/Solver/Solver.ts
old mode 100644
new mode 100755
diff --git a/src/Tools/Production/IMachinesResult.ts b/src/Tools/Production/IMachinesResult.ts
old mode 100644
new mode 100755
diff --git a/src/Tools/Production/IProductionToolRequest.ts b/src/Tools/Production/IProductionToolRequest.ts
old mode 100644
new mode 100755
diff --git a/src/Tools/Production/IProductionToolResponse.ts b/src/Tools/Production/IProductionToolResponse.ts
old mode 100644
new mode 100755
diff --git a/src/Tools/Production/ProductionRequestSchemaConverter.ts b/src/Tools/Production/ProductionRequestSchemaConverter.ts
old mode 100644
new mode 100755
diff --git a/src/Tools/Production/ProductionTab.ts b/src/Tools/Production/ProductionTab.ts
old mode 100644
new mode 100755
diff --git a/src/Tools/Production/ProductionTool.ts b/src/Tools/Production/ProductionTool.ts
old mode 100644
new mode 100755
diff --git a/src/Tools/Production/ProductionToolResult.ts b/src/Tools/Production/ProductionToolResult.ts
old mode 100644
new mode 100755
diff --git a/src/Tools/Production/RecipeResult.ts b/src/Tools/Production/RecipeResult.ts
old mode 100644
new mode 100755
diff --git a/src/Tools/Production/ResultStatus.ts b/src/Tools/Production/ResultStatus.ts
old mode 100644
new mode 100755
diff --git a/src/Types/BuildingTypes.ts b/src/Types/BuildingTypes.ts
old mode 100644
new mode 100755
diff --git a/src/Types/IAppStateProvider.ts b/src/Types/IAppStateProvider.ts
old mode 100644
new mode 100755
diff --git a/src/Types/IBuildingFilterSet.ts b/src/Types/IBuildingFilterSet.ts
old mode 100644
new mode 100755
diff --git a/src/Types/IDataProvider.ts b/src/Types/IDataProvider.ts
new file mode 100755
index 00000000..03e13321
--- /dev/null
+++ b/src/Types/IDataProvider.ts
@@ -0,0 +1,7 @@
+import {CODEX_TYPES} from '@src/Constants';
+import {Observable} from 'rxjs';
+
+export interface IDataProvider
+{
+ getAll(): Observable;
+}
diff --git a/src/Types/IFilterService.ts b/src/Types/IFilterService.ts
old mode 100644
new mode 100755
diff --git a/src/Types/IItemFilterSet.ts b/src/Types/IItemFilterSet.ts
old mode 100644
new mode 100755
diff --git a/src/Types/ISchematicFilterSet.ts b/src/Types/ISchematicFilterSet.ts
old mode 100644
new mode 100755
diff --git a/src/Types/ITransitionObject.ts b/src/Types/ITransitionObject.ts
old mode 100644
new mode 100755
diff --git a/src/Utils/Arrays.ts b/src/Utils/Arrays.ts
old mode 100644
new mode 100755
diff --git a/src/Utils/Callbacks.ts b/src/Utils/Callbacks.ts
old mode 100644
new mode 100755
diff --git a/src/Utils/DiffGenerator/DiffFormatter.ts b/src/Utils/DiffGenerator/DiffFormatter.ts
old mode 100644
new mode 100755
diff --git a/src/Utils/DiffGenerator/DiffGenerator.ts b/src/Utils/DiffGenerator/DiffGenerator.ts
old mode 100644
new mode 100755
diff --git a/src/Utils/DiffGenerator/IDiffSchema.ts b/src/Utils/DiffGenerator/IDiffSchema.ts
old mode 100644
new mode 100755
diff --git a/src/Utils/Objects.ts b/src/Utils/Objects.ts
old mode 100644
new mode 100755
index f6777f23..0370b436
--- a/src/Utils/Objects.ts
+++ b/src/Utils/Objects.ts
@@ -1,18 +1,18 @@
-export class Objects
-{
+export class Objects {
- public static isObject(object: any): boolean
- {
+ public static isObject(object: any): boolean {
return typeof object === 'object' && object !== null;
}
- public static sortByKeys(object: {[key: string]: any}): {[key: string]: any}
- {
- const sorted: {[key: string]: any} = {};
+ public static sortByKeys(object: { [key: string]: any }): { [key: string]: any } {
+ const sorted: { [key: string]: any } = {};
Object.keys(object).sort().forEach((key: string) => {
sorted[key] = object[key];
});
return sorted;
}
+ public static deepCopy(entry: any): any {
+ return JSON.parse(JSON.stringify(entry));
+ }
}
diff --git a/src/Utils/Sort.ts b/src/Utils/Sort.ts
new file mode 100755
index 00000000..a3df400d
--- /dev/null
+++ b/src/Utils/Sort.ts
@@ -0,0 +1,9 @@
+interface ISortable {
+ slug: string;
+}
+
+export class Sort {
+ public static sortBySlug(a: ISortable, b: ISortable): number {
+ return a.slug > b.slug ? 1 : -1;
+ }
+}
diff --git a/src/Utils/Strings.ts b/src/Utils/Strings.ts
old mode 100644
new mode 100755
diff --git a/src/Utils/TrackBy.ts b/src/Utils/TrackBy.ts
new file mode 100755
index 00000000..d02d4d64
--- /dev/null
+++ b/src/Utils/TrackBy.ts
@@ -0,0 +1,19 @@
+import {IItemAmountSchema} from '@src/Schema/IItemAmountSchema';
+
+interface IClassName {
+ className: string;
+}
+
+export class TrackBy {
+ public static byClassName(index: number, item: IClassName): string {
+ return item.className;
+ }
+
+ public static byItemAmountSchema(index: number, value: IItemAmountSchema): string{
+ return value.item;
+ }
+
+ public static byString(index: number, value: string): string {
+ return value;
+ }
+}
diff --git a/src/app.ts b/src/app.ts
old mode 100644
new mode 100755
diff --git a/www/assets/images/icons/android-chrome-192x192.png b/src/assets/images/icons/android-chrome-192x192.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/icons/android-chrome-192x192.png
rename to src/assets/images/icons/android-chrome-192x192.png
diff --git a/www/assets/images/icons/android-chrome-512x512.png b/src/assets/images/icons/android-chrome-512x512.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/icons/android-chrome-512x512.png
rename to src/assets/images/icons/android-chrome-512x512.png
diff --git a/www/assets/images/icons/apple-touch-icon.png b/src/assets/images/icons/apple-touch-icon.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/icons/apple-touch-icon.png
rename to src/assets/images/icons/apple-touch-icon.png
diff --git a/www/assets/images/icons/browserconfig.xml b/src/assets/images/icons/browserconfig.xml
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/icons/browserconfig.xml
rename to src/assets/images/icons/browserconfig.xml
diff --git a/www/assets/images/icons/favicon-16x16.png b/src/assets/images/icons/favicon-16x16.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/icons/favicon-16x16.png
rename to src/assets/images/icons/favicon-16x16.png
diff --git a/www/assets/images/icons/favicon-32x32.png b/src/assets/images/icons/favicon-32x32.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/icons/favicon-32x32.png
rename to src/assets/images/icons/favicon-32x32.png
diff --git a/www/assets/images/icons/favicon.ico b/src/assets/images/icons/favicon.ico
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/icons/favicon.ico
rename to src/assets/images/icons/favicon.ico
diff --git a/www/assets/images/icons/mstile-150x150.png b/src/assets/images/icons/mstile-150x150.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/icons/mstile-150x150.png
rename to src/assets/images/icons/mstile-150x150.png
diff --git a/www/assets/images/icons/safari-pinned-tab.svg b/src/assets/images/icons/safari-pinned-tab.svg
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/icons/safari-pinned-tab.svg
rename to src/assets/images/icons/safari-pinned-tab.svg
diff --git a/www/assets/images/icons/site.webmanifest b/src/assets/images/icons/site.webmanifest
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/icons/site.webmanifest
rename to src/assets/images/icons/site.webmanifest
diff --git a/www/assets/images/items/a-i-limiter_256.png b/src/assets/images/items/a-i-limiter_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/a-i-limiter_256.png
rename to src/assets/images/items/a-i-limiter_256.png
diff --git a/www/assets/images/items/a-i-limiter_64.png b/src/assets/images/items/a-i-limiter_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/a-i-limiter_64.png
rename to src/assets/images/items/a-i-limiter_64.png
diff --git a/www/assets/images/items/adaptive-control-unit_256.png b/src/assets/images/items/adaptive-control-unit_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/adaptive-control-unit_256.png
rename to src/assets/images/items/adaptive-control-unit_256.png
diff --git a/www/assets/images/items/adaptive-control-unit_64.png b/src/assets/images/items/adaptive-control-unit_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/adaptive-control-unit_64.png
rename to src/assets/images/items/adaptive-control-unit_64.png
diff --git a/www/assets/images/items/alclad-aluminum-sheet_256.png b/src/assets/images/items/alclad-aluminum-sheet_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/alclad-aluminum-sheet_256.png
rename to src/assets/images/items/alclad-aluminum-sheet_256.png
diff --git a/www/assets/images/items/alclad-aluminum-sheet_64.png b/src/assets/images/items/alclad-aluminum-sheet_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/alclad-aluminum-sheet_64.png
rename to src/assets/images/items/alclad-aluminum-sheet_64.png
diff --git a/www/assets/images/items/alien-carapace_256.png b/src/assets/images/items/alien-carapace_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/alien-carapace_256.png
rename to src/assets/images/items/alien-carapace_256.png
diff --git a/www/assets/images/items/alien-carapace_64.png b/src/assets/images/items/alien-carapace_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/alien-carapace_64.png
rename to src/assets/images/items/alien-carapace_64.png
diff --git a/www/assets/images/items/alien-organs_256.png b/src/assets/images/items/alien-organs_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/alien-organs_256.png
rename to src/assets/images/items/alien-organs_256.png
diff --git a/www/assets/images/items/alien-organs_64.png b/src/assets/images/items/alien-organs_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/alien-organs_64.png
rename to src/assets/images/items/alien-organs_64.png
diff --git a/www/assets/images/items/alumina-solution_256.png b/src/assets/images/items/alumina-solution_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/alumina-solution_256.png
rename to src/assets/images/items/alumina-solution_256.png
diff --git a/www/assets/images/items/alumina-solution_64.png b/src/assets/images/items/alumina-solution_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/alumina-solution_64.png
rename to src/assets/images/items/alumina-solution_64.png
diff --git a/www/assets/images/items/aluminum-ingot_256.png b/src/assets/images/items/aluminum-ingot_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/aluminum-ingot_256.png
rename to src/assets/images/items/aluminum-ingot_256.png
diff --git a/www/assets/images/items/aluminum-ingot_64.png b/src/assets/images/items/aluminum-ingot_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/aluminum-ingot_64.png
rename to src/assets/images/items/aluminum-ingot_64.png
diff --git a/www/assets/images/items/aluminum-scrap_256.png b/src/assets/images/items/aluminum-scrap_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/aluminum-scrap_256.png
rename to src/assets/images/items/aluminum-scrap_256.png
diff --git a/www/assets/images/items/aluminum-scrap_64.png b/src/assets/images/items/aluminum-scrap_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/aluminum-scrap_64.png
rename to src/assets/images/items/aluminum-scrap_64.png
diff --git a/www/assets/images/items/assembler_256.png b/src/assets/images/items/assembler_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/assembler_256.png
rename to src/assets/images/items/assembler_256.png
diff --git a/www/assets/images/items/assembler_64.png b/src/assets/images/items/assembler_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/assembler_64.png
rename to src/assets/images/items/assembler_64.png
diff --git a/www/assets/images/items/automated-wiring_256.png b/src/assets/images/items/automated-wiring_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/automated-wiring_256.png
rename to src/assets/images/items/automated-wiring_256.png
diff --git a/www/assets/images/items/automated-wiring_64.png b/src/assets/images/items/automated-wiring_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/automated-wiring_64.png
rename to src/assets/images/items/automated-wiring_64.png
diff --git a/www/assets/images/items/awesome-shop_256.png b/src/assets/images/items/awesome-shop_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/awesome-shop_256.png
rename to src/assets/images/items/awesome-shop_256.png
diff --git a/www/assets/images/items/awesome-shop_64.png b/src/assets/images/items/awesome-shop_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/awesome-shop_64.png
rename to src/assets/images/items/awesome-shop_64.png
diff --git a/www/assets/images/items/awesome-sink_256.png b/src/assets/images/items/awesome-sink_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/awesome-sink_256.png
rename to src/assets/images/items/awesome-sink_256.png
diff --git a/www/assets/images/items/awesome-sink_64.png b/src/assets/images/items/awesome-sink_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/awesome-sink_64.png
rename to src/assets/images/items/awesome-sink_64.png
diff --git a/www/assets/images/items/bacon-agaric_256.png b/src/assets/images/items/bacon-agaric_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/bacon-agaric_256.png
rename to src/assets/images/items/bacon-agaric_256.png
diff --git a/www/assets/images/items/bacon-agaric_64.png b/src/assets/images/items/bacon-agaric_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/bacon-agaric_64.png
rename to src/assets/images/items/bacon-agaric_64.png
diff --git a/www/assets/images/items/battery_256.png b/src/assets/images/items/battery_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/battery_256.png
rename to src/assets/images/items/battery_256.png
diff --git a/www/assets/images/items/battery_64.png b/src/assets/images/items/battery_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/battery_64.png
rename to src/assets/images/items/battery_64.png
diff --git a/www/assets/images/items/bauxite_256.png b/src/assets/images/items/bauxite_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/bauxite_256.png
rename to src/assets/images/items/bauxite_256.png
diff --git a/www/assets/images/items/bauxite_64.png b/src/assets/images/items/bauxite_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/bauxite_64.png
rename to src/assets/images/items/bauxite_64.png
diff --git a/www/assets/images/items/beacon_256.png b/src/assets/images/items/beacon_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/beacon_256.png
rename to src/assets/images/items/beacon_256.png
diff --git a/www/assets/images/items/beacon_64.png b/src/assets/images/items/beacon_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/beacon_64.png
rename to src/assets/images/items/beacon_64.png
diff --git a/www/assets/images/items/beryl-nut_256.png b/src/assets/images/items/beryl-nut_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/beryl-nut_256.png
rename to src/assets/images/items/beryl-nut_256.png
diff --git a/www/assets/images/items/beryl-nut_64.png b/src/assets/images/items/beryl-nut_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/beryl-nut_64.png
rename to src/assets/images/items/beryl-nut_64.png
diff --git a/www/assets/images/items/biomass-burner_256.png b/src/assets/images/items/biomass-burner_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/biomass-burner_256.png
rename to src/assets/images/items/biomass-burner_256.png
diff --git a/www/assets/images/items/biomass-burner_64.png b/src/assets/images/items/biomass-burner_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/biomass-burner_64.png
rename to src/assets/images/items/biomass-burner_64.png
diff --git a/www/assets/images/items/biomass_256.png b/src/assets/images/items/biomass_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/biomass_256.png
rename to src/assets/images/items/biomass_256.png
diff --git a/www/assets/images/items/biomass_64.png b/src/assets/images/items/biomass_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/biomass_64.png
rename to src/assets/images/items/biomass_64.png
diff --git a/www/assets/images/items/black-powder_256.png b/src/assets/images/items/black-powder_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/black-powder_256.png
rename to src/assets/images/items/black-powder_256.png
diff --git a/www/assets/images/items/black-powder_64.png b/src/assets/images/items/black-powder_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/black-powder_64.png
rename to src/assets/images/items/black-powder_64.png
diff --git a/www/assets/images/items/blade-runners_256.png b/src/assets/images/items/blade-runners_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/blade-runners_256.png
rename to src/assets/images/items/blade-runners_256.png
diff --git a/www/assets/images/items/blade-runners_64.png b/src/assets/images/items/blade-runners_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/blade-runners_64.png
rename to src/assets/images/items/blade-runners_64.png
diff --git a/www/assets/images/items/cable_256.png b/src/assets/images/items/cable_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/cable_256.png
rename to src/assets/images/items/cable_256.png
diff --git a/www/assets/images/items/cable_64.png b/src/assets/images/items/cable_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/cable_64.png
rename to src/assets/images/items/cable_64.png
diff --git a/www/assets/images/items/caterium-ingot_256.png b/src/assets/images/items/caterium-ingot_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/caterium-ingot_256.png
rename to src/assets/images/items/caterium-ingot_256.png
diff --git a/www/assets/images/items/caterium-ingot_64.png b/src/assets/images/items/caterium-ingot_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/caterium-ingot_64.png
rename to src/assets/images/items/caterium-ingot_64.png
diff --git a/www/assets/images/items/caterium-ore_256.png b/src/assets/images/items/caterium-ore_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/caterium-ore_256.png
rename to src/assets/images/items/caterium-ore_256.png
diff --git a/www/assets/images/items/caterium-ore_64.png b/src/assets/images/items/caterium-ore_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/caterium-ore_64.png
rename to src/assets/images/items/caterium-ore_64.png
diff --git a/www/assets/images/items/center-door-wall-steel_256.png b/src/assets/images/items/center-door-wall-steel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/center-door-wall-steel_256.png
rename to src/assets/images/items/center-door-wall-steel_256.png
diff --git a/www/assets/images/items/center-door-wall-steel_64.png b/src/assets/images/items/center-door-wall-steel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/center-door-wall-steel_64.png
rename to src/assets/images/items/center-door-wall-steel_64.png
diff --git a/www/assets/images/items/center-door-wall_256.png b/src/assets/images/items/center-door-wall_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/center-door-wall_256.png
rename to src/assets/images/items/center-door-wall_256.png
diff --git a/www/assets/images/items/center-door-wall_64.png b/src/assets/images/items/center-door-wall_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/center-door-wall_64.png
rename to src/assets/images/items/center-door-wall_64.png
diff --git a/www/assets/images/items/chainsaw_256.png b/src/assets/images/items/chainsaw_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/chainsaw_256.png
rename to src/assets/images/items/chainsaw_256.png
diff --git a/www/assets/images/items/chainsaw_64.png b/src/assets/images/items/chainsaw_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/chainsaw_64.png
rename to src/assets/images/items/chainsaw_64.png
diff --git a/www/assets/images/items/circuit-board_256.png b/src/assets/images/items/circuit-board_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/circuit-board_256.png
rename to src/assets/images/items/circuit-board_256.png
diff --git a/www/assets/images/items/circuit-board_64.png b/src/assets/images/items/circuit-board_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/circuit-board_64.png
rename to src/assets/images/items/circuit-board_64.png
diff --git a/www/assets/images/items/coal-generator_256.png b/src/assets/images/items/coal-generator_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/coal-generator_256.png
rename to src/assets/images/items/coal-generator_256.png
diff --git a/www/assets/images/items/coal-generator_64.png b/src/assets/images/items/coal-generator_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/coal-generator_64.png
rename to src/assets/images/items/coal-generator_64.png
diff --git a/www/assets/images/items/coal_256.png b/src/assets/images/items/coal_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/coal_256.png
rename to src/assets/images/items/coal_256.png
diff --git a/www/assets/images/items/coal_64.png b/src/assets/images/items/coal_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/coal_64.png
rename to src/assets/images/items/coal_64.png
diff --git a/www/assets/images/items/color-cartridge_256.png b/src/assets/images/items/color-cartridge_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/color-cartridge_256.png
rename to src/assets/images/items/color-cartridge_256.png
diff --git a/www/assets/images/items/color-cartridge_64.png b/src/assets/images/items/color-cartridge_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/color-cartridge_64.png
rename to src/assets/images/items/color-cartridge_64.png
diff --git a/www/assets/images/items/color-gun_256.png b/src/assets/images/items/color-gun_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/color-gun_256.png
rename to src/assets/images/items/color-gun_256.png
diff --git a/www/assets/images/items/color-gun_64.png b/src/assets/images/items/color-gun_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/color-gun_64.png
rename to src/assets/images/items/color-gun_64.png
diff --git a/www/assets/images/items/compacted-coal_256.png b/src/assets/images/items/compacted-coal_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/compacted-coal_256.png
rename to src/assets/images/items/compacted-coal_256.png
diff --git a/www/assets/images/items/compacted-coal_64.png b/src/assets/images/items/compacted-coal_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/compacted-coal_64.png
rename to src/assets/images/items/compacted-coal_64.png
diff --git a/www/assets/images/items/computer_256.png b/src/assets/images/items/computer_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/computer_256.png
rename to src/assets/images/items/computer_256.png
diff --git a/www/assets/images/items/computer_64.png b/src/assets/images/items/computer_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/computer_64.png
rename to src/assets/images/items/computer_64.png
diff --git a/www/assets/images/items/concrete_256.png b/src/assets/images/items/concrete_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/concrete_256.png
rename to src/assets/images/items/concrete_256.png
diff --git a/www/assets/images/items/concrete_64.png b/src/assets/images/items/concrete_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/concrete_64.png
rename to src/assets/images/items/concrete_64.png
diff --git a/www/assets/images/items/constructor_256.png b/src/assets/images/items/constructor_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/constructor_256.png
rename to src/assets/images/items/constructor_256.png
diff --git a/www/assets/images/items/constructor_64.png b/src/assets/images/items/constructor_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/constructor_64.png
rename to src/assets/images/items/constructor_64.png
diff --git a/www/assets/images/items/conveyor-belt-mk-1_256.png b/src/assets/images/items/conveyor-belt-mk-1_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-belt-mk-1_256.png
rename to src/assets/images/items/conveyor-belt-mk-1_256.png
diff --git a/www/assets/images/items/conveyor-belt-mk-1_64.png b/src/assets/images/items/conveyor-belt-mk-1_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-belt-mk-1_64.png
rename to src/assets/images/items/conveyor-belt-mk-1_64.png
diff --git a/www/assets/images/items/conveyor-belt-mk-2_256.png b/src/assets/images/items/conveyor-belt-mk-2_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-belt-mk-2_256.png
rename to src/assets/images/items/conveyor-belt-mk-2_256.png
diff --git a/www/assets/images/items/conveyor-belt-mk-2_64.png b/src/assets/images/items/conveyor-belt-mk-2_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-belt-mk-2_64.png
rename to src/assets/images/items/conveyor-belt-mk-2_64.png
diff --git a/www/assets/images/items/conveyor-belt-mk-3_256.png b/src/assets/images/items/conveyor-belt-mk-3_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-belt-mk-3_256.png
rename to src/assets/images/items/conveyor-belt-mk-3_256.png
diff --git a/www/assets/images/items/conveyor-belt-mk-3_64.png b/src/assets/images/items/conveyor-belt-mk-3_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-belt-mk-3_64.png
rename to src/assets/images/items/conveyor-belt-mk-3_64.png
diff --git a/www/assets/images/items/conveyor-belt-mk-4_256.png b/src/assets/images/items/conveyor-belt-mk-4_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-belt-mk-4_256.png
rename to src/assets/images/items/conveyor-belt-mk-4_256.png
diff --git a/www/assets/images/items/conveyor-belt-mk-4_64.png b/src/assets/images/items/conveyor-belt-mk-4_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-belt-mk-4_64.png
rename to src/assets/images/items/conveyor-belt-mk-4_64.png
diff --git a/www/assets/images/items/conveyor-belt-mk-5_256.png b/src/assets/images/items/conveyor-belt-mk-5_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-belt-mk-5_256.png
rename to src/assets/images/items/conveyor-belt-mk-5_256.png
diff --git a/www/assets/images/items/conveyor-belt-mk-5_64.png b/src/assets/images/items/conveyor-belt-mk-5_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-belt-mk-5_64.png
rename to src/assets/images/items/conveyor-belt-mk-5_64.png
diff --git a/www/assets/images/items/conveyor-lift-mk-1_256.png b/src/assets/images/items/conveyor-lift-mk-1_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-lift-mk-1_256.png
rename to src/assets/images/items/conveyor-lift-mk-1_256.png
diff --git a/www/assets/images/items/conveyor-lift-mk-1_64.png b/src/assets/images/items/conveyor-lift-mk-1_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-lift-mk-1_64.png
rename to src/assets/images/items/conveyor-lift-mk-1_64.png
diff --git a/www/assets/images/items/conveyor-lift-mk-2_256.png b/src/assets/images/items/conveyor-lift-mk-2_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-lift-mk-2_256.png
rename to src/assets/images/items/conveyor-lift-mk-2_256.png
diff --git a/www/assets/images/items/conveyor-lift-mk-2_64.png b/src/assets/images/items/conveyor-lift-mk-2_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-lift-mk-2_64.png
rename to src/assets/images/items/conveyor-lift-mk-2_64.png
diff --git a/www/assets/images/items/conveyor-lift-mk-3_256.png b/src/assets/images/items/conveyor-lift-mk-3_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-lift-mk-3_256.png
rename to src/assets/images/items/conveyor-lift-mk-3_256.png
diff --git a/www/assets/images/items/conveyor-lift-mk-3_64.png b/src/assets/images/items/conveyor-lift-mk-3_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-lift-mk-3_64.png
rename to src/assets/images/items/conveyor-lift-mk-3_64.png
diff --git a/www/assets/images/items/conveyor-lift-mk-4_256.png b/src/assets/images/items/conveyor-lift-mk-4_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-lift-mk-4_256.png
rename to src/assets/images/items/conveyor-lift-mk-4_256.png
diff --git a/www/assets/images/items/conveyor-lift-mk-4_64.png b/src/assets/images/items/conveyor-lift-mk-4_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-lift-mk-4_64.png
rename to src/assets/images/items/conveyor-lift-mk-4_64.png
diff --git a/www/assets/images/items/conveyor-lift-mk-5_256.png b/src/assets/images/items/conveyor-lift-mk-5_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-lift-mk-5_256.png
rename to src/assets/images/items/conveyor-lift-mk-5_256.png
diff --git a/www/assets/images/items/conveyor-lift-mk-5_64.png b/src/assets/images/items/conveyor-lift-mk-5_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-lift-mk-5_64.png
rename to src/assets/images/items/conveyor-lift-mk-5_64.png
diff --git a/www/assets/images/items/conveyor-merger_256.png b/src/assets/images/items/conveyor-merger_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-merger_256.png
rename to src/assets/images/items/conveyor-merger_256.png
diff --git a/www/assets/images/items/conveyor-merger_64.png b/src/assets/images/items/conveyor-merger_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-merger_64.png
rename to src/assets/images/items/conveyor-merger_64.png
diff --git a/www/assets/images/items/conveyor-pole_256.png b/src/assets/images/items/conveyor-pole_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-pole_256.png
rename to src/assets/images/items/conveyor-pole_256.png
diff --git a/www/assets/images/items/conveyor-pole_64.png b/src/assets/images/items/conveyor-pole_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-pole_64.png
rename to src/assets/images/items/conveyor-pole_64.png
diff --git a/www/assets/images/items/conveyor-splitter_256.png b/src/assets/images/items/conveyor-splitter_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-splitter_256.png
rename to src/assets/images/items/conveyor-splitter_256.png
diff --git a/www/assets/images/items/conveyor-splitter_64.png b/src/assets/images/items/conveyor-splitter_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-splitter_64.png
rename to src/assets/images/items/conveyor-splitter_64.png
diff --git a/www/assets/images/items/conveyor-wall-mount_256.png b/src/assets/images/items/conveyor-wall-mount_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-wall-mount_256.png
rename to src/assets/images/items/conveyor-wall-mount_256.png
diff --git a/www/assets/images/items/conveyor-wall-mount_64.png b/src/assets/images/items/conveyor-wall-mount_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/conveyor-wall-mount_64.png
rename to src/assets/images/items/conveyor-wall-mount_64.png
diff --git a/www/assets/images/items/copper-ingot_256.png b/src/assets/images/items/copper-ingot_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/copper-ingot_256.png
rename to src/assets/images/items/copper-ingot_256.png
diff --git a/www/assets/images/items/copper-ingot_64.png b/src/assets/images/items/copper-ingot_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/copper-ingot_64.png
rename to src/assets/images/items/copper-ingot_64.png
diff --git a/www/assets/images/items/copper-ore_256.png b/src/assets/images/items/copper-ore_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/copper-ore_256.png
rename to src/assets/images/items/copper-ore_256.png
diff --git a/www/assets/images/items/copper-ore_64.png b/src/assets/images/items/copper-ore_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/copper-ore_64.png
rename to src/assets/images/items/copper-ore_64.png
diff --git a/www/assets/images/items/copper-sheet_256.png b/src/assets/images/items/copper-sheet_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/copper-sheet_256.png
rename to src/assets/images/items/copper-sheet_256.png
diff --git a/www/assets/images/items/copper-sheet_64.png b/src/assets/images/items/copper-sheet_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/copper-sheet_64.png
rename to src/assets/images/items/copper-sheet_64.png
diff --git a/www/assets/images/items/coupon_256.png b/src/assets/images/items/coupon_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/coupon_256.png
rename to src/assets/images/items/coupon_256.png
diff --git a/www/assets/images/items/coupon_64.png b/src/assets/images/items/coupon_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/coupon_64.png
rename to src/assets/images/items/coupon_64.png
diff --git a/www/assets/images/items/craft-bench_256.png b/src/assets/images/items/craft-bench_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/craft-bench_256.png
rename to src/assets/images/items/craft-bench_256.png
diff --git a/www/assets/images/items/craft-bench_64.png b/src/assets/images/items/craft-bench_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/craft-bench_64.png
rename to src/assets/images/items/craft-bench_64.png
diff --git a/www/assets/images/items/crude-oil_256.png b/src/assets/images/items/crude-oil_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/crude-oil_256.png
rename to src/assets/images/items/crude-oil_256.png
diff --git a/www/assets/images/items/crude-oil_64.png b/src/assets/images/items/crude-oil_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/crude-oil_64.png
rename to src/assets/images/items/crude-oil_64.png
diff --git a/www/assets/images/items/crystal-oscillator_256.png b/src/assets/images/items/crystal-oscillator_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/crystal-oscillator_256.png
rename to src/assets/images/items/crystal-oscillator_256.png
diff --git a/www/assets/images/items/crystal-oscillator_64.png b/src/assets/images/items/crystal-oscillator_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/crystal-oscillator_64.png
rename to src/assets/images/items/crystal-oscillator_64.png
diff --git a/www/assets/images/items/cyber-wagon_256.png b/src/assets/images/items/cyber-wagon_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/cyber-wagon_256.png
rename to src/assets/images/items/cyber-wagon_256.png
diff --git a/www/assets/images/items/cyber-wagon_64.png b/src/assets/images/items/cyber-wagon_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/cyber-wagon_64.png
rename to src/assets/images/items/cyber-wagon_64.png
diff --git a/www/assets/images/items/double-ramp-8m-x-2m_256.png b/src/assets/images/items/double-ramp-8m-x-2m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/double-ramp-8m-x-2m_256.png
rename to src/assets/images/items/double-ramp-8m-x-2m_256.png
diff --git a/www/assets/images/items/double-ramp-8m-x-2m_64.png b/src/assets/images/items/double-ramp-8m-x-2m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/double-ramp-8m-x-2m_64.png
rename to src/assets/images/items/double-ramp-8m-x-2m_64.png
diff --git a/www/assets/images/items/double-ramp-8m-x-4m_256.png b/src/assets/images/items/double-ramp-8m-x-4m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/double-ramp-8m-x-4m_256.png
rename to src/assets/images/items/double-ramp-8m-x-4m_256.png
diff --git a/www/assets/images/items/double-ramp-8m-x-4m_64.png b/src/assets/images/items/double-ramp-8m-x-4m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/double-ramp-8m-x-4m_64.png
rename to src/assets/images/items/double-ramp-8m-x-4m_64.png
diff --git a/www/assets/images/items/double-ramp-8m-x-8m_256.png b/src/assets/images/items/double-ramp-8m-x-8m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/double-ramp-8m-x-8m_256.png
rename to src/assets/images/items/double-ramp-8m-x-8m_256.png
diff --git a/www/assets/images/items/double-ramp-8m-x-8m_64.png b/src/assets/images/items/double-ramp-8m-x-8m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/double-ramp-8m-x-8m_64.png
rename to src/assets/images/items/double-ramp-8m-x-8m_64.png
diff --git a/www/assets/images/items/double-wall-outlet-mk-1_256.png b/src/assets/images/items/double-wall-outlet-mk-1_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/double-wall-outlet-mk-1_256.png
rename to src/assets/images/items/double-wall-outlet-mk-1_256.png
diff --git a/www/assets/images/items/double-wall-outlet-mk-1_64.png b/src/assets/images/items/double-wall-outlet-mk-1_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/double-wall-outlet-mk-1_64.png
rename to src/assets/images/items/double-wall-outlet-mk-1_64.png
diff --git a/www/assets/images/items/double-wall-outlet-mk-2_256.png b/src/assets/images/items/double-wall-outlet-mk-2_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/double-wall-outlet-mk-2_256.png
rename to src/assets/images/items/double-wall-outlet-mk-2_256.png
diff --git a/www/assets/images/items/double-wall-outlet-mk-2_64.png b/src/assets/images/items/double-wall-outlet-mk-2_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/double-wall-outlet-mk-2_64.png
rename to src/assets/images/items/double-wall-outlet-mk-2_64.png
diff --git a/www/assets/images/items/double-wall-outlet-mk-3_256.png b/src/assets/images/items/double-wall-outlet-mk-3_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/double-wall-outlet-mk-3_256.png
rename to src/assets/images/items/double-wall-outlet-mk-3_256.png
diff --git a/www/assets/images/items/double-wall-outlet-mk-3_64.png b/src/assets/images/items/double-wall-outlet-mk-3_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/double-wall-outlet-mk-3_64.png
rename to src/assets/images/items/double-wall-outlet-mk-3_64.png
diff --git a/www/assets/images/items/down-corner-8m-x-1m-inverted_256.png b/src/assets/images/items/down-corner-8m-x-1m-inverted_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/down-corner-8m-x-1m-inverted_256.png
rename to src/assets/images/items/down-corner-8m-x-1m-inverted_256.png
diff --git a/www/assets/images/items/down-corner-8m-x-1m-inverted_64.png b/src/assets/images/items/down-corner-8m-x-1m-inverted_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/down-corner-8m-x-1m-inverted_64.png
rename to src/assets/images/items/down-corner-8m-x-1m-inverted_64.png
diff --git a/www/assets/images/items/down-corner-8m-x-2m-inverted_256.png b/src/assets/images/items/down-corner-8m-x-2m-inverted_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/down-corner-8m-x-2m-inverted_256.png
rename to src/assets/images/items/down-corner-8m-x-2m-inverted_256.png
diff --git a/www/assets/images/items/down-corner-8m-x-2m-inverted_64.png b/src/assets/images/items/down-corner-8m-x-2m-inverted_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/down-corner-8m-x-2m-inverted_64.png
rename to src/assets/images/items/down-corner-8m-x-2m-inverted_64.png
diff --git a/www/assets/images/items/down-corner-8m-x-4m-inverted_256.png b/src/assets/images/items/down-corner-8m-x-4m-inverted_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/down-corner-8m-x-4m-inverted_256.png
rename to src/assets/images/items/down-corner-8m-x-4m-inverted_256.png
diff --git a/www/assets/images/items/down-corner-8m-x-4m-inverted_64.png b/src/assets/images/items/down-corner-8m-x-4m-inverted_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/down-corner-8m-x-4m-inverted_64.png
rename to src/assets/images/items/down-corner-8m-x-4m-inverted_64.png
diff --git a/www/assets/images/items/down-corner-ramp-8m-x-1m_256.png b/src/assets/images/items/down-corner-ramp-8m-x-1m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/down-corner-ramp-8m-x-1m_256.png
rename to src/assets/images/items/down-corner-ramp-8m-x-1m_256.png
diff --git a/www/assets/images/items/down-corner-ramp-8m-x-1m_64.png b/src/assets/images/items/down-corner-ramp-8m-x-1m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/down-corner-ramp-8m-x-1m_64.png
rename to src/assets/images/items/down-corner-ramp-8m-x-1m_64.png
diff --git a/www/assets/images/items/down-corner-ramp-8m-x-2m_256.png b/src/assets/images/items/down-corner-ramp-8m-x-2m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/down-corner-ramp-8m-x-2m_256.png
rename to src/assets/images/items/down-corner-ramp-8m-x-2m_256.png
diff --git a/www/assets/images/items/down-corner-ramp-8m-x-2m_64.png b/src/assets/images/items/down-corner-ramp-8m-x-2m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/down-corner-ramp-8m-x-2m_64.png
rename to src/assets/images/items/down-corner-ramp-8m-x-2m_64.png
diff --git a/www/assets/images/items/down-corner-ramp-8m-x-4m_256.png b/src/assets/images/items/down-corner-ramp-8m-x-4m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/down-corner-ramp-8m-x-4m_256.png
rename to src/assets/images/items/down-corner-ramp-8m-x-4m_256.png
diff --git a/www/assets/images/items/down-corner-ramp-8m-x-4m_64.png b/src/assets/images/items/down-corner-ramp-8m-x-4m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/down-corner-ramp-8m-x-4m_64.png
rename to src/assets/images/items/down-corner-ramp-8m-x-4m_64.png
diff --git a/www/assets/images/items/electric-locomotive_256.png b/src/assets/images/items/electric-locomotive_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/electric-locomotive_256.png
rename to src/assets/images/items/electric-locomotive_256.png
diff --git a/www/assets/images/items/electric-locomotive_64.png b/src/assets/images/items/electric-locomotive_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/electric-locomotive_64.png
rename to src/assets/images/items/electric-locomotive_64.png
diff --git a/www/assets/images/items/electromagnetic-control-rod_256.png b/src/assets/images/items/electromagnetic-control-rod_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/electromagnetic-control-rod_256.png
rename to src/assets/images/items/electromagnetic-control-rod_256.png
diff --git a/www/assets/images/items/electromagnetic-control-rod_64.png b/src/assets/images/items/electromagnetic-control-rod_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/electromagnetic-control-rod_64.png
rename to src/assets/images/items/electromagnetic-control-rod_64.png
diff --git a/www/assets/images/items/empty-canister_256.png b/src/assets/images/items/empty-canister_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/empty-canister_256.png
rename to src/assets/images/items/empty-canister_256.png
diff --git a/www/assets/images/items/empty-canister_64.png b/src/assets/images/items/empty-canister_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/empty-canister_64.png
rename to src/assets/images/items/empty-canister_64.png
diff --git a/www/assets/images/items/empty-platform_256.png b/src/assets/images/items/empty-platform_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/empty-platform_256.png
rename to src/assets/images/items/empty-platform_256.png
diff --git a/www/assets/images/items/empty-platform_64.png b/src/assets/images/items/empty-platform_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/empty-platform_64.png
rename to src/assets/images/items/empty-platform_64.png
diff --git a/www/assets/images/items/encased-industrial-beam_256.png b/src/assets/images/items/encased-industrial-beam_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/encased-industrial-beam_256.png
rename to src/assets/images/items/encased-industrial-beam_256.png
diff --git a/www/assets/images/items/encased-industrial-beam_64.png b/src/assets/images/items/encased-industrial-beam_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/encased-industrial-beam_64.png
rename to src/assets/images/items/encased-industrial-beam_64.png
diff --git a/www/assets/images/items/encased-uranium-cell_256.png b/src/assets/images/items/encased-uranium-cell_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/encased-uranium-cell_256.png
rename to src/assets/images/items/encased-uranium-cell_256.png
diff --git a/www/assets/images/items/encased-uranium-cell_64.png b/src/assets/images/items/encased-uranium-cell_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/encased-uranium-cell_64.png
rename to src/assets/images/items/encased-uranium-cell_64.png
diff --git a/www/assets/images/items/equipment-workshop_256.png b/src/assets/images/items/equipment-workshop_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/equipment-workshop_256.png
rename to src/assets/images/items/equipment-workshop_256.png
diff --git a/www/assets/images/items/equipment-workshop_64.png b/src/assets/images/items/equipment-workshop_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/equipment-workshop_64.png
rename to src/assets/images/items/equipment-workshop_64.png
diff --git a/www/assets/images/items/explorer_256.png b/src/assets/images/items/explorer_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/explorer_256.png
rename to src/assets/images/items/explorer_256.png
diff --git a/www/assets/images/items/explorer_64.png b/src/assets/images/items/explorer_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/explorer_64.png
rename to src/assets/images/items/explorer_64.png
diff --git a/www/assets/images/items/fabric_256.png b/src/assets/images/items/fabric_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/fabric_256.png
rename to src/assets/images/items/fabric_256.png
diff --git a/www/assets/images/items/fabric_64.png b/src/assets/images/items/fabric_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/fabric_64.png
rename to src/assets/images/items/fabric_64.png
diff --git a/www/assets/images/items/factory-cart_256.png b/src/assets/images/items/factory-cart_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/factory-cart_256.png
rename to src/assets/images/items/factory-cart_256.png
diff --git a/www/assets/images/items/factory-cart_64.png b/src/assets/images/items/factory-cart_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/factory-cart_64.png
rename to src/assets/images/items/factory-cart_64.png
diff --git a/www/assets/images/items/fence_256.png b/src/assets/images/items/fence_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/fence_256.png
rename to src/assets/images/items/fence_256.png
diff --git a/www/assets/images/items/fence_64.png b/src/assets/images/items/fence_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/fence_64.png
rename to src/assets/images/items/fence_64.png
diff --git a/www/assets/images/items/flower-petals_256.png b/src/assets/images/items/flower-petals_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/flower-petals_256.png
rename to src/assets/images/items/flower-petals_256.png
diff --git a/www/assets/images/items/flower-petals_64.png b/src/assets/images/items/flower-petals_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/flower-petals_64.png
rename to src/assets/images/items/flower-petals_64.png
diff --git a/www/assets/images/items/fluid-buffer_256.png b/src/assets/images/items/fluid-buffer_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/fluid-buffer_256.png
rename to src/assets/images/items/fluid-buffer_256.png
diff --git a/www/assets/images/items/fluid-buffer_64.png b/src/assets/images/items/fluid-buffer_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/fluid-buffer_64.png
rename to src/assets/images/items/fluid-buffer_64.png
diff --git a/www/assets/images/items/fluid-freight-platform_256.png b/src/assets/images/items/fluid-freight-platform_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/fluid-freight-platform_256.png
rename to src/assets/images/items/fluid-freight-platform_256.png
diff --git a/www/assets/images/items/fluid-freight-platform_64.png b/src/assets/images/items/fluid-freight-platform_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/fluid-freight-platform_64.png
rename to src/assets/images/items/fluid-freight-platform_64.png
diff --git a/www/assets/images/items/foundation-8m-x-1m_256.png b/src/assets/images/items/foundation-8m-x-1m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/foundation-8m-x-1m_256.png
rename to src/assets/images/items/foundation-8m-x-1m_256.png
diff --git a/www/assets/images/items/foundation-8m-x-1m_64.png b/src/assets/images/items/foundation-8m-x-1m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/foundation-8m-x-1m_64.png
rename to src/assets/images/items/foundation-8m-x-1m_64.png
diff --git a/www/assets/images/items/foundation-8m-x-2m_256.png b/src/assets/images/items/foundation-8m-x-2m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/foundation-8m-x-2m_256.png
rename to src/assets/images/items/foundation-8m-x-2m_256.png
diff --git a/www/assets/images/items/foundation-8m-x-2m_64.png b/src/assets/images/items/foundation-8m-x-2m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/foundation-8m-x-2m_64.png
rename to src/assets/images/items/foundation-8m-x-2m_64.png
diff --git a/www/assets/images/items/foundation-8m-x-4m_256.png b/src/assets/images/items/foundation-8m-x-4m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/foundation-8m-x-4m_256.png
rename to src/assets/images/items/foundation-8m-x-4m_256.png
diff --git a/www/assets/images/items/foundation-8m-x-4m_64.png b/src/assets/images/items/foundation-8m-x-4m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/foundation-8m-x-4m_64.png
rename to src/assets/images/items/foundation-8m-x-4m_64.png
diff --git a/www/assets/images/items/foundry_256.png b/src/assets/images/items/foundry_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/foundry_256.png
rename to src/assets/images/items/foundry_256.png
diff --git a/www/assets/images/items/foundry_64.png b/src/assets/images/items/foundry_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/foundry_64.png
rename to src/assets/images/items/foundry_64.png
diff --git a/www/assets/images/items/frame-foundation-8m-x-4m_256.png b/src/assets/images/items/frame-foundation-8m-x-4m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/frame-foundation-8m-x-4m_256.png
rename to src/assets/images/items/frame-foundation-8m-x-4m_256.png
diff --git a/www/assets/images/items/frame-foundation-8m-x-4m_64.png b/src/assets/images/items/frame-foundation-8m-x-4m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/frame-foundation-8m-x-4m_64.png
rename to src/assets/images/items/frame-foundation-8m-x-4m_64.png
diff --git a/www/assets/images/items/frame-window_256.png b/src/assets/images/items/frame-window_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/frame-window_256.png
rename to src/assets/images/items/frame-window_256.png
diff --git a/www/assets/images/items/frame-window_64.png b/src/assets/images/items/frame-window_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/frame-window_64.png
rename to src/assets/images/items/frame-window_64.png
diff --git a/www/assets/images/items/freight-car_256.png b/src/assets/images/items/freight-car_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/freight-car_256.png
rename to src/assets/images/items/freight-car_256.png
diff --git a/www/assets/images/items/freight-car_64.png b/src/assets/images/items/freight-car_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/freight-car_64.png
rename to src/assets/images/items/freight-car_64.png
diff --git a/www/assets/images/items/freight-platform_256.png b/src/assets/images/items/freight-platform_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/freight-platform_256.png
rename to src/assets/images/items/freight-platform_256.png
diff --git a/www/assets/images/items/freight-platform_64.png b/src/assets/images/items/freight-platform_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/freight-platform_64.png
rename to src/assets/images/items/freight-platform_64.png
diff --git a/www/assets/images/items/fuel-generator_256.png b/src/assets/images/items/fuel-generator_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/fuel-generator_256.png
rename to src/assets/images/items/fuel-generator_256.png
diff --git a/www/assets/images/items/fuel-generator_64.png b/src/assets/images/items/fuel-generator_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/fuel-generator_64.png
rename to src/assets/images/items/fuel-generator_64.png
diff --git a/www/assets/images/items/fuel_256.png b/src/assets/images/items/fuel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/fuel_256.png
rename to src/assets/images/items/fuel_256.png
diff --git a/www/assets/images/items/fuel_64.png b/src/assets/images/items/fuel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/fuel_64.png
rename to src/assets/images/items/fuel_64.png
diff --git a/www/assets/images/items/gas-filter_256.png b/src/assets/images/items/gas-filter_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/gas-filter_256.png
rename to src/assets/images/items/gas-filter_256.png
diff --git a/www/assets/images/items/gas-filter_64.png b/src/assets/images/items/gas-filter_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/gas-filter_64.png
rename to src/assets/images/items/gas-filter_64.png
diff --git a/www/assets/images/items/gas-mask_256.png b/src/assets/images/items/gas-mask_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/gas-mask_256.png
rename to src/assets/images/items/gas-mask_256.png
diff --git a/www/assets/images/items/gas-mask_64.png b/src/assets/images/items/gas-mask_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/gas-mask_64.png
rename to src/assets/images/items/gas-mask_64.png
diff --git a/www/assets/images/items/gate-wall_256.png b/src/assets/images/items/gate-wall_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/gate-wall_256.png
rename to src/assets/images/items/gate-wall_256.png
diff --git a/www/assets/images/items/gate-wall_64.png b/src/assets/images/items/gate-wall_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/gate-wall_64.png
rename to src/assets/images/items/gate-wall_64.png
diff --git a/www/assets/images/items/geothermal-generator_256.png b/src/assets/images/items/geothermal-generator_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/geothermal-generator_256.png
rename to src/assets/images/items/geothermal-generator_256.png
diff --git a/www/assets/images/items/geothermal-generator_64.png b/src/assets/images/items/geothermal-generator_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/geothermal-generator_64.png
rename to src/assets/images/items/geothermal-generator_64.png
diff --git a/www/assets/images/items/glass-foundation-8m-x-1m_256.png b/src/assets/images/items/glass-foundation-8m-x-1m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/glass-foundation-8m-x-1m_256.png
rename to src/assets/images/items/glass-foundation-8m-x-1m_256.png
diff --git a/www/assets/images/items/glass-foundation-8m-x-1m_64.png b/src/assets/images/items/glass-foundation-8m-x-1m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/glass-foundation-8m-x-1m_64.png
rename to src/assets/images/items/glass-foundation-8m-x-1m_64.png
diff --git a/www/assets/images/items/green-power-slug_256.png b/src/assets/images/items/green-power-slug_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/green-power-slug_256.png
rename to src/assets/images/items/green-power-slug_256.png
diff --git a/www/assets/images/items/green-power-slug_64.png b/src/assets/images/items/green-power-slug_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/green-power-slug_64.png
rename to src/assets/images/items/green-power-slug_64.png
diff --git a/www/assets/images/items/hazmat-suit_256.png b/src/assets/images/items/hazmat-suit_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hazmat-suit_256.png
rename to src/assets/images/items/hazmat-suit_256.png
diff --git a/www/assets/images/items/hazmat-suit_64.png b/src/assets/images/items/hazmat-suit_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hazmat-suit_64.png
rename to src/assets/images/items/hazmat-suit_64.png
diff --git a/www/assets/images/items/heat-sink_256.png b/src/assets/images/items/heat-sink_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/heat-sink_256.png
rename to src/assets/images/items/heat-sink_256.png
diff --git a/www/assets/images/items/heat-sink_64.png b/src/assets/images/items/heat-sink_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/heat-sink_64.png
rename to src/assets/images/items/heat-sink_64.png
diff --git a/www/assets/images/items/heavy-modular-frame_256.png b/src/assets/images/items/heavy-modular-frame_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/heavy-modular-frame_256.png
rename to src/assets/images/items/heavy-modular-frame_256.png
diff --git a/www/assets/images/items/heavy-modular-frame_64.png b/src/assets/images/items/heavy-modular-frame_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/heavy-modular-frame_64.png
rename to src/assets/images/items/heavy-modular-frame_64.png
diff --git a/www/assets/images/items/heavy-oil-residue_256.png b/src/assets/images/items/heavy-oil-residue_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/heavy-oil-residue_256.png
rename to src/assets/images/items/heavy-oil-residue_256.png
diff --git a/www/assets/images/items/heavy-oil-residue_64.png b/src/assets/images/items/heavy-oil-residue_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/heavy-oil-residue_64.png
rename to src/assets/images/items/heavy-oil-residue_64.png
diff --git a/www/assets/images/items/high-speed-connector_256.png b/src/assets/images/items/high-speed-connector_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/high-speed-connector_256.png
rename to src/assets/images/items/high-speed-connector_256.png
diff --git a/www/assets/images/items/high-speed-connector_64.png b/src/assets/images/items/high-speed-connector_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/high-speed-connector_64.png
rename to src/assets/images/items/high-speed-connector_64.png
diff --git a/www/assets/images/items/hub-parts_256.png b/src/assets/images/items/hub-parts_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hub-parts_256.png
rename to src/assets/images/items/hub-parts_256.png
diff --git a/www/assets/images/items/hub-parts_64.png b/src/assets/images/items/hub-parts_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hub-parts_64.png
rename to src/assets/images/items/hub-parts_64.png
diff --git a/www/assets/images/items/hyper-tube-entrance_256.png b/src/assets/images/items/hyper-tube-entrance_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hyper-tube-entrance_256.png
rename to src/assets/images/items/hyper-tube-entrance_256.png
diff --git a/www/assets/images/items/hyper-tube-entrance_64.png b/src/assets/images/items/hyper-tube-entrance_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hyper-tube-entrance_64.png
rename to src/assets/images/items/hyper-tube-entrance_64.png
diff --git a/www/assets/images/items/hyper-tube-support_256.png b/src/assets/images/items/hyper-tube-support_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hyper-tube-support_256.png
rename to src/assets/images/items/hyper-tube-support_256.png
diff --git a/www/assets/images/items/hyper-tube-support_64.png b/src/assets/images/items/hyper-tube-support_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hyper-tube-support_64.png
rename to src/assets/images/items/hyper-tube-support_64.png
diff --git a/www/assets/images/items/hyper-tube-wall-hole_256.png b/src/assets/images/items/hyper-tube-wall-hole_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hyper-tube-wall-hole_256.png
rename to src/assets/images/items/hyper-tube-wall-hole_256.png
diff --git a/www/assets/images/items/hyper-tube-wall-hole_64.png b/src/assets/images/items/hyper-tube-wall-hole_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hyper-tube-wall-hole_64.png
rename to src/assets/images/items/hyper-tube-wall-hole_64.png
diff --git a/www/assets/images/items/hyper-tube-wall-support_256.png b/src/assets/images/items/hyper-tube-wall-support_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hyper-tube-wall-support_256.png
rename to src/assets/images/items/hyper-tube-wall-support_256.png
diff --git a/www/assets/images/items/hyper-tube-wall-support_64.png b/src/assets/images/items/hyper-tube-wall-support_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hyper-tube-wall-support_64.png
rename to src/assets/images/items/hyper-tube-wall-support_64.png
diff --git a/www/assets/images/items/hyper-tube_256.png b/src/assets/images/items/hyper-tube_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hyper-tube_256.png
rename to src/assets/images/items/hyper-tube_256.png
diff --git a/www/assets/images/items/hyper-tube_64.png b/src/assets/images/items/hyper-tube_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/hyper-tube_64.png
rename to src/assets/images/items/hyper-tube_64.png
diff --git a/www/assets/images/items/industrial-fluid-buffer_256.png b/src/assets/images/items/industrial-fluid-buffer_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/industrial-fluid-buffer_256.png
rename to src/assets/images/items/industrial-fluid-buffer_256.png
diff --git a/www/assets/images/items/industrial-fluid-buffer_64.png b/src/assets/images/items/industrial-fluid-buffer_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/industrial-fluid-buffer_64.png
rename to src/assets/images/items/industrial-fluid-buffer_64.png
diff --git a/www/assets/images/items/industrial-storage-container_256.png b/src/assets/images/items/industrial-storage-container_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/industrial-storage-container_256.png
rename to src/assets/images/items/industrial-storage-container_256.png
diff --git a/www/assets/images/items/industrial-storage-container_64.png b/src/assets/images/items/industrial-storage-container_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/industrial-storage-container_64.png
rename to src/assets/images/items/industrial-storage-container_64.png
diff --git a/www/assets/images/items/inner-corner-quarter-pipe_256.png b/src/assets/images/items/inner-corner-quarter-pipe_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inner-corner-quarter-pipe_256.png
rename to src/assets/images/items/inner-corner-quarter-pipe_256.png
diff --git a/www/assets/images/items/inner-corner-quarter-pipe_64.png b/src/assets/images/items/inner-corner-quarter-pipe_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inner-corner-quarter-pipe_64.png
rename to src/assets/images/items/inner-corner-quarter-pipe_64.png
diff --git a/www/assets/images/items/inverted-inner-corner-quarter-pipe_256.png b/src/assets/images/items/inverted-inner-corner-quarter-pipe_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inverted-inner-corner-quarter-pipe_256.png
rename to src/assets/images/items/inverted-inner-corner-quarter-pipe_256.png
diff --git a/www/assets/images/items/inverted-inner-corner-quarter-pipe_64.png b/src/assets/images/items/inverted-inner-corner-quarter-pipe_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inverted-inner-corner-quarter-pipe_64.png
rename to src/assets/images/items/inverted-inner-corner-quarter-pipe_64.png
diff --git a/www/assets/images/items/inverted-outer-corner-quarter-pipe_256.png b/src/assets/images/items/inverted-outer-corner-quarter-pipe_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inverted-outer-corner-quarter-pipe_256.png
rename to src/assets/images/items/inverted-outer-corner-quarter-pipe_256.png
diff --git a/www/assets/images/items/inverted-outer-corner-quarter-pipe_64.png b/src/assets/images/items/inverted-outer-corner-quarter-pipe_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inverted-outer-corner-quarter-pipe_64.png
rename to src/assets/images/items/inverted-outer-corner-quarter-pipe_64.png
diff --git a/www/assets/images/items/inverted-quarter-pipe_256.png b/src/assets/images/items/inverted-quarter-pipe_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inverted-quarter-pipe_256.png
rename to src/assets/images/items/inverted-quarter-pipe_256.png
diff --git a/www/assets/images/items/inverted-quarter-pipe_64.png b/src/assets/images/items/inverted-quarter-pipe_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inverted-quarter-pipe_64.png
rename to src/assets/images/items/inverted-quarter-pipe_64.png
diff --git a/www/assets/images/items/inverted-ramp-8m-x-1m_256.png b/src/assets/images/items/inverted-ramp-8m-x-1m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inverted-ramp-8m-x-1m_256.png
rename to src/assets/images/items/inverted-ramp-8m-x-1m_256.png
diff --git a/www/assets/images/items/inverted-ramp-8m-x-1m_64.png b/src/assets/images/items/inverted-ramp-8m-x-1m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inverted-ramp-8m-x-1m_64.png
rename to src/assets/images/items/inverted-ramp-8m-x-1m_64.png
diff --git a/www/assets/images/items/inverted-ramp-8m-x-2m_256.png b/src/assets/images/items/inverted-ramp-8m-x-2m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inverted-ramp-8m-x-2m_256.png
rename to src/assets/images/items/inverted-ramp-8m-x-2m_256.png
diff --git a/www/assets/images/items/inverted-ramp-8m-x-2m_64.png b/src/assets/images/items/inverted-ramp-8m-x-2m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inverted-ramp-8m-x-2m_64.png
rename to src/assets/images/items/inverted-ramp-8m-x-2m_64.png
diff --git a/www/assets/images/items/inverted-ramp-8m-x-4m_256.png b/src/assets/images/items/inverted-ramp-8m-x-4m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inverted-ramp-8m-x-4m_256.png
rename to src/assets/images/items/inverted-ramp-8m-x-4m_256.png
diff --git a/www/assets/images/items/inverted-ramp-8m-x-4m_64.png b/src/assets/images/items/inverted-ramp-8m-x-4m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/inverted-ramp-8m-x-4m_64.png
rename to src/assets/images/items/inverted-ramp-8m-x-4m_64.png
diff --git a/www/assets/images/items/iodine-infused-filter_256.png b/src/assets/images/items/iodine-infused-filter_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/iodine-infused-filter_256.png
rename to src/assets/images/items/iodine-infused-filter_256.png
diff --git a/www/assets/images/items/iodine-infused-filter_64.png b/src/assets/images/items/iodine-infused-filter_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/iodine-infused-filter_64.png
rename to src/assets/images/items/iodine-infused-filter_64.png
diff --git a/www/assets/images/items/iron-ingot_256.png b/src/assets/images/items/iron-ingot_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/iron-ingot_256.png
rename to src/assets/images/items/iron-ingot_256.png
diff --git a/www/assets/images/items/iron-ingot_64.png b/src/assets/images/items/iron-ingot_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/iron-ingot_64.png
rename to src/assets/images/items/iron-ingot_64.png
diff --git a/www/assets/images/items/iron-ore_256.png b/src/assets/images/items/iron-ore_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/iron-ore_256.png
rename to src/assets/images/items/iron-ore_256.png
diff --git a/www/assets/images/items/iron-ore_64.png b/src/assets/images/items/iron-ore_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/iron-ore_64.png
rename to src/assets/images/items/iron-ore_64.png
diff --git a/www/assets/images/items/iron-plate_256.png b/src/assets/images/items/iron-plate_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/iron-plate_256.png
rename to src/assets/images/items/iron-plate_256.png
diff --git a/www/assets/images/items/iron-plate_64.png b/src/assets/images/items/iron-plate_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/iron-plate_64.png
rename to src/assets/images/items/iron-plate_64.png
diff --git a/www/assets/images/items/iron-rod_256.png b/src/assets/images/items/iron-rod_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/iron-rod_256.png
rename to src/assets/images/items/iron-rod_256.png
diff --git a/www/assets/images/items/iron-rod_64.png b/src/assets/images/items/iron-rod_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/iron-rod_64.png
rename to src/assets/images/items/iron-rod_64.png
diff --git a/www/assets/images/items/jetpack_256.png b/src/assets/images/items/jetpack_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/jetpack_256.png
rename to src/assets/images/items/jetpack_256.png
diff --git a/www/assets/images/items/jetpack_64.png b/src/assets/images/items/jetpack_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/jetpack_64.png
rename to src/assets/images/items/jetpack_64.png
diff --git a/www/assets/images/items/jump-pad_256.png b/src/assets/images/items/jump-pad_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/jump-pad_256.png
rename to src/assets/images/items/jump-pad_256.png
diff --git a/www/assets/images/items/jump-pad_64.png b/src/assets/images/items/jump-pad_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/jump-pad_64.png
rename to src/assets/images/items/jump-pad_64.png
diff --git a/www/assets/images/items/leaves_256.png b/src/assets/images/items/leaves_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/leaves_256.png
rename to src/assets/images/items/leaves_256.png
diff --git a/www/assets/images/items/leaves_64.png b/src/assets/images/items/leaves_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/leaves_64.png
rename to src/assets/images/items/leaves_64.png
diff --git a/www/assets/images/items/left-door-wall-steel_256.png b/src/assets/images/items/left-door-wall-steel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/left-door-wall-steel_256.png
rename to src/assets/images/items/left-door-wall-steel_256.png
diff --git a/www/assets/images/items/left-door-wall-steel_64.png b/src/assets/images/items/left-door-wall-steel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/left-door-wall-steel_64.png
rename to src/assets/images/items/left-door-wall-steel_64.png
diff --git a/www/assets/images/items/left-door-wall_256.png b/src/assets/images/items/left-door-wall_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/left-door-wall_256.png
rename to src/assets/images/items/left-door-wall_256.png
diff --git a/www/assets/images/items/left-door-wall_64.png b/src/assets/images/items/left-door-wall_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/left-door-wall_64.png
rename to src/assets/images/items/left-door-wall_64.png
diff --git a/www/assets/images/items/limestone_256.png b/src/assets/images/items/limestone_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/limestone_256.png
rename to src/assets/images/items/limestone_256.png
diff --git a/www/assets/images/items/limestone_64.png b/src/assets/images/items/limestone_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/limestone_64.png
rename to src/assets/images/items/limestone_64.png
diff --git a/www/assets/images/items/liquid-biofuel_256.png b/src/assets/images/items/liquid-biofuel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/liquid-biofuel_256.png
rename to src/assets/images/items/liquid-biofuel_256.png
diff --git a/www/assets/images/items/liquid-biofuel_64.png b/src/assets/images/items/liquid-biofuel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/liquid-biofuel_64.png
rename to src/assets/images/items/liquid-biofuel_64.png
diff --git a/www/assets/images/items/lookout-tower_256.png b/src/assets/images/items/lookout-tower_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/lookout-tower_256.png
rename to src/assets/images/items/lookout-tower_256.png
diff --git a/www/assets/images/items/lookout-tower_64.png b/src/assets/images/items/lookout-tower_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/lookout-tower_64.png
rename to src/assets/images/items/lookout-tower_64.png
diff --git a/www/assets/images/items/m-a-m-_256.png b/src/assets/images/items/m-a-m-_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/m-a-m-_256.png
rename to src/assets/images/items/m-a-m-_256.png
diff --git a/www/assets/images/items/m-a-m-_64.png b/src/assets/images/items/m-a-m-_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/m-a-m-_64.png
rename to src/assets/images/items/m-a-m-_64.png
diff --git a/www/assets/images/items/manufacturer_256.png b/src/assets/images/items/manufacturer_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/manufacturer_256.png
rename to src/assets/images/items/manufacturer_256.png
diff --git a/www/assets/images/items/manufacturer_64.png b/src/assets/images/items/manufacturer_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/manufacturer_64.png
rename to src/assets/images/items/manufacturer_64.png
diff --git a/www/assets/images/items/medicinal-inhaler_256.png b/src/assets/images/items/medicinal-inhaler_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/medicinal-inhaler_256.png
rename to src/assets/images/items/medicinal-inhaler_256.png
diff --git a/www/assets/images/items/medicinal-inhaler_64.png b/src/assets/images/items/medicinal-inhaler_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/medicinal-inhaler_64.png
rename to src/assets/images/items/medicinal-inhaler_64.png
diff --git a/www/assets/images/items/miner-mk-1_256.png b/src/assets/images/items/miner-mk-1_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/miner-mk-1_256.png
rename to src/assets/images/items/miner-mk-1_256.png
diff --git a/www/assets/images/items/miner-mk-1_64.png b/src/assets/images/items/miner-mk-1_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/miner-mk-1_64.png
rename to src/assets/images/items/miner-mk-1_64.png
diff --git a/www/assets/images/items/miner-mk-2_256.png b/src/assets/images/items/miner-mk-2_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/miner-mk-2_256.png
rename to src/assets/images/items/miner-mk-2_256.png
diff --git a/www/assets/images/items/miner-mk-2_64.png b/src/assets/images/items/miner-mk-2_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/miner-mk-2_64.png
rename to src/assets/images/items/miner-mk-2_64.png
diff --git a/www/assets/images/items/miner-mk-3_256.png b/src/assets/images/items/miner-mk-3_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/miner-mk-3_256.png
rename to src/assets/images/items/miner-mk-3_256.png
diff --git a/www/assets/images/items/miner-mk-3_64.png b/src/assets/images/items/miner-mk-3_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/miner-mk-3_64.png
rename to src/assets/images/items/miner-mk-3_64.png
diff --git a/www/assets/images/items/modular-engine_256.png b/src/assets/images/items/modular-engine_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/modular-engine_256.png
rename to src/assets/images/items/modular-engine_256.png
diff --git a/www/assets/images/items/modular-engine_64.png b/src/assets/images/items/modular-engine_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/modular-engine_64.png
rename to src/assets/images/items/modular-engine_64.png
diff --git a/www/assets/images/items/modular-frame_256.png b/src/assets/images/items/modular-frame_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/modular-frame_256.png
rename to src/assets/images/items/modular-frame_256.png
diff --git a/www/assets/images/items/modular-frame_64.png b/src/assets/images/items/modular-frame_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/modular-frame_64.png
rename to src/assets/images/items/modular-frame_64.png
diff --git a/www/assets/images/items/motor_256.png b/src/assets/images/items/motor_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/motor_256.png
rename to src/assets/images/items/motor_256.png
diff --git a/www/assets/images/items/motor_64.png b/src/assets/images/items/motor_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/motor_64.png
rename to src/assets/images/items/motor_64.png
diff --git a/www/assets/images/items/mycelia_256.png b/src/assets/images/items/mycelia_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/mycelia_256.png
rename to src/assets/images/items/mycelia_256.png
diff --git a/www/assets/images/items/mycelia_64.png b/src/assets/images/items/mycelia_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/mycelia_64.png
rename to src/assets/images/items/mycelia_64.png
diff --git a/www/assets/images/items/nobelisk-detonator_256.png b/src/assets/images/items/nobelisk-detonator_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/nobelisk-detonator_256.png
rename to src/assets/images/items/nobelisk-detonator_256.png
diff --git a/www/assets/images/items/nobelisk-detonator_64.png b/src/assets/images/items/nobelisk-detonator_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/nobelisk-detonator_64.png
rename to src/assets/images/items/nobelisk-detonator_64.png
diff --git a/www/assets/images/items/nobelisk_256.png b/src/assets/images/items/nobelisk_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/nobelisk_256.png
rename to src/assets/images/items/nobelisk_256.png
diff --git a/www/assets/images/items/nobelisk_64.png b/src/assets/images/items/nobelisk_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/nobelisk_64.png
rename to src/assets/images/items/nobelisk_64.png
diff --git a/www/assets/images/items/nuclear-fuel-rod_256.png b/src/assets/images/items/nuclear-fuel-rod_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/nuclear-fuel-rod_256.png
rename to src/assets/images/items/nuclear-fuel-rod_256.png
diff --git a/www/assets/images/items/nuclear-fuel-rod_64.png b/src/assets/images/items/nuclear-fuel-rod_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/nuclear-fuel-rod_64.png
rename to src/assets/images/items/nuclear-fuel-rod_64.png
diff --git a/www/assets/images/items/nuclear-power-plant_256.png b/src/assets/images/items/nuclear-power-plant_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/nuclear-power-plant_256.png
rename to src/assets/images/items/nuclear-power-plant_256.png
diff --git a/www/assets/images/items/nuclear-power-plant_64.png b/src/assets/images/items/nuclear-power-plant_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/nuclear-power-plant_64.png
rename to src/assets/images/items/nuclear-power-plant_64.png
diff --git a/www/assets/images/items/nuclear-waste_256.png b/src/assets/images/items/nuclear-waste_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/nuclear-waste_256.png
rename to src/assets/images/items/nuclear-waste_256.png
diff --git a/www/assets/images/items/nuclear-waste_64.png b/src/assets/images/items/nuclear-waste_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/nuclear-waste_64.png
rename to src/assets/images/items/nuclear-waste_64.png
diff --git a/www/assets/images/items/object-scanner_256.png b/src/assets/images/items/object-scanner_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/object-scanner_256.png
rename to src/assets/images/items/object-scanner_256.png
diff --git a/www/assets/images/items/object-scanner_64.png b/src/assets/images/items/object-scanner_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/object-scanner_64.png
rename to src/assets/images/items/object-scanner_64.png
diff --git a/www/assets/images/items/oil-extractor_256.png b/src/assets/images/items/oil-extractor_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/oil-extractor_256.png
rename to src/assets/images/items/oil-extractor_256.png
diff --git a/www/assets/images/items/oil-extractor_64.png b/src/assets/images/items/oil-extractor_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/oil-extractor_64.png
rename to src/assets/images/items/oil-extractor_64.png
diff --git a/www/assets/images/items/outer-corner-quarter-pipe_256.png b/src/assets/images/items/outer-corner-quarter-pipe_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/outer-corner-quarter-pipe_256.png
rename to src/assets/images/items/outer-corner-quarter-pipe_256.png
diff --git a/www/assets/images/items/outer-corner-quarter-pipe_64.png b/src/assets/images/items/outer-corner-quarter-pipe_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/outer-corner-quarter-pipe_64.png
rename to src/assets/images/items/outer-corner-quarter-pipe_64.png
diff --git a/www/assets/images/items/packaged-fuel_256.png b/src/assets/images/items/packaged-fuel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/packaged-fuel_256.png
rename to src/assets/images/items/packaged-fuel_256.png
diff --git a/www/assets/images/items/packaged-fuel_64.png b/src/assets/images/items/packaged-fuel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/packaged-fuel_64.png
rename to src/assets/images/items/packaged-fuel_64.png
diff --git a/www/assets/images/items/packaged-heavy-oil-residue_256.png b/src/assets/images/items/packaged-heavy-oil-residue_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/packaged-heavy-oil-residue_256.png
rename to src/assets/images/items/packaged-heavy-oil-residue_256.png
diff --git a/www/assets/images/items/packaged-heavy-oil-residue_64.png b/src/assets/images/items/packaged-heavy-oil-residue_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/packaged-heavy-oil-residue_64.png
rename to src/assets/images/items/packaged-heavy-oil-residue_64.png
diff --git a/www/assets/images/items/packaged-liquid-biofuel_256.png b/src/assets/images/items/packaged-liquid-biofuel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/packaged-liquid-biofuel_256.png
rename to src/assets/images/items/packaged-liquid-biofuel_256.png
diff --git a/www/assets/images/items/packaged-liquid-biofuel_64.png b/src/assets/images/items/packaged-liquid-biofuel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/packaged-liquid-biofuel_64.png
rename to src/assets/images/items/packaged-liquid-biofuel_64.png
diff --git a/www/assets/images/items/packaged-oil_256.png b/src/assets/images/items/packaged-oil_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/packaged-oil_256.png
rename to src/assets/images/items/packaged-oil_256.png
diff --git a/www/assets/images/items/packaged-oil_64.png b/src/assets/images/items/packaged-oil_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/packaged-oil_64.png
rename to src/assets/images/items/packaged-oil_64.png
diff --git a/www/assets/images/items/packaged-turbofuel_256.png b/src/assets/images/items/packaged-turbofuel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/packaged-turbofuel_256.png
rename to src/assets/images/items/packaged-turbofuel_256.png
diff --git a/www/assets/images/items/packaged-turbofuel_64.png b/src/assets/images/items/packaged-turbofuel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/packaged-turbofuel_64.png
rename to src/assets/images/items/packaged-turbofuel_64.png
diff --git a/www/assets/images/items/packaged-water_256.png b/src/assets/images/items/packaged-water_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/packaged-water_256.png
rename to src/assets/images/items/packaged-water_256.png
diff --git a/www/assets/images/items/packaged-water_64.png b/src/assets/images/items/packaged-water_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/packaged-water_64.png
rename to src/assets/images/items/packaged-water_64.png
diff --git a/www/assets/images/items/paleberry_256.png b/src/assets/images/items/paleberry_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/paleberry_256.png
rename to src/assets/images/items/paleberry_256.png
diff --git a/www/assets/images/items/paleberry_64.png b/src/assets/images/items/paleberry_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/paleberry_64.png
rename to src/assets/images/items/paleberry_64.png
diff --git a/www/assets/images/items/panel-window_256.png b/src/assets/images/items/panel-window_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/panel-window_256.png
rename to src/assets/images/items/panel-window_256.png
diff --git a/www/assets/images/items/panel-window_64.png b/src/assets/images/items/panel-window_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/panel-window_64.png
rename to src/assets/images/items/panel-window_64.png
diff --git a/www/assets/images/items/parachute_256.png b/src/assets/images/items/parachute_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/parachute_256.png
rename to src/assets/images/items/parachute_256.png
diff --git a/www/assets/images/items/parachute_64.png b/src/assets/images/items/parachute_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/parachute_64.png
rename to src/assets/images/items/parachute_64.png
diff --git a/www/assets/images/items/personal-storage-box_256.png b/src/assets/images/items/personal-storage-box_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/personal-storage-box_256.png
rename to src/assets/images/items/personal-storage-box_256.png
diff --git a/www/assets/images/items/personal-storage-box_64.png b/src/assets/images/items/personal-storage-box_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/personal-storage-box_64.png
rename to src/assets/images/items/personal-storage-box_64.png
diff --git a/www/assets/images/items/petroleum-coke_256.png b/src/assets/images/items/petroleum-coke_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/petroleum-coke_256.png
rename to src/assets/images/items/petroleum-coke_256.png
diff --git a/www/assets/images/items/petroleum-coke_64.png b/src/assets/images/items/petroleum-coke_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/petroleum-coke_64.png
rename to src/assets/images/items/petroleum-coke_64.png
diff --git a/www/assets/images/items/pillar-base_256.png b/src/assets/images/items/pillar-base_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pillar-base_256.png
rename to src/assets/images/items/pillar-base_256.png
diff --git a/www/assets/images/items/pillar-base_64.png b/src/assets/images/items/pillar-base_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pillar-base_64.png
rename to src/assets/images/items/pillar-base_64.png
diff --git a/www/assets/images/items/pillar-middle_256.png b/src/assets/images/items/pillar-middle_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pillar-middle_256.png
rename to src/assets/images/items/pillar-middle_256.png
diff --git a/www/assets/images/items/pillar-middle_64.png b/src/assets/images/items/pillar-middle_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pillar-middle_64.png
rename to src/assets/images/items/pillar-middle_64.png
diff --git a/www/assets/images/items/pillar-top_256.png b/src/assets/images/items/pillar-top_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pillar-top_256.png
rename to src/assets/images/items/pillar-top_256.png
diff --git a/www/assets/images/items/pillar-top_64.png b/src/assets/images/items/pillar-top_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pillar-top_64.png
rename to src/assets/images/items/pillar-top_64.png
diff --git a/www/assets/images/items/pipeline-junction-cross_256.png b/src/assets/images/items/pipeline-junction-cross_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pipeline-junction-cross_256.png
rename to src/assets/images/items/pipeline-junction-cross_256.png
diff --git a/www/assets/images/items/pipeline-junction-cross_64.png b/src/assets/images/items/pipeline-junction-cross_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pipeline-junction-cross_64.png
rename to src/assets/images/items/pipeline-junction-cross_64.png
diff --git a/www/assets/images/items/pipeline-pump_256.png b/src/assets/images/items/pipeline-pump_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pipeline-pump_256.png
rename to src/assets/images/items/pipeline-pump_256.png
diff --git a/www/assets/images/items/pipeline-pump_64.png b/src/assets/images/items/pipeline-pump_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pipeline-pump_64.png
rename to src/assets/images/items/pipeline-pump_64.png
diff --git a/www/assets/images/items/pipeline-support_256.png b/src/assets/images/items/pipeline-support_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pipeline-support_256.png
rename to src/assets/images/items/pipeline-support_256.png
diff --git a/www/assets/images/items/pipeline-support_64.png b/src/assets/images/items/pipeline-support_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pipeline-support_64.png
rename to src/assets/images/items/pipeline-support_64.png
diff --git a/www/assets/images/items/pipeline-wall-hole_256.png b/src/assets/images/items/pipeline-wall-hole_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pipeline-wall-hole_256.png
rename to src/assets/images/items/pipeline-wall-hole_256.png
diff --git a/www/assets/images/items/pipeline-wall-hole_64.png b/src/assets/images/items/pipeline-wall-hole_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pipeline-wall-hole_64.png
rename to src/assets/images/items/pipeline-wall-hole_64.png
diff --git a/www/assets/images/items/pipeline-wall-support_256.png b/src/assets/images/items/pipeline-wall-support_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pipeline-wall-support_256.png
rename to src/assets/images/items/pipeline-wall-support_256.png
diff --git a/www/assets/images/items/pipeline-wall-support_64.png b/src/assets/images/items/pipeline-wall-support_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pipeline-wall-support_64.png
rename to src/assets/images/items/pipeline-wall-support_64.png
diff --git a/www/assets/images/items/pipeline_256.png b/src/assets/images/items/pipeline_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pipeline_256.png
rename to src/assets/images/items/pipeline_256.png
diff --git a/www/assets/images/items/pipeline_64.png b/src/assets/images/items/pipeline_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/pipeline_64.png
rename to src/assets/images/items/pipeline_64.png
diff --git a/www/assets/images/items/plastic_256.png b/src/assets/images/items/plastic_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/plastic_256.png
rename to src/assets/images/items/plastic_256.png
diff --git a/www/assets/images/items/plastic_64.png b/src/assets/images/items/plastic_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/plastic_64.png
rename to src/assets/images/items/plastic_64.png
diff --git a/www/assets/images/items/polymer-resin_256.png b/src/assets/images/items/polymer-resin_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/polymer-resin_256.png
rename to src/assets/images/items/polymer-resin_256.png
diff --git a/www/assets/images/items/polymer-resin_64.png b/src/assets/images/items/polymer-resin_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/polymer-resin_64.png
rename to src/assets/images/items/polymer-resin_64.png
diff --git a/www/assets/images/items/portable-miner_256.png b/src/assets/images/items/portable-miner_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/portable-miner_256.png
rename to src/assets/images/items/portable-miner_256.png
diff --git a/www/assets/images/items/portable-miner_64.png b/src/assets/images/items/portable-miner_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/portable-miner_64.png
rename to src/assets/images/items/portable-miner_64.png
diff --git a/www/assets/images/items/power-line_256.png b/src/assets/images/items/power-line_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/power-line_256.png
rename to src/assets/images/items/power-line_256.png
diff --git a/www/assets/images/items/power-line_64.png b/src/assets/images/items/power-line_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/power-line_64.png
rename to src/assets/images/items/power-line_64.png
diff --git a/www/assets/images/items/power-pole-mk-1_256.png b/src/assets/images/items/power-pole-mk-1_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/power-pole-mk-1_256.png
rename to src/assets/images/items/power-pole-mk-1_256.png
diff --git a/www/assets/images/items/power-pole-mk-1_64.png b/src/assets/images/items/power-pole-mk-1_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/power-pole-mk-1_64.png
rename to src/assets/images/items/power-pole-mk-1_64.png
diff --git a/www/assets/images/items/power-pole-mk-2_256.png b/src/assets/images/items/power-pole-mk-2_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/power-pole-mk-2_256.png
rename to src/assets/images/items/power-pole-mk-2_256.png
diff --git a/www/assets/images/items/power-pole-mk-2_64.png b/src/assets/images/items/power-pole-mk-2_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/power-pole-mk-2_64.png
rename to src/assets/images/items/power-pole-mk-2_64.png
diff --git a/www/assets/images/items/power-pole-mk-3_256.png b/src/assets/images/items/power-pole-mk-3_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/power-pole-mk-3_256.png
rename to src/assets/images/items/power-pole-mk-3_256.png
diff --git a/www/assets/images/items/power-pole-mk-3_64.png b/src/assets/images/items/power-pole-mk-3_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/power-pole-mk-3_64.png
rename to src/assets/images/items/power-pole-mk-3_64.png
diff --git a/www/assets/images/items/power-shard_256.png b/src/assets/images/items/power-shard_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/power-shard_256.png
rename to src/assets/images/items/power-shard_256.png
diff --git a/www/assets/images/items/power-shard_64.png b/src/assets/images/items/power-shard_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/power-shard_64.png
rename to src/assets/images/items/power-shard_64.png
diff --git a/www/assets/images/items/programmable-splitter_256.png b/src/assets/images/items/programmable-splitter_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/programmable-splitter_256.png
rename to src/assets/images/items/programmable-splitter_256.png
diff --git a/www/assets/images/items/programmable-splitter_64.png b/src/assets/images/items/programmable-splitter_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/programmable-splitter_64.png
rename to src/assets/images/items/programmable-splitter_64.png
diff --git a/www/assets/images/items/purple-power-slug_256.png b/src/assets/images/items/purple-power-slug_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/purple-power-slug_256.png
rename to src/assets/images/items/purple-power-slug_256.png
diff --git a/www/assets/images/items/purple-power-slug_64.png b/src/assets/images/items/purple-power-slug_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/purple-power-slug_64.png
rename to src/assets/images/items/purple-power-slug_64.png
diff --git a/www/assets/images/items/quarter-pipe_256.png b/src/assets/images/items/quarter-pipe_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/quarter-pipe_256.png
rename to src/assets/images/items/quarter-pipe_256.png
diff --git a/www/assets/images/items/quarter-pipe_64.png b/src/assets/images/items/quarter-pipe_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/quarter-pipe_64.png
rename to src/assets/images/items/quarter-pipe_64.png
diff --git a/www/assets/images/items/quartz-crystal_256.png b/src/assets/images/items/quartz-crystal_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/quartz-crystal_256.png
rename to src/assets/images/items/quartz-crystal_256.png
diff --git a/www/assets/images/items/quartz-crystal_64.png b/src/assets/images/items/quartz-crystal_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/quartz-crystal_64.png
rename to src/assets/images/items/quartz-crystal_64.png
diff --git a/www/assets/images/items/quickwire_256.png b/src/assets/images/items/quickwire_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/quickwire_256.png
rename to src/assets/images/items/quickwire_256.png
diff --git a/www/assets/images/items/quickwire_64.png b/src/assets/images/items/quickwire_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/quickwire_64.png
rename to src/assets/images/items/quickwire_64.png
diff --git a/www/assets/images/items/radar-tower_256.png b/src/assets/images/items/radar-tower_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/radar-tower_256.png
rename to src/assets/images/items/radar-tower_256.png
diff --git a/www/assets/images/items/radar-tower_64.png b/src/assets/images/items/radar-tower_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/radar-tower_64.png
rename to src/assets/images/items/radar-tower_64.png
diff --git a/www/assets/images/items/radio-control-unit_256.png b/src/assets/images/items/radio-control-unit_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/radio-control-unit_256.png
rename to src/assets/images/items/radio-control-unit_256.png
diff --git a/www/assets/images/items/radio-control-unit_64.png b/src/assets/images/items/radio-control-unit_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/radio-control-unit_64.png
rename to src/assets/images/items/radio-control-unit_64.png
diff --git a/www/assets/images/items/railway_256.png b/src/assets/images/items/railway_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/railway_256.png
rename to src/assets/images/items/railway_256.png
diff --git a/www/assets/images/items/railway_64.png b/src/assets/images/items/railway_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/railway_64.png
rename to src/assets/images/items/railway_64.png
diff --git a/www/assets/images/items/ramp-8m-x-1m_256.png b/src/assets/images/items/ramp-8m-x-1m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/ramp-8m-x-1m_256.png
rename to src/assets/images/items/ramp-8m-x-1m_256.png
diff --git a/www/assets/images/items/ramp-8m-x-1m_64.png b/src/assets/images/items/ramp-8m-x-1m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/ramp-8m-x-1m_64.png
rename to src/assets/images/items/ramp-8m-x-1m_64.png
diff --git a/www/assets/images/items/ramp-8m-x-2m_256.png b/src/assets/images/items/ramp-8m-x-2m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/ramp-8m-x-2m_256.png
rename to src/assets/images/items/ramp-8m-x-2m_256.png
diff --git a/www/assets/images/items/ramp-8m-x-2m_64.png b/src/assets/images/items/ramp-8m-x-2m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/ramp-8m-x-2m_64.png
rename to src/assets/images/items/ramp-8m-x-2m_64.png
diff --git a/www/assets/images/items/ramp-8m-x-4m_256.png b/src/assets/images/items/ramp-8m-x-4m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/ramp-8m-x-4m_256.png
rename to src/assets/images/items/ramp-8m-x-4m_256.png
diff --git a/www/assets/images/items/ramp-8m-x-4m_64.png b/src/assets/images/items/ramp-8m-x-4m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/ramp-8m-x-4m_64.png
rename to src/assets/images/items/ramp-8m-x-4m_64.png
diff --git a/www/assets/images/items/raw-quartz_256.png b/src/assets/images/items/raw-quartz_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/raw-quartz_256.png
rename to src/assets/images/items/raw-quartz_256.png
diff --git a/www/assets/images/items/raw-quartz_64.png b/src/assets/images/items/raw-quartz_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/raw-quartz_64.png
rename to src/assets/images/items/raw-quartz_64.png
diff --git a/www/assets/images/items/rebar-gun_256.png b/src/assets/images/items/rebar-gun_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/rebar-gun_256.png
rename to src/assets/images/items/rebar-gun_256.png
diff --git a/www/assets/images/items/rebar-gun_64.png b/src/assets/images/items/rebar-gun_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/rebar-gun_64.png
rename to src/assets/images/items/rebar-gun_64.png
diff --git a/www/assets/images/items/refinery_256.png b/src/assets/images/items/refinery_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/refinery_256.png
rename to src/assets/images/items/refinery_256.png
diff --git a/www/assets/images/items/refinery_64.png b/src/assets/images/items/refinery_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/refinery_64.png
rename to src/assets/images/items/refinery_64.png
diff --git a/www/assets/images/items/reinforced-iron-plate_256.png b/src/assets/images/items/reinforced-iron-plate_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/reinforced-iron-plate_256.png
rename to src/assets/images/items/reinforced-iron-plate_256.png
diff --git a/www/assets/images/items/reinforced-iron-plate_64.png b/src/assets/images/items/reinforced-iron-plate_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/reinforced-iron-plate_64.png
rename to src/assets/images/items/reinforced-iron-plate_64.png
diff --git a/www/assets/images/items/reinforced-window_256.png b/src/assets/images/items/reinforced-window_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/reinforced-window_256.png
rename to src/assets/images/items/reinforced-window_256.png
diff --git a/www/assets/images/items/reinforced-window_64.png b/src/assets/images/items/reinforced-window_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/reinforced-window_64.png
rename to src/assets/images/items/reinforced-window_64.png
diff --git a/www/assets/images/items/rifle-cartridge_256.png b/src/assets/images/items/rifle-cartridge_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/rifle-cartridge_256.png
rename to src/assets/images/items/rifle-cartridge_256.png
diff --git a/www/assets/images/items/rifle-cartridge_64.png b/src/assets/images/items/rifle-cartridge_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/rifle-cartridge_64.png
rename to src/assets/images/items/rifle-cartridge_64.png
diff --git a/www/assets/images/items/rifle_256.png b/src/assets/images/items/rifle_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/rifle_256.png
rename to src/assets/images/items/rifle_256.png
diff --git a/www/assets/images/items/rifle_64.png b/src/assets/images/items/rifle_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/rifle_64.png
rename to src/assets/images/items/rifle_64.png
diff --git a/www/assets/images/items/right-door-wall-steel_256.png b/src/assets/images/items/right-door-wall-steel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/right-door-wall-steel_256.png
rename to src/assets/images/items/right-door-wall-steel_256.png
diff --git a/www/assets/images/items/right-door-wall-steel_64.png b/src/assets/images/items/right-door-wall-steel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/right-door-wall-steel_64.png
rename to src/assets/images/items/right-door-wall-steel_64.png
diff --git a/www/assets/images/items/right-door-wall_256.png b/src/assets/images/items/right-door-wall_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/right-door-wall_256.png
rename to src/assets/images/items/right-door-wall_256.png
diff --git a/www/assets/images/items/right-door-wall_64.png b/src/assets/images/items/right-door-wall_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/right-door-wall_64.png
rename to src/assets/images/items/right-door-wall_64.png
diff --git a/www/assets/images/items/rotor_256.png b/src/assets/images/items/rotor_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/rotor_256.png
rename to src/assets/images/items/rotor_256.png
diff --git a/www/assets/images/items/rotor_64.png b/src/assets/images/items/rotor_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/rotor_64.png
rename to src/assets/images/items/rotor_64.png
diff --git a/www/assets/images/items/rubber_256.png b/src/assets/images/items/rubber_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/rubber_256.png
rename to src/assets/images/items/rubber_256.png
diff --git a/www/assets/images/items/rubber_64.png b/src/assets/images/items/rubber_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/rubber_64.png
rename to src/assets/images/items/rubber_64.png
diff --git a/www/assets/images/items/screw_256.png b/src/assets/images/items/screw_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/screw_256.png
rename to src/assets/images/items/screw_256.png
diff --git a/www/assets/images/items/screw_64.png b/src/assets/images/items/screw_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/screw_64.png
rename to src/assets/images/items/screw_64.png
diff --git a/www/assets/images/items/silica_256.png b/src/assets/images/items/silica_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/silica_256.png
rename to src/assets/images/items/silica_256.png
diff --git a/www/assets/images/items/silica_64.png b/src/assets/images/items/silica_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/silica_64.png
rename to src/assets/images/items/silica_64.png
diff --git a/www/assets/images/items/single-window_256.png b/src/assets/images/items/single-window_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/single-window_256.png
rename to src/assets/images/items/single-window_256.png
diff --git a/www/assets/images/items/single-window_64.png b/src/assets/images/items/single-window_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/single-window_64.png
rename to src/assets/images/items/single-window_64.png
diff --git a/www/assets/images/items/smart-plating_256.png b/src/assets/images/items/smart-plating_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/smart-plating_256.png
rename to src/assets/images/items/smart-plating_256.png
diff --git a/www/assets/images/items/smart-plating_64.png b/src/assets/images/items/smart-plating_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/smart-plating_64.png
rename to src/assets/images/items/smart-plating_64.png
diff --git a/www/assets/images/items/smart-splitter_256.png b/src/assets/images/items/smart-splitter_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/smart-splitter_256.png
rename to src/assets/images/items/smart-splitter_256.png
diff --git a/www/assets/images/items/smart-splitter_64.png b/src/assets/images/items/smart-splitter_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/smart-splitter_64.png
rename to src/assets/images/items/smart-splitter_64.png
diff --git a/www/assets/images/items/smelter_256.png b/src/assets/images/items/smelter_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/smelter_256.png
rename to src/assets/images/items/smelter_256.png
diff --git a/www/assets/images/items/smelter_64.png b/src/assets/images/items/smelter_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/smelter_64.png
rename to src/assets/images/items/smelter_64.png
diff --git a/www/assets/images/items/solid-biofuel_256.png b/src/assets/images/items/solid-biofuel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/solid-biofuel_256.png
rename to src/assets/images/items/solid-biofuel_256.png
diff --git a/www/assets/images/items/solid-biofuel_64.png b/src/assets/images/items/solid-biofuel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/solid-biofuel_64.png
rename to src/assets/images/items/solid-biofuel_64.png
diff --git a/www/assets/images/items/space-elevator_256.png b/src/assets/images/items/space-elevator_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/space-elevator_256.png
rename to src/assets/images/items/space-elevator_256.png
diff --git a/www/assets/images/items/space-elevator_64.png b/src/assets/images/items/space-elevator_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/space-elevator_64.png
rename to src/assets/images/items/space-elevator_64.png
diff --git a/www/assets/images/items/spiked-rebar_256.png b/src/assets/images/items/spiked-rebar_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/spiked-rebar_256.png
rename to src/assets/images/items/spiked-rebar_256.png
diff --git a/www/assets/images/items/spiked-rebar_64.png b/src/assets/images/items/spiked-rebar_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/spiked-rebar_64.png
rename to src/assets/images/items/spiked-rebar_64.png
diff --git a/www/assets/images/items/stackable-conveyor-pole_256.png b/src/assets/images/items/stackable-conveyor-pole_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/stackable-conveyor-pole_256.png
rename to src/assets/images/items/stackable-conveyor-pole_256.png
diff --git a/www/assets/images/items/stackable-conveyor-pole_64.png b/src/assets/images/items/stackable-conveyor-pole_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/stackable-conveyor-pole_64.png
rename to src/assets/images/items/stackable-conveyor-pole_64.png
diff --git a/www/assets/images/items/stackable-hyper-tube-support_256.png b/src/assets/images/items/stackable-hyper-tube-support_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/stackable-hyper-tube-support_256.png
rename to src/assets/images/items/stackable-hyper-tube-support_256.png
diff --git a/www/assets/images/items/stackable-hyper-tube-support_64.png b/src/assets/images/items/stackable-hyper-tube-support_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/stackable-hyper-tube-support_64.png
rename to src/assets/images/items/stackable-hyper-tube-support_64.png
diff --git a/www/assets/images/items/stackable-pipeline-support_256.png b/src/assets/images/items/stackable-pipeline-support_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/stackable-pipeline-support_256.png
rename to src/assets/images/items/stackable-pipeline-support_256.png
diff --git a/www/assets/images/items/stackable-pipeline-support_64.png b/src/assets/images/items/stackable-pipeline-support_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/stackable-pipeline-support_64.png
rename to src/assets/images/items/stackable-pipeline-support_64.png
diff --git a/www/assets/images/items/stairs-left_256.png b/src/assets/images/items/stairs-left_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/stairs-left_256.png
rename to src/assets/images/items/stairs-left_256.png
diff --git a/www/assets/images/items/stairs-left_64.png b/src/assets/images/items/stairs-left_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/stairs-left_64.png
rename to src/assets/images/items/stairs-left_64.png
diff --git a/www/assets/images/items/stairs-right_256.png b/src/assets/images/items/stairs-right_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/stairs-right_256.png
rename to src/assets/images/items/stairs-right_256.png
diff --git a/www/assets/images/items/stairs-right_64.png b/src/assets/images/items/stairs-right_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/stairs-right_64.png
rename to src/assets/images/items/stairs-right_64.png
diff --git a/www/assets/images/items/stator_256.png b/src/assets/images/items/stator_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/stator_256.png
rename to src/assets/images/items/stator_256.png
diff --git a/www/assets/images/items/stator_64.png b/src/assets/images/items/stator_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/stator_64.png
rename to src/assets/images/items/stator_64.png
diff --git a/www/assets/images/items/steel-beam_256.png b/src/assets/images/items/steel-beam_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/steel-beam_256.png
rename to src/assets/images/items/steel-beam_256.png
diff --git a/www/assets/images/items/steel-beam_64.png b/src/assets/images/items/steel-beam_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/steel-beam_64.png
rename to src/assets/images/items/steel-beam_64.png
diff --git a/www/assets/images/items/steel-ingot_256.png b/src/assets/images/items/steel-ingot_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/steel-ingot_256.png
rename to src/assets/images/items/steel-ingot_256.png
diff --git a/www/assets/images/items/steel-ingot_64.png b/src/assets/images/items/steel-ingot_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/steel-ingot_64.png
rename to src/assets/images/items/steel-ingot_64.png
diff --git a/www/assets/images/items/steel-pipe_256.png b/src/assets/images/items/steel-pipe_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/steel-pipe_256.png
rename to src/assets/images/items/steel-pipe_256.png
diff --git a/www/assets/images/items/steel-pipe_64.png b/src/assets/images/items/steel-pipe_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/steel-pipe_64.png
rename to src/assets/images/items/steel-pipe_64.png
diff --git a/www/assets/images/items/storage-container_256.png b/src/assets/images/items/storage-container_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/storage-container_256.png
rename to src/assets/images/items/storage-container_256.png
diff --git a/www/assets/images/items/storage-container_64.png b/src/assets/images/items/storage-container_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/storage-container_64.png
rename to src/assets/images/items/storage-container_64.png
diff --git a/www/assets/images/items/sulfur_256.png b/src/assets/images/items/sulfur_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/sulfur_256.png
rename to src/assets/images/items/sulfur_256.png
diff --git a/www/assets/images/items/sulfur_64.png b/src/assets/images/items/sulfur_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/sulfur_64.png
rename to src/assets/images/items/sulfur_64.png
diff --git a/www/assets/images/items/sulfuric-acid_256.png b/src/assets/images/items/sulfuric-acid_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/sulfuric-acid_256.png
rename to src/assets/images/items/sulfuric-acid_256.png
diff --git a/www/assets/images/items/sulfuric-acid_64.png b/src/assets/images/items/sulfuric-acid_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/sulfuric-acid_64.png
rename to src/assets/images/items/sulfuric-acid_64.png
diff --git a/www/assets/images/items/supercomputer_256.png b/src/assets/images/items/supercomputer_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/supercomputer_256.png
rename to src/assets/images/items/supercomputer_256.png
diff --git a/www/assets/images/items/supercomputer_64.png b/src/assets/images/items/supercomputer_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/supercomputer_64.png
rename to src/assets/images/items/supercomputer_64.png
diff --git a/www/assets/images/items/the-hub_256.png b/src/assets/images/items/the-hub_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/the-hub_256.png
rename to src/assets/images/items/the-hub_256.png
diff --git a/www/assets/images/items/the-hub_64.png b/src/assets/images/items/the-hub_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/the-hub_64.png
rename to src/assets/images/items/the-hub_64.png
diff --git a/www/assets/images/items/tilted-jump-pad_256.png b/src/assets/images/items/tilted-jump-pad_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/tilted-jump-pad_256.png
rename to src/assets/images/items/tilted-jump-pad_256.png
diff --git a/www/assets/images/items/tilted-jump-pad_64.png b/src/assets/images/items/tilted-jump-pad_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/tilted-jump-pad_64.png
rename to src/assets/images/items/tilted-jump-pad_64.png
diff --git a/www/assets/images/items/tractor_256.png b/src/assets/images/items/tractor_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/tractor_256.png
rename to src/assets/images/items/tractor_256.png
diff --git a/www/assets/images/items/tractor_64.png b/src/assets/images/items/tractor_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/tractor_64.png
rename to src/assets/images/items/tractor_64.png
diff --git a/www/assets/images/items/train-station_256.png b/src/assets/images/items/train-station_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/train-station_256.png
rename to src/assets/images/items/train-station_256.png
diff --git a/www/assets/images/items/train-station_64.png b/src/assets/images/items/train-station_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/train-station_64.png
rename to src/assets/images/items/train-station_64.png
diff --git a/www/assets/images/items/truck-station_256.png b/src/assets/images/items/truck-station_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/truck-station_256.png
rename to src/assets/images/items/truck-station_256.png
diff --git a/www/assets/images/items/truck-station_64.png b/src/assets/images/items/truck-station_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/truck-station_64.png
rename to src/assets/images/items/truck-station_64.png
diff --git a/www/assets/images/items/truck_256.png b/src/assets/images/items/truck_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/truck_256.png
rename to src/assets/images/items/truck_256.png
diff --git a/www/assets/images/items/truck_64.png b/src/assets/images/items/truck_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/truck_64.png
rename to src/assets/images/items/truck_64.png
diff --git a/www/assets/images/items/turbo-motor_256.png b/src/assets/images/items/turbo-motor_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/turbo-motor_256.png
rename to src/assets/images/items/turbo-motor_256.png
diff --git a/www/assets/images/items/turbo-motor_64.png b/src/assets/images/items/turbo-motor_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/turbo-motor_64.png
rename to src/assets/images/items/turbo-motor_64.png
diff --git a/www/assets/images/items/turbofuel_256.png b/src/assets/images/items/turbofuel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/turbofuel_256.png
rename to src/assets/images/items/turbofuel_256.png
diff --git a/www/assets/images/items/turbofuel_64.png b/src/assets/images/items/turbofuel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/turbofuel_64.png
rename to src/assets/images/items/turbofuel_64.png
diff --git a/www/assets/images/items/u-jelly-landing-pad_256.png b/src/assets/images/items/u-jelly-landing-pad_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/u-jelly-landing-pad_256.png
rename to src/assets/images/items/u-jelly-landing-pad_256.png
diff --git a/www/assets/images/items/u-jelly-landing-pad_64.png b/src/assets/images/items/u-jelly-landing-pad_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/u-jelly-landing-pad_64.png
rename to src/assets/images/items/u-jelly-landing-pad_64.png
diff --git a/www/assets/images/items/up-corner-8m-x-1m-inverted_256.png b/src/assets/images/items/up-corner-8m-x-1m-inverted_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/up-corner-8m-x-1m-inverted_256.png
rename to src/assets/images/items/up-corner-8m-x-1m-inverted_256.png
diff --git a/www/assets/images/items/up-corner-8m-x-1m-inverted_64.png b/src/assets/images/items/up-corner-8m-x-1m-inverted_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/up-corner-8m-x-1m-inverted_64.png
rename to src/assets/images/items/up-corner-8m-x-1m-inverted_64.png
diff --git a/www/assets/images/items/up-corner-8m-x-2m-inverted_256.png b/src/assets/images/items/up-corner-8m-x-2m-inverted_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/up-corner-8m-x-2m-inverted_256.png
rename to src/assets/images/items/up-corner-8m-x-2m-inverted_256.png
diff --git a/www/assets/images/items/up-corner-8m-x-2m-inverted_64.png b/src/assets/images/items/up-corner-8m-x-2m-inverted_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/up-corner-8m-x-2m-inverted_64.png
rename to src/assets/images/items/up-corner-8m-x-2m-inverted_64.png
diff --git a/www/assets/images/items/up-corner-8m-x-4m-inverted_256.png b/src/assets/images/items/up-corner-8m-x-4m-inverted_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/up-corner-8m-x-4m-inverted_256.png
rename to src/assets/images/items/up-corner-8m-x-4m-inverted_256.png
diff --git a/www/assets/images/items/up-corner-8m-x-4m-inverted_64.png b/src/assets/images/items/up-corner-8m-x-4m-inverted_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/up-corner-8m-x-4m-inverted_64.png
rename to src/assets/images/items/up-corner-8m-x-4m-inverted_64.png
diff --git a/www/assets/images/items/up-corner-ramp-8m-x-1m_256.png b/src/assets/images/items/up-corner-ramp-8m-x-1m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/up-corner-ramp-8m-x-1m_256.png
rename to src/assets/images/items/up-corner-ramp-8m-x-1m_256.png
diff --git a/www/assets/images/items/up-corner-ramp-8m-x-1m_64.png b/src/assets/images/items/up-corner-ramp-8m-x-1m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/up-corner-ramp-8m-x-1m_64.png
rename to src/assets/images/items/up-corner-ramp-8m-x-1m_64.png
diff --git a/www/assets/images/items/up-corner-ramp-8m-x-2m_256.png b/src/assets/images/items/up-corner-ramp-8m-x-2m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/up-corner-ramp-8m-x-2m_256.png
rename to src/assets/images/items/up-corner-ramp-8m-x-2m_256.png
diff --git a/www/assets/images/items/up-corner-ramp-8m-x-2m_64.png b/src/assets/images/items/up-corner-ramp-8m-x-2m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/up-corner-ramp-8m-x-2m_64.png
rename to src/assets/images/items/up-corner-ramp-8m-x-2m_64.png
diff --git a/www/assets/images/items/up-corner-ramp-8m-x-4m_256.png b/src/assets/images/items/up-corner-ramp-8m-x-4m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/up-corner-ramp-8m-x-4m_256.png
rename to src/assets/images/items/up-corner-ramp-8m-x-4m_256.png
diff --git a/www/assets/images/items/up-corner-ramp-8m-x-4m_64.png b/src/assets/images/items/up-corner-ramp-8m-x-4m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/up-corner-ramp-8m-x-4m_64.png
rename to src/assets/images/items/up-corner-ramp-8m-x-4m_64.png
diff --git a/www/assets/images/items/uranium-pellet_256.png b/src/assets/images/items/uranium-pellet_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/uranium-pellet_256.png
rename to src/assets/images/items/uranium-pellet_256.png
diff --git a/www/assets/images/items/uranium-pellet_64.png b/src/assets/images/items/uranium-pellet_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/uranium-pellet_64.png
rename to src/assets/images/items/uranium-pellet_64.png
diff --git a/www/assets/images/items/uranium_256.png b/src/assets/images/items/uranium_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/uranium_256.png
rename to src/assets/images/items/uranium_256.png
diff --git a/www/assets/images/items/uranium_64.png b/src/assets/images/items/uranium_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/uranium_64.png
rename to src/assets/images/items/uranium_64.png
diff --git a/www/assets/images/items/versatile-framework_256.png b/src/assets/images/items/versatile-framework_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/versatile-framework_256.png
rename to src/assets/images/items/versatile-framework_256.png
diff --git a/www/assets/images/items/versatile-framework_64.png b/src/assets/images/items/versatile-framework_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/versatile-framework_64.png
rename to src/assets/images/items/versatile-framework_64.png
diff --git a/www/assets/images/items/walkway-crossing_256.png b/src/assets/images/items/walkway-crossing_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/walkway-crossing_256.png
rename to src/assets/images/items/walkway-crossing_256.png
diff --git a/www/assets/images/items/walkway-crossing_64.png b/src/assets/images/items/walkway-crossing_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/walkway-crossing_64.png
rename to src/assets/images/items/walkway-crossing_64.png
diff --git a/www/assets/images/items/walkway-ramp_256.png b/src/assets/images/items/walkway-ramp_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/walkway-ramp_256.png
rename to src/assets/images/items/walkway-ramp_256.png
diff --git a/www/assets/images/items/walkway-ramp_64.png b/src/assets/images/items/walkway-ramp_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/walkway-ramp_64.png
rename to src/assets/images/items/walkway-ramp_64.png
diff --git a/www/assets/images/items/walkway-straight_256.png b/src/assets/images/items/walkway-straight_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/walkway-straight_256.png
rename to src/assets/images/items/walkway-straight_256.png
diff --git a/www/assets/images/items/walkway-straight_64.png b/src/assets/images/items/walkway-straight_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/walkway-straight_64.png
rename to src/assets/images/items/walkway-straight_64.png
diff --git a/www/assets/images/items/walkway-t-crossing_256.png b/src/assets/images/items/walkway-t-crossing_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/walkway-t-crossing_256.png
rename to src/assets/images/items/walkway-t-crossing_256.png
diff --git a/www/assets/images/items/walkway-t-crossing_64.png b/src/assets/images/items/walkway-t-crossing_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/walkway-t-crossing_64.png
rename to src/assets/images/items/walkway-t-crossing_64.png
diff --git a/www/assets/images/items/walkway-turn_256.png b/src/assets/images/items/walkway-turn_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/walkway-turn_256.png
rename to src/assets/images/items/walkway-turn_256.png
diff --git a/www/assets/images/items/walkway-turn_64.png b/src/assets/images/items/walkway-turn_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/walkway-turn_64.png
rename to src/assets/images/items/walkway-turn_64.png
diff --git a/www/assets/images/items/wall-8m-x-4m-steel_256.png b/src/assets/images/items/wall-8m-x-4m-steel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-8m-x-4m-steel_256.png
rename to src/assets/images/items/wall-8m-x-4m-steel_256.png
diff --git a/www/assets/images/items/wall-8m-x-4m-steel_64.png b/src/assets/images/items/wall-8m-x-4m-steel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-8m-x-4m-steel_64.png
rename to src/assets/images/items/wall-8m-x-4m-steel_64.png
diff --git a/www/assets/images/items/wall-8m-x-4m_256.png b/src/assets/images/items/wall-8m-x-4m_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-8m-x-4m_256.png
rename to src/assets/images/items/wall-8m-x-4m_256.png
diff --git a/www/assets/images/items/wall-8m-x-4m_64.png b/src/assets/images/items/wall-8m-x-4m_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-8m-x-4m_64.png
rename to src/assets/images/items/wall-8m-x-4m_64.png
diff --git a/www/assets/images/items/wall-conveyor-perpendicular-steel_256.png b/src/assets/images/items/wall-conveyor-perpendicular-steel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-perpendicular-steel_256.png
rename to src/assets/images/items/wall-conveyor-perpendicular-steel_256.png
diff --git a/www/assets/images/items/wall-conveyor-perpendicular-steel_64.png b/src/assets/images/items/wall-conveyor-perpendicular-steel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-perpendicular-steel_64.png
rename to src/assets/images/items/wall-conveyor-perpendicular-steel_64.png
diff --git a/www/assets/images/items/wall-conveyor-perpendicular_256.png b/src/assets/images/items/wall-conveyor-perpendicular_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-perpendicular_256.png
rename to src/assets/images/items/wall-conveyor-perpendicular_256.png
diff --git a/www/assets/images/items/wall-conveyor-perpendicular_64.png b/src/assets/images/items/wall-conveyor-perpendicular_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-perpendicular_64.png
rename to src/assets/images/items/wall-conveyor-perpendicular_64.png
diff --git a/www/assets/images/items/wall-conveyor-x1-steel_256.png b/src/assets/images/items/wall-conveyor-x1-steel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-x1-steel_256.png
rename to src/assets/images/items/wall-conveyor-x1-steel_256.png
diff --git a/www/assets/images/items/wall-conveyor-x1-steel_64.png b/src/assets/images/items/wall-conveyor-x1-steel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-x1-steel_64.png
rename to src/assets/images/items/wall-conveyor-x1-steel_64.png
diff --git a/www/assets/images/items/wall-conveyor-x1_256.png b/src/assets/images/items/wall-conveyor-x1_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-x1_256.png
rename to src/assets/images/items/wall-conveyor-x1_256.png
diff --git a/www/assets/images/items/wall-conveyor-x1_64.png b/src/assets/images/items/wall-conveyor-x1_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-x1_64.png
rename to src/assets/images/items/wall-conveyor-x1_64.png
diff --git a/www/assets/images/items/wall-conveyor-x2-steel_256.png b/src/assets/images/items/wall-conveyor-x2-steel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-x2-steel_256.png
rename to src/assets/images/items/wall-conveyor-x2-steel_256.png
diff --git a/www/assets/images/items/wall-conveyor-x2-steel_64.png b/src/assets/images/items/wall-conveyor-x2-steel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-x2-steel_64.png
rename to src/assets/images/items/wall-conveyor-x2-steel_64.png
diff --git a/www/assets/images/items/wall-conveyor-x2_256.png b/src/assets/images/items/wall-conveyor-x2_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-x2_256.png
rename to src/assets/images/items/wall-conveyor-x2_256.png
diff --git a/www/assets/images/items/wall-conveyor-x2_64.png b/src/assets/images/items/wall-conveyor-x2_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-x2_64.png
rename to src/assets/images/items/wall-conveyor-x2_64.png
diff --git a/www/assets/images/items/wall-conveyor-x3-steel_256.png b/src/assets/images/items/wall-conveyor-x3-steel_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-x3-steel_256.png
rename to src/assets/images/items/wall-conveyor-x3-steel_256.png
diff --git a/www/assets/images/items/wall-conveyor-x3-steel_64.png b/src/assets/images/items/wall-conveyor-x3-steel_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-x3-steel_64.png
rename to src/assets/images/items/wall-conveyor-x3-steel_64.png
diff --git a/www/assets/images/items/wall-conveyor-x3_256.png b/src/assets/images/items/wall-conveyor-x3_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-x3_256.png
rename to src/assets/images/items/wall-conveyor-x3_256.png
diff --git a/www/assets/images/items/wall-conveyor-x3_64.png b/src/assets/images/items/wall-conveyor-x3_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-conveyor-x3_64.png
rename to src/assets/images/items/wall-conveyor-x3_64.png
diff --git a/www/assets/images/items/wall-outlet-mk-1_256.png b/src/assets/images/items/wall-outlet-mk-1_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-outlet-mk-1_256.png
rename to src/assets/images/items/wall-outlet-mk-1_256.png
diff --git a/www/assets/images/items/wall-outlet-mk-1_64.png b/src/assets/images/items/wall-outlet-mk-1_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-outlet-mk-1_64.png
rename to src/assets/images/items/wall-outlet-mk-1_64.png
diff --git a/www/assets/images/items/wall-outlet-mk-2_256.png b/src/assets/images/items/wall-outlet-mk-2_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-outlet-mk-2_256.png
rename to src/assets/images/items/wall-outlet-mk-2_256.png
diff --git a/www/assets/images/items/wall-outlet-mk-2_64.png b/src/assets/images/items/wall-outlet-mk-2_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-outlet-mk-2_64.png
rename to src/assets/images/items/wall-outlet-mk-2_64.png
diff --git a/www/assets/images/items/wall-outlet-mk-3_256.png b/src/assets/images/items/wall-outlet-mk-3_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-outlet-mk-3_256.png
rename to src/assets/images/items/wall-outlet-mk-3_256.png
diff --git a/www/assets/images/items/wall-outlet-mk-3_64.png b/src/assets/images/items/wall-outlet-mk-3_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wall-outlet-mk-3_64.png
rename to src/assets/images/items/wall-outlet-mk-3_64.png
diff --git a/www/assets/images/items/water-extractor_256.png b/src/assets/images/items/water-extractor_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/water-extractor_256.png
rename to src/assets/images/items/water-extractor_256.png
diff --git a/www/assets/images/items/water-extractor_64.png b/src/assets/images/items/water-extractor_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/water-extractor_64.png
rename to src/assets/images/items/water-extractor_64.png
diff --git a/www/assets/images/items/water_256.png b/src/assets/images/items/water_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/water_256.png
rename to src/assets/images/items/water_256.png
diff --git a/www/assets/images/items/water_64.png b/src/assets/images/items/water_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/water_64.png
rename to src/assets/images/items/water_64.png
diff --git a/www/assets/images/items/wire_256.png b/src/assets/images/items/wire_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wire_256.png
rename to src/assets/images/items/wire_256.png
diff --git a/www/assets/images/items/wire_64.png b/src/assets/images/items/wire_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wire_64.png
rename to src/assets/images/items/wire_64.png
diff --git a/www/assets/images/items/wood_256.png b/src/assets/images/items/wood_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wood_256.png
rename to src/assets/images/items/wood_256.png
diff --git a/www/assets/images/items/wood_64.png b/src/assets/images/items/wood_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/wood_64.png
rename to src/assets/images/items/wood_64.png
diff --git a/www/assets/images/items/xeno-basher_256.png b/src/assets/images/items/xeno-basher_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/xeno-basher_256.png
rename to src/assets/images/items/xeno-basher_256.png
diff --git a/www/assets/images/items/xeno-basher_64.png b/src/assets/images/items/xeno-basher_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/xeno-basher_64.png
rename to src/assets/images/items/xeno-basher_64.png
diff --git a/www/assets/images/items/xeno-zapper_256.png b/src/assets/images/items/xeno-zapper_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/xeno-zapper_256.png
rename to src/assets/images/items/xeno-zapper_256.png
diff --git a/www/assets/images/items/xeno-zapper_64.png b/src/assets/images/items/xeno-zapper_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/xeno-zapper_64.png
rename to src/assets/images/items/xeno-zapper_64.png
diff --git a/www/assets/images/items/yellow-power-slug_256.png b/src/assets/images/items/yellow-power-slug_256.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/yellow-power-slug_256.png
rename to src/assets/images/items/yellow-power-slug_256.png
diff --git a/www/assets/images/items/yellow-power-slug_64.png b/src/assets/images/items/yellow-power-slug_64.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/items/yellow-power-slug_64.png
rename to src/assets/images/items/yellow-power-slug_64.png
diff --git a/www/assets/images/logo/satisfactorySmall.png b/src/assets/images/logo/satisfactorySmall.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/logo/satisfactorySmall.png
rename to src/assets/images/logo/satisfactorySmall.png
diff --git a/www/assets/images/logo/tools.png b/src/assets/images/logo/tools.png
old mode 100644
new mode 100755
similarity index 100%
rename from www/assets/images/logo/tools.png
rename to src/assets/images/logo/tools.png
diff --git a/styles/bootstrap.scss b/styles/bootstrap.scss
old mode 100644
new mode 100755
diff --git a/styles/production.scss b/styles/production.scss
old mode 100644
new mode 100755
index 5345ca79..91638e8c
--- a/styles/production.scss
+++ b/styles/production.scss
@@ -1,5 +1,4 @@
@import 'theme/theme_variables';
-
$defaultPadding: 8px;
$maxEntryWidth: 48px;
$maxEntryHeight: 48px;
diff --git a/styles/recipe-list.scss b/styles/recipe-list.scss
old mode 100644
new mode 100755
diff --git a/styles/style.scss b/styles/style.scss
old mode 100644
new mode 100755
index 794d2bb1..147a31a7
--- a/styles/style.scss
+++ b/styles/style.scss
@@ -1,7 +1,19 @@
-@import '~ui-bootstrap4/dist/ui-bootstrap-csp.css';
-@import "~perfect-scrollbar/css/perfect-scrollbar.css";
@import 'recipe-list.scss';
@import 'production.scss';
+@import "~bootstrap-scss/bootstrap";
+//@import '~perfect-scrollbar/css/perfect-scrollbar.css';
+//@import "~ladda/dist/ladda-themeless.min.css";
+
+$fa-font-path: '~@fortawesome/fontawesome-free/webfonts';
+@import '~@fortawesome/fontawesome-free/scss/fontawesome';
+@import '~@fortawesome/fontawesome-free/scss/solid';
+@import '~@fortawesome/fontawesome-free/scss/regular';
+@import '~@fortawesome/fontawesome-free/scss/brands';
+@import '~@fortawesome/fontawesome-free/scss/v4-shims';
+
+@import '~primeng/resources/primeng.min.css';
+@import '~primeicons/primeicons.css';
+@import '~primeng/resources/themes/bootstrap4-light-blue/theme.css';
// hey bootswatch, we don't need microtext, thx!
.navbar, .dropdown-menu, .dropdown-header, .table, label, .radio label, .checkbox label, .help-block {
@@ -32,10 +44,6 @@
}
}
-.disabled {
- cursor: not-allowed;
-}
-
.navbar-brand {
padding-top: 0;
padding-bottom: 0;
@@ -98,3 +106,43 @@ table.two-columns {
width: 50%;
}
}
+
+
+.dropdown-menu {
+ &.dropdown-menu-right {
+ min-width: 250px;
+ }
+}
+
+.disabled, [disabled="disabled"], [aria-disabled] {
+ cursor: not-allowed !important;
+}
+
+.flex-fill-fx {
+ flex: 1
+}
+
+.ngx-slider-floor, .ngx-slider-ceil, .ngx-slider-model-value {
+ color: #fff !important;;
+}
+
+.p-dropdown.p-component {
+ width: 100%;
+ border-radius: 0;
+ background: #dee2e6;
+ border: 1px solid transparent;
+ margin-top: 1px;
+
+ &:focus, &:active, &.p-dropdown-open {
+ background: #fff;
+ }
+
+ .p-inputtext {
+ padding: 0.3rem 0.75rem;
+ }
+}
+.nav.nav-tabs{
+ .nav-link{
+ color: #fff;
+ }
+}
diff --git a/styles/theme/_theme_bootswatch.scss b/styles/theme/_theme_bootswatch.scss
old mode 100644
new mode 100755
diff --git a/styles/theme/_theme_variables.scss b/styles/theme/_theme_variables.scss
old mode 100644
new mode 100755
diff --git a/templates/Components/applicationBreadcrumbs.html b/templates/Components/applicationBreadcrumbs.html
old mode 100644
new mode 100755
diff --git a/templates/Components/bootstrap4Breadcrumbs.html b/templates/Components/bootstrap4Breadcrumbs.html
old mode 100644
new mode 100755
diff --git a/templates/Components/buildingFilters.html b/templates/Components/buildingFilters.html
old mode 100644
new mode 100755
diff --git a/templates/Components/codexComponent.html b/templates/Components/codexComponent.html
old mode 100644
new mode 100755
diff --git a/templates/Components/entityListing.html b/templates/Components/entityListing.html
old mode 100644
new mode 100755
diff --git a/templates/Components/extractorDetails.html b/templates/Components/extractorDetails.html
old mode 100644
new mode 100755
diff --git a/templates/Components/extractorResources.html b/templates/Components/extractorResources.html
old mode 100644
new mode 100755
diff --git a/templates/Components/generatorDetails.html b/templates/Components/generatorDetails.html
old mode 100644
new mode 100755
diff --git a/templates/Components/generatorFuels.html b/templates/Components/generatorFuels.html
old mode 100644
new mode 100755
diff --git a/templates/Components/itemFilters.html b/templates/Components/itemFilters.html
old mode 100644
new mode 100755
diff --git a/templates/Components/manufacturerDetails.html b/templates/Components/manufacturerDetails.html
old mode 100644
new mode 100755
diff --git a/templates/Components/manufacturerRecipes.html b/templates/Components/manufacturerRecipes.html
old mode 100644
new mode 100755
diff --git a/templates/Components/otherBuildingDetails.html b/templates/Components/otherBuildingDetails.html
old mode 100644
new mode 100755
diff --git a/templates/Components/recipesTable.html b/templates/Components/recipesTable.html
old mode 100644
new mode 100755
diff --git a/templates/Components/schematicFilters.html b/templates/Components/schematicFilters.html
old mode 100644
new mode 100755
diff --git a/templates/Controllers/building.html b/templates/Controllers/building.html
old mode 100644
new mode 100755
diff --git a/templates/Controllers/home.html b/templates/Controllers/home.html
old mode 100644
new mode 100755
diff --git a/templates/Controllers/item.html b/templates/Controllers/item.html
old mode 100644
new mode 100755
diff --git a/templates/Controllers/production.html b/templates/Controllers/production.html
old mode 100644
new mode 100755
diff --git a/templates/Controllers/schematic.html b/templates/Controllers/schematic.html
old mode 100644
new mode 100755
diff --git a/templates/Directives/app.html b/templates/Directives/app.html
old mode 100644
new mode 100755
diff --git a/templates/Directives/itemIcon.html b/templates/Directives/itemIcon.html
old mode 100644
new mode 100755
diff --git a/templates/index.html b/templates/index.html
new file mode 100755
index 00000000..dc2501ff
--- /dev/null
+++ b/templates/index.html
@@ -0,0 +1,119 @@
+
+
+
+
+
+ Satisfactory Tools
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/templates/root.html b/templates/root.html
old mode 100644
new mode 100755
diff --git a/tsconfig.app.json b/tsconfig.app.json
new file mode 100755
index 00000000..bf4fd8fb
--- /dev/null
+++ b/tsconfig.app.json
@@ -0,0 +1,14 @@
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "outDir": "./out-tsc/app",
+ "types": []
+ },
+ "files": [
+ "configuration/main.ts",
+ "configuration/polyfills.ts"
+ ],
+ "include": [
+ "src/**/*.d.ts"
+ ]
+}
diff --git a/tsconfig.json b/tsconfig.json
old mode 100644
new mode 100755
index 9771680b..9b7fcf45
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -1,23 +1,41 @@
{
"compilerOptions": {
- "baseUrl": ".",
- "sourceMap": false,
+ "baseUrl": "./",
+ "outDir": "./dist/out-tsc",
+ "sourceMap": true,
+ "declaration": false,
+ "downlevelIteration": true,
+ "experimentalDecorators": true,
+ "module": "esnext",
"moduleResolution": "node",
- "alwaysStrict": true,
- "strictNullChecks": true,
- "noImplicitAny": true,
+ "importHelpers": true,
+ "target": "es2015",
"resolveJsonModule": true,
- "esModuleInterop": true,
+ "allowSyntheticDefaultImports": true,
"lib": [
- "esnext",
+ "es2018",
"dom"
],
- "target": "es5",
"paths": {
- "@src/*": ["./src/*"],
- "@data/*": ["./data/*"],
- "@bin/*": ["./bin/*"],
- "@templates/*": ["./templates/*"]
+ "@data/*": [
+ "./data/*"
+ ],
+ "@modules/*": [
+ "./src/Modules/*"
+ ],
+ "@tools/*": [
+ "./src/Tools/*"
+ ],
+ "@utils/*": [
+ "./src/Utils/*"
+ ],
+ "@src/*": [
+ "./src/*"
+ ]
}
+ },
+ "angularCompilerOptions": {
+ "fullTemplateTypeCheck": true,
+ "strictInjectionParameters": true
}
}
diff --git a/tsconfig.spec.json b/tsconfig.spec.json
new file mode 100755
index 00000000..92a0a802
--- /dev/null
+++ b/tsconfig.spec.json
@@ -0,0 +1,18 @@
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "outDir": "./out-tsc/spec",
+ "types": [
+ "jasmine",
+ "node"
+ ]
+ },
+ "files": [
+ "configuration/test.ts",
+ "configuration/polyfills.ts"
+ ],
+ "include": [
+ "src/**/*.spec.ts",
+ "src/**/*.d.ts"
+ ]
+}
diff --git a/tslint.json b/tslint.json
old mode 100644
new mode 100755
diff --git a/webpack.config.js b/webpack.config.js
old mode 100644
new mode 100755
diff --git a/www/.htaccess b/www/.htaccess
deleted file mode 100644
index 4cfc52ed..00000000
--- a/www/.htaccess
+++ /dev/null
@@ -1,28 +0,0 @@
-# Apache configuration file (see https://httpd.apache.org/docs/current/mod/quickreference.html)
-Allow from all
-
-# disable directory listing
-
- Options -Indexes
-
-
-# enable cool URL
-
- RewriteEngine On
- # RewriteBase /
-
- # prevents files starting with dot to be viewed by browser
- RewriteRule /\.|^\.(?!well-known/) - [F]
-
- # front controller
- RewriteCond %{REQUEST_FILENAME} !-f
- RewriteCond %{REQUEST_FILENAME} !-d
- RewriteRule !\.(pdf|js|ico|gif|jpg|png|css|rar|zip|tar\.gz|map)$ index.php [L]
-
-
-# enable gzip compression
-
-
- AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/javascript application/json application/xml image/svg+xml
-
-
diff --git a/www/assets/css/fontawesome.min.css b/www/assets/css/fontawesome.min.css
deleted file mode 100644
index d16a4d55..00000000
--- a/www/assets/css/fontawesome.min.css
+++ /dev/null
@@ -1,5 +0,0 @@
-/*!
- * Font Awesome Free 5.12.1 by @fontawesome - https://fontawesome.com
- * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
- */
-.fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\f952"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\f907"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-handshake:before{content:"\f2b5"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\f913"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\f955"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\f91a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\f956"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\f91e"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopify:before{content:"\f957"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swift:before{content:"\f8e1"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\f941"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\f949"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:400;font-display:auto;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:auto;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.fab,.far{font-weight:400}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:auto;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:"Font Awesome 5 Free"}.fa,.fas{font-weight:900}
\ No newline at end of file
diff --git a/www/assets/webfonts/fa-brands-400.eot b/www/assets/webfonts/fa-brands-400.eot
deleted file mode 100644
index e4ccce2d..00000000
Binary files a/www/assets/webfonts/fa-brands-400.eot and /dev/null differ
diff --git a/www/assets/webfonts/fa-brands-400.svg b/www/assets/webfonts/fa-brands-400.svg
deleted file mode 100644
index eb0f26fc..00000000
--- a/www/assets/webfonts/fa-brands-400.svg
+++ /dev/null
@@ -1,3570 +0,0 @@
-
-
-
-
diff --git a/www/assets/webfonts/fa-brands-400.ttf b/www/assets/webfonts/fa-brands-400.ttf
deleted file mode 100644
index 08622a3b..00000000
Binary files a/www/assets/webfonts/fa-brands-400.ttf and /dev/null differ
diff --git a/www/assets/webfonts/fa-brands-400.woff b/www/assets/webfonts/fa-brands-400.woff
deleted file mode 100644
index a43870c2..00000000
Binary files a/www/assets/webfonts/fa-brands-400.woff and /dev/null differ
diff --git a/www/assets/webfonts/fa-brands-400.woff2 b/www/assets/webfonts/fa-brands-400.woff2
deleted file mode 100644
index 3c5189de..00000000
Binary files a/www/assets/webfonts/fa-brands-400.woff2 and /dev/null differ
diff --git a/www/assets/webfonts/fa-regular-400.eot b/www/assets/webfonts/fa-regular-400.eot
deleted file mode 100644
index dbc06a4a..00000000
Binary files a/www/assets/webfonts/fa-regular-400.eot and /dev/null differ
diff --git a/www/assets/webfonts/fa-regular-400.svg b/www/assets/webfonts/fa-regular-400.svg
deleted file mode 100644
index 273a9841..00000000
--- a/www/assets/webfonts/fa-regular-400.svg
+++ /dev/null
@@ -1,803 +0,0 @@
-
-
-
-
diff --git a/www/assets/webfonts/fa-regular-400.ttf b/www/assets/webfonts/fa-regular-400.ttf
deleted file mode 100644
index 4b6fdef6..00000000
Binary files a/www/assets/webfonts/fa-regular-400.ttf and /dev/null differ
diff --git a/www/assets/webfonts/fa-regular-400.woff b/www/assets/webfonts/fa-regular-400.woff
deleted file mode 100644
index f17953a7..00000000
Binary files a/www/assets/webfonts/fa-regular-400.woff and /dev/null differ
diff --git a/www/assets/webfonts/fa-regular-400.woff2 b/www/assets/webfonts/fa-regular-400.woff2
deleted file mode 100644
index 1f796c75..00000000
Binary files a/www/assets/webfonts/fa-regular-400.woff2 and /dev/null differ
diff --git a/www/assets/webfonts/fa-solid-900.eot b/www/assets/webfonts/fa-solid-900.eot
deleted file mode 100644
index 550f8f02..00000000
Binary files a/www/assets/webfonts/fa-solid-900.eot and /dev/null differ
diff --git a/www/assets/webfonts/fa-solid-900.svg b/www/assets/webfonts/fa-solid-900.svg
deleted file mode 100644
index 6933b2b5..00000000
--- a/www/assets/webfonts/fa-solid-900.svg
+++ /dev/null
@@ -1,4700 +0,0 @@
-
-
-
-
diff --git a/www/assets/webfonts/fa-solid-900.ttf b/www/assets/webfonts/fa-solid-900.ttf
deleted file mode 100644
index 9dd8c7fd..00000000
Binary files a/www/assets/webfonts/fa-solid-900.ttf and /dev/null differ
diff --git a/www/assets/webfonts/fa-solid-900.woff b/www/assets/webfonts/fa-solid-900.woff
deleted file mode 100644
index 3c9ef934..00000000
Binary files a/www/assets/webfonts/fa-solid-900.woff and /dev/null differ
diff --git a/www/assets/webfonts/fa-solid-900.woff2 b/www/assets/webfonts/fa-solid-900.woff2
deleted file mode 100644
index ba7507b1..00000000
Binary files a/www/assets/webfonts/fa-solid-900.woff2 and /dev/null differ
diff --git a/www/index.php b/www/index.php
deleted file mode 100644
index 99810a6c..00000000
--- a/www/index.php
+++ /dev/null
@@ -1,138 +0,0 @@
-
-
-
-
-
- Satisfactory Tools
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-