private void Enter(Flow flow) { newDatabase = databaseIn.GetValue <Database>(); if (newDatabase.cells.Keys.Contains(new Vector3(column.GetValue <int>(), row.GetValue <int>(), depth.GetValue <int>()))) { newDatabase.cells[new Vector3(column.GetValue <int>(), row.GetValue <int>(), depth.GetValue <int>())] = value.GetValue <object>(); Flow _flow = Flow.New(); _flow.Invoke(exit); _flow.Dispose(); } else { if (row.GetValue <int>() <= 0 || column.GetValue <int>() <= 0 || depth.GetValue <int>() <= 0) { throw new NullReferenceException("You can't have a 0 row, 0 column, or 0 depth database."); } else { throw new NullReferenceException("Cell in column '" + column.ToString() + "', row '" + row.ToString() + "', depth '" + depth.ToString() + "' does not exist.You do not have enough rows or columns."); } } }