DevOpsThoughts is a community initiative aims to teach the best practices in DevOps through a multi-platform application which targets variety of technologies. DevOps is one of the most emerging topics of software development today as it improves the whole software development process, but unfortunately, there is no clear, detailed and explicit model to teach the best DevOps & Software Engineering practices on real world projects, this was the main problem that lead to DevOpsThoughts community establishment.
DevOpsThoughts teaches the best practices on a series of real world e-commerce projects, each of which is
- Named after an animal name (We love animals, who doesn't?)
- Built with a specific set of technologies
- Is a branch in the DevOpsThoughts E-Commerce repository
Visualization is the best way to understand DevOpsThoughts architecture, below is a list of useful diagrams to explain this.
- Architecture Diagram: which is a graphical representation of concepts, elements and their usage within the application
- Use Case Diagram: a representation for all interractions within the solution.
- Project Explorer View: A screenshot from Visual Studio for the whole solution.
Run the following commands and replace the BranchName with the name of the branch you want to clone.
git clone https://github.com/DevOpsThoughts/E-Commerce.git -b BranchName cd E-Commerce
DevOpsThoughts Rabbit is the first project in DevOpsThoughts Series. It's an e-commerce website built with the following technologies:
- ASP.NET MVC 5
- Microsoft SQL Server 2014
- Modern UI Tools & Frameworks, Like Twitter Bootstrap & Font-Awesome
Below is the homepage for DevOpsThoughts Rabbit
As we're developing a model for learning, we had to make a precise plan for the whole development process, using Scrum, user stories and behavior driven development (BDD) we can simply but the plan into this list:
User Stories & Product Backlog Items (PBIs)
- User Story is a description of a specific functionality from an end-user perspective.
- Product Backlog Itemis a single unit of work, here we mapped each user story to a PBI, so a PBI is a user story plus acceptance criteria, priority and tags.
- Action Criteria: Is the options available for use and system respond to it.
- Input Validation Criteria: Used only when there is an input forms being used to clarify each input type, boundaries and importance.
- Initial PBIs: Contains each PBI's Title, Order, Tag and description (Description is the user story).
- Detailed PBIs: Contains the initial PBIs content with enhancements to maintain consistency, plus the acceptance criteria.
Below is the sample for Vendor's login Initial PBI.
Another sample for Vendor's login Detailed PBI.
You can click here to view the complete list of all Basic Work Flow PBIs
Test Cases are very important for Behavior driven development, In DevOpsThoughts, we have test cases written on three levels
- Conceptual Test Cases
- Functional Test Cases
- Usability & Functional Test Cases
Conceptual Test Cases
Conceptual Test Cases are the most abstract form of test cases made with conceptual input only for purpose of conceptualizing the flow itself.
Functional Test Cases
Functional Test Cases made for testing the application functionality without discussing UI elements or UX, just making sure the application outputs the suitable output when some input is provided.
Usability & Functional Test Cases
Usability & Functional Test Cases are the most detailed test cases, it cares not only for functionality as functional test cases, but also for the way application responds to user actions from user experience (UX) and user interface (UI) perspective.
Use Case Scenarios
Use Case Scenario is a list of user actions and system response to it. In DevOpsThoughts, we map each PBI to a single use case scenario. Each scenario has the following:
- Related PBI: The related PBI name & Id.
- Main Actors List: A list of all actors involved in the specified use case.
- Pre-conditions: A list of all conditions that must be met before the use case starts in order for the use case to be valid, example: Vendor has been logged in to his account.
- Basic Flow: or what we call sometimes Happy Path is the normal expected flow for the use case with the default system settings, where the use case is expected to succeed as per main actors expectations.
- Alternative Flows: If available, alternative flows of a use case are the flows where main actors expectations are not met yet.
- Post-conditions: A list of all conditions that must be met after the use case ends in order for the use case to be valid, example: Order was saved in the application.
- Initial Use Cases: Have the above structure, but with more abstraction level, so not much attention was giving to the details, but to make simple process outlining.
- Detailed Use Cases: Have the same structure as the initial use cases, but with more details, like the input/output information and user controls available.
Below is the sample for Display Products List Initial Use Case Scenario.
Another sample for Display Products List Detailed Use Case Scenario.
Mockups are very basic UI representation used to deliver an abstract format of the expected to UI design to a UI developer from end-user or product owner perspective.
Mockups are usually made using a basic photo edition application like MS Paint or Paint.NET.
Level of Details
Mockups usually represents only an abstract view of a webpage, Only spaces occupied and by which elements, doesn't include icons, content nor colors.
PhotoShop Designs (PSDs)
Based on Test Cases, Basic Mockups and PBIs, the final PSDs are made for the Project, A PSD file is a Photoshop Design file which can be edited later, PSD files are kept up-to-date with any modifications made to the UI.
Level of Details
PSD Designs are made while keeping attention to details. We can - from logical point of view - look to the Basic Mockups as initial designs, while the PSDs are the detailed designs.
Below is a sample for the Final PSD Design for the homepage, and it's identical with the screenshot for the homepage at the very beginning of this readme file.
Website components are simply the source code for UI, alongside with any elements used in the UI such as images, icons and libraries. The Website components isn't only used for Rabbit, but the same are used for other versions of the project which is using web as a presentation layer. Developing the website components uses PSDs as an input, each PSD is converted - as it is - to be a separate web page. We gave much importance to utilize and minify all of UI source files. After each PSD is converted, it is reviewed on two levels
- External: Which is making sure that the web page matches 100% the provided PSD.
- Internal: Which is checking for source code quality, readability and if the code is minified.
A Storyboarding is an illustration for a user interaction with application story, not to be confused with user stories, in storyboarding we use visual images arrayed together for user interaction with the application to represent. Storyboards are easier to be remembered than other written Test Cases, as it shows the real UX, not just some text about it. In DevOpsThoughts we use Microsoft Office's PowerPoint, which allows develops to make an animated representation of User interaction with application UI quickly with higher quality. If we look to the PSDs and Basic Mockups as a User Interface representation, we should consider Storyboarding to be the User Experience Representation.
To give the application some reality, we have added more than 400 Products, and we're still adding more frequently. For each product, the following information is added
- Code: A unique alphanumerical code used to identify each product.
- Title: The main title for the product itself.
- Description: A detailed description about the product in text, used to promote the product but not for the technical specs, is it's described in another part.
- Category Id: The Id for category where product is assigned too, but this isn't being displayed explicitly to application users, But it's the actual way a product is linked to category.
- Category Name: this is what vendors see when they add the product, and members/visitors see when they search for products of a specific category.
- Brand: This is the manufacturer brand, example: Microsoft, HP, Nokia.
- Reward Points: Points which is added to each user so he can receive rewards after making purchases with a specific amount.
- Price: The Original Price for the product.
- Discount: The discount amount on the product, if any.
- Specification: A Key, Value map of all technical specification for a product, key value maps are used to give flexibility with different kinds of products.
- Key Features: Text representation of product Key features.
- Image: A URL for the product image.
Pages List Grouped By User Roles
- Home page
- Product List Page
- Product Details Page
- Shopping Cart (Check Out) Cascading Menu Sub Page
- Shopping Cart (Check Out) Page
- Login Page
- Add/Edit Delivery Address Page
- Order Complete Page
- Order Confirmation email
- Registration Page
- Forget the Password
- Display/Edit Account Info
- Order List Page
- Addresses List Page
- Payment Page (Note#6)
- Dashboard (Member Home page)
- Order List Page
- Order Details Page
- Edit Order Page
- Add/Edit Product
- Dashboard (Control Panel Home page)
- Confirmation Message (Sub Page)
- Loading (Sub Page or image)
- Notification, Error, Warning
Architecture diagram is a graphical representation of System components and how thery're (components) are groupped together. The UML Architecture Diagram gives use a general overview of how the system works and its principles.
Use Case Diagram
Use Case Diagram is UML Diagram used to represent different interactions with the system. The Use Case Diagram also acts as an input for making PBIs and User Stories.
Below is the Use Case Diagram we have in DevOpsThoughts.
Below a screenshot from Microsoft Visual Studio's Solution Explorer for the different layers used in DevOpsThoughts.
List of Basic Work Flow Product Backlog Items (PBIs)
This is the complete list of BWF PBIs:
- Display special offer products in a slider
- Display top featured products in a slider
- Display top new arrival products in a slider
- Display top hot sale products in a slider
- Display top best selling products in a slider
- Display random products in a slider
- Display all main and sub categories of products
- Display products of a selected category
- Provide paging for product lists
- Access shopping cart from the home page
- Display product detailed information
- Add product to the shopping cart
- Remove product from shopping cart
- Review products in shopping cart
- Add delivery address for the order
- Review order before checkout
- Place order after review as member
- Place order after review as guest
- Display all order made by visitors and members
- Update completed order
- Display orders history for members
- Provide membership for visitors
- Login to the member site
- Login to the vendor panel
- Login to the admin panel
- Add product to the store
- Display all added products
- Update product data
- Display all orders made by all users for all vendors
- Update order status
- Display order detailed information
- Recover forgotten password
- Change password
About The Founder
Mohamed Radwan is Visual Studio MVP (Microsoft Most Valuable Professional) for 5 consecutive years and a DevOps Practice Lead. He focuses on providing solutions for the various roles involved in software development and delivery process to enable them to build better software through Agile Methodologies and utilization of Microsoft Visual Studio ALM/DevOps Tools and Technologies.
Mohamed has been working in software development industry for more than 17 years, starting as a classic ASP developer in the year 2000 them moving to different roles as a senior developer, team leader, lead architect. For the last 7 years he has been passionate and focused about DevOps practices and automation.
Mohamed also worked in several countries in different regions, including United Kingdom, Sweden, Denmark, Egypt, Saudi Arabia, Kuwait, Oman, Libya.
Through his journey, he got the opportunity to work and help hundreds of companies to improve their software delivery practices. He also issued a lot of guides for TFS (Team Foundation Server), developed many extensions for Visual Studio, made many open source libraries and projects on GitHub and authored many tutorials on YouTube, his blog and other communities. He is also a regular speaker and participated in many local and regional conferences and events in all countries where He worked in.


Join MVPs Simon Sabin, James Rowland-Jones, Chris Webb, Martin Bell, Darren Green and Allan Mitchell for SQLBits!
SQLBits is the UK’s largest SQL Server conference and takes place on November 19th-21st at Celtic Manor Resort in Newport, South Wales. Registrations are now open.
This year’s event spans three days, and includes a full-day of pre-conference seminars on Thursday 19th, further details be found here.
On Friday 20th a pay-to-attend conference day is devoted to SQL 2008 and R2, where top SQL Server speakers will be presenting on topics such as Madison, Gemini, StreamInsight, Master Data Services and Report Builder 3.0. Further details are available here.
Finally, on Saturday 21st the main SQLBits community conference day is held. The community day is free to attend, and will feature at least four tracks with five sessions each covering all aspects of SQL Server from including DBA, development and BI. Session submissions have now closed and voting is open so attendees can decide which sessions they’d like to see; you can see a taster of submitted sessions here.
For further details, and event pricing are available here.
Is there any online mean to attend this conference.
You can connect directly with the conference
organisers through the link below.


Once upon a time a child got a test consisting of multiple-choice questions as homework. A multiple-choice question consists of four choices: A, B, C and D. Each choice has a description, and the child should find out the only one that is correct.

Fortunately the child knows how to solve such complicated test. The child will follow the algorithm:

- If there is some choice whose description at least twice shorter than all other descriptions, or at least twice longer than all other descriptions, then the child thinks the choice is great.
- If there is exactly one great choice then the child chooses it. Otherwise the child chooses C (the child think it is the luckiest choice).

You are given a multiple-choice questions, can you predict child's choose?


Jason Sanders is a senior software engineer in the CUDA Platform group at NVIDIA. While at NVIDIA, he helped develop early releases of CUDA system software and contributed to the OpenCL 1.0 Specification, an industry standard for heterogeneous computing. Jason received his master’s degree in computer science from the University of California Berkeley where he published research in GPU computing, and he holds a bachelor’s degree in electrical engineering from Princeton University. Prior to joining NVIDIA, he previously held positions at ATI Technologies, Apple, and Novell. When he’s not writing books, Jason is typically working out, playing soccer, or shooting photos.
Edward Kandrot is a senior software engineer on the CUDA Algorithms team at NVIDIA. He has more than twenty years of industry experience focused on optimizing code and improving performance, including for Photoshop and Mozilla. Kandrot has worked for Adobe, Microsoft, and Google, and he has been a consultant at many companies, including Apple and Autodesk. When not coding, he can be found playing World of Warcraft or visiting Las Vegas for the amazing food.


/* Copyright 2017 Streampunk Media Ltd.

  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
*/

#ifndef IDEBUG_H
#define IDEBUG_H

#include <cstdarg>
#include <stdio.h>

namespace streampunk {

enum eDebugLevel { eFatal = 0, eError, eWarn, eInfo, eDebug, eTrace };

class iDebug {
public:
  iDebug() : mDebugLevel(eInfo) {}
  iDebug(eDebugLevel debugLevel) : mDebugLevel(debugLevel) {}
  virtual ~iDebug() {}

  void setDebug(eDebugLevel level)  { mDebugLevel = level; }
  void printDebug(eDebugLevel level, const char * format, ... ) {
    if (level <= mDebugLevel) {
      va_list argptr;
      va_start(argptr, format);
      vprintf(format, argptr);
      va_end(argptr);
    }
  }
protected:
  eDebugLevel mDebugLevel;
};

} // namespace streampunk

#endif


September 25, 2022, 7:33pm
I would like to specify a different file than runtests.jl when runing test from Pkg. Something like:
pkg> test file=anotherfile.jl
The file would still reside in the test directory. But that would allow me to avoid editing runtests.jl and commenting in/out lines like
Thanks for your help.
Not directly responsive to your question, but do take a look at the new
test item framework in the VS Code extension, it allows you to run a very fine-grained selection of tests easily.
September 25, 2022, 8:20pm
How did you guess I was using VS code?
Anyway, how do I install the VS code extension? I have seen the option to install additional testing extensions but I see a long list of possibilities and nothing looking like testitems. Can you help?
It’s all baked into the Julia extension!
Oh, I didn’t, that is why I wrote that this is not really responsive to your question. I just wanted to point out an alternative.
And yes, the entire feature is just part of the Julia extension for VS Code, as
September 26, 2022, 9:33pm
I am missing something.
I have version 1.7.12 as can be seen in the first screenshot.
In the second screenshot you can see a sentence in French saying: “Tests not found in this workspace”. Then I am told to “configure a test framework”. I guess that’s the part I did not do.
Then you see an irrelevant option for Python testing (God forbid)
Then an option to install further stuff.
Can you help? Please.
September 27, 2022, 1:00am
I think I got it.
The debugger needs to be started first.
Thanks. We can close this.
Hm, no, that should be entirely independent of the debugger. But the language server needs to finish its startup, and that sometimes takes a while.
September 27, 2022, 11:33am
You’re right about the debugger. I got the correct display for a while. Then I lost it.
The language server had plenty of time to start after 1 hour of trial.
I tested again this morning and checked the language server. It started without error. Still, nothing to see in the test section. A VS code bug maybe. I don’t know. I give up for now. I’ll comment out the files I don’t want to test.
Thanks for your patience.
Just dropping my testing workflow:
First, I test everything with (where
TestEnv.jl is installed globally):
julia> using Pkg; Pkg.activate("."); using TestEnv; TestEnv.activate(); include("test/runtests.jl")
For any further test runs, I do:


#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdint.h>
#include <SDL.h>
#include <termios.h>
#include <unistd.h>
#undef CTRL
#include "dolos2x.h"

static SDL_Window* sdlWindow;
static SDL_Renderer* sdlRenderer;
static struct termios old_tio, new_tio;

static void memHookCallback(uc_engine *uc, uc_mem_type type, uint64_t address, uint32_t size, int64_t value, void *user_data) {
  uint32_t pc;
  uc_reg_read(uc, UC_ARM_REG_PC, &pc);

  printf("Tried to access 0x%x 0x%x at PC = 0x%x\n", address, size, pc);
}

int init() {
  sdlWindow = SDL_CreateWindow("dolos2x", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 1280, 960, 0);
  sdlRenderer = SDL_CreateRenderer(sdlWindow, -1, SDL_RENDERER_ACCELERATED);

  return 0;
}

void cleanup() {
  SDL_DestroyRenderer(sdlRenderer);
  SDL_DestroyWindow(sdlWindow);
  SDL_Quit();
  tcsetattr(STDIN_FILENO, TCSANOW, &old_tio);
  printf("\n");
}

int main(int argc, char* argv[]) {
  if(init() || initCpus()) {
    return 1;
  }

  tcgetattr(STDIN_FILENO, &old_tio);
  new_tio = old_tio;
  tcsetattr(STDIN_FILENO,TCSANOW, &old_tio);
  new_tio.c_lflag &=(~ICANON & ~ECHO);
  tcsetattr(STDIN_FILENO, TCSANOW, &new_tio);

  uc_engine* arm920 = getArm920();

  if(initNand() ||
     initTimer() ||
     initMMSP2() ||
     initNet2272(false) ||
     readBootBlock(getRam()) ||
     initVideo(sdlRenderer) ||
     initGPIO() ||
     initUart() ||
     initSD()
    ) {
    return 1;
  }

  #ifdef DEBUG
  traceCode();
  #endif

  uc_hook memHook;
  uc_hook_add(arm920, &memHook, UC_HOOK_MEM_UNMAPPED, memHookCallback, NULL, 1, 0);

  atexit(cleanup);

  //  addBreakpoint(0xC00082b0);
  //addBreakpoint(0xc0008284);

  startExecution();

  uint32_t pc;
  uc_reg_read(arm920, UC_ARM_REG_PC, &pc);

  return 0;
}


/******************************************************************************
** File Name:      BootModeObj.h                                            *
** Author:         Apple Gao                                                 *
** DATE:           07/22/2004                                                *
** Copyright:      Spreatrum, Incoporated. All Rights Reserved.              *
** Description:    This files contains dll interface.                        *
******************************************************************************

******************************************************************************
**                        Edit History                                       *
** ------------------------------------------------------------------------- *
** DATE				NAME				DESCRIPTION                          *
** 07/21/2004		Apple Gao			Create.							     *
******************************************************************************/

#ifndef _BOOTMODEOBJ_H
#      define	_BOOTMODEOBJ_H

/**---------------------------------------------------------------------------*
**                         Dependencies                                      *
**---------------------------------------------------------------------------*/
#      include "Global.h"
#      include "BMFileImpl.h"
#      include "ICommChannel.h"
#      include "BootModeIntegOpr.h"
#      include "BootModeitf.h"
#      include <map>
#      include <pthread.h>

class CBootModeObj
{
	public:
	  CBootModeObj ();
	  virtual ~ CBootModeObj ();

	public:
	  STDMETHOD (SetWaitTimeForNextChip) ( /*[in] */ DWORD dwWaitTime =
					      CHANGE_CHIP_TIMEOUT);

	  STDMETHOD (StopBootModeOperation) ();

	  STDMETHOD (StartBootModeOperation) (
						       /*[in] */ void
						       *lpBMFileInfo,
						       /*[in] */
						       UINT uFileCount,
						       /*[in] */
						       void *pOpenArgument,
						       /*[in] */
						       BOOL bBigEndian,
						       /*[in] */
						       DWORD dwOprCookie,
						       /*[in] */
						       void *pReceiver);

	  STDMETHOD (SetCommunicateChannelPtr) ( /*[in] */ LPVOID
						pCommunicateChannel);

	  STDMETHOD (GetCommunicateChannelPtr) ( /*[out] */ LPVOID *
						ppCommunicateChannel);

	  //IBMOprSubscriber
	  STDMETHOD (SubscribeOperationObserver) (IBMOprObserver * pSink,
						  ULONG uFlags,
						  DWORD * lpdwCookie);

	  STDMETHOD (UnsubscribeOperationObserver) (DWORD dwCookie);

	  //IBMOprBuffer
	  STDMETHOD_ (const LPBYTE, GetReadBuffer) ();

	    STDMETHOD_ (DWORD, GetReadBufferSize) ();

	    STDMETHOD_ (void, EnablePortSecondEnum) (BOOL bEnable);

	protected:

	  static void *GetBMThreadFunc (void *lpParam);
	  void *BMThreadFunc ();

	  BOOL CreateBMThread ();
	  void DestroyBMThread ();

	  BOOL GenerateStartOprNotification (DWORD dwOprCookie,
					     LPCTSTR lpszFileId,
					     LPCTSTR lpszFileType,
					     LPCTSTR lpszOperationType);

	  BOOL GenerateEndOprNotification (DWORD dwOprCookie,
					   LPCTSTR lpszFileId,
					   LPCTSTR lpszFileType,
					   LPCTSTR lpszOperationType,
					   DWORD dwResult);

	  BOOL GenerateStartFileOprNotification (DWORD dwOprCookie,
						 LPCTSTR lpszFileId,
						 LPCTSTR lpszFileType);

	  BOOL GenerateEndFileOprNotification (DWORD dwOprCookie,
					       LPCTSTR lpszFileId,
					       LPCTSTR lpszFileType,
					       DWORD dwResult);

	  BOOL GenerateStartNotification (DWORD dwOprCookie, DWORD dwResult);

	  BOOL GenerateEndNotification (DWORD dwOprCookie, DWORD dwResult);

	  void EndProc (BOOL bEndSuccess);

	  void Log (LPCTSTR lpszLog);

	  //int EnumKeys(char* pSection,CStringArray* pKeys);

	private:
//    COleDispatchDriver  m_OprDriver;
	    CBootModeIntegOpr m_OprDriver;

	  pthread_t m_hBMThread;
	  BOOL m_bExitThread;

	  CBMFileImpl m_BMFileImpl;

	  DWORD m_dwOprCookie;

	  DWORD m_dwWaitTime;

	    std::map < DWORD, IBMOprObserver * >m_mapObserverRegs;

	  DWORD m_dwNextObserverCookie;
	  pthread_mutex_t m_CS;
};
#endif // _BOOTMODEOBJ_H


For an array $$$[a_1,a_2,\ldots,a_n]$$$ of length $$$n$$$, define $$$f(a)$$$ as the sum of the minimum element over all subsegments. That is, $$$$$$f(a)=\sum_{l=1}^n\sum_{r=l}^n \min_{l\le i\le r}a_i.$$$$$$

A permutation is a sequence of integers from $$$1$$$ to $$$n$$$ of length $$$n$$$ containing each number exactly once. You are given a permutation $$$[a_1,a_2,\ldots,a_n]$$$. For each $$$i$$$, solve the following problem independently:

- Erase $$$a_i$$$ from $$$a$$$, concatenating the remaining parts, resulting in $$$b = [a_1,a_2,\ldots,a_{i-1},\;a_{i+1},\ldots,a_{n}]$$$.
- Calculate $$$f(b)$$$.


Yet another Armageddon is coming! This time the culprit is the Julya tribe calendar.

The beavers in this tribe knew math very well. Smart Beaver, an archaeologist, got a sacred plate with a magic integer on it. The translation from Old Beaverish is as follows:

"May the Great Beaver bless you! May your chacres open and may your third eye never turn blind from beholding the Truth! Take the magic number, subtract a digit from it (the digit must occur in the number) and get a new magic number. Repeat this operation until a magic number equals zero. The Earth will stand on Three Beavers for the time, equal to the number of subtractions you perform!"

Distinct subtraction sequences can obviously get you different number of operations. But the Smart Beaver is ready to face the worst and is asking you to count the minimum number of operations he needs to reduce the magic number to zero.


This is for PDFpen 6.3.2. Based on my experience, I would not upgrade. I did buy it as part of a StackSocial deal, so I am philosophically resigned to the issues. Maybe it is a bug.
I wanted to edit text on a PDF. I selected the text, then went to the Correct Text button. It actually duplicated the selection, which I then could edit easily. But how to get rid of the original text. The Help section was not helpful. So I found the workaround. I was able to select the text, then go to Format Text in the Menu Bar, and select Redact Text Erase.
But I was only able to do it once. To do another piece of text I had to save the document, reopen, then repeat the process. Is this a bug or a deficiency?
Plus, the interface is somewhere between Windows XP and Mac OS9. Seriously.


Use Python packages
App dependencies can be specified in your app's
requirements.txt file. Besides the
VIKTOR SDK version, this can include any Python package to be used in the app:
Pinning version number and version clashes
Both the VIKTOR SDK and drawSVG package have an explicit version number defined (pinned version numbers). This is done to ensure that your app always uses the same version. If the package maintainers release a new version overnight, this does not break your app when re-installing. By pinning the versions, you decide when to upgrade to a newer version and this enables reading the CHANGELOG which might contain necessary actions for upgrading.
It is possible that you are using a package which is also used by the VIKTOR SDK. The SDK defines a range of allowed versions. If the app specifies a version outside this range, an error will be logged:
ERROR: viktor X.X.X has requirement numpy>=1.15.3, but you'll have numpy 1.15.0 which is incompatible.
This might also happen when you don't have a pinned version number and the latest version has not yet been added to the SDK range.
External packages that are internally used in the SDK are available in your app (e.g.
munch), even when you don't add
them to your app's
requirements.txt. Nevertheless, you are highly encouraged to explicitly define them in your app
requirements, as deletion of dependencies within the SDK will be done without prior notice and therefore may break
Some package licenses do not allow for commercial use, or requires you to open-source your implementation. Make sure the package licensing permits, before using it in your app.
Use private packages
Instructions on how to use private packages in your app can be found here.
Use system packages
Instructions on how to use system packages in your app can be found here.


Vasya is about to take his first university exam in about several minutes. And it's not just some ordinary exam, it's on mathematical analysis. Of course, right now Vasya can only think of one thing: what the result of his talk with the examiner will be...

To prepare for the exam, one has to study proofs of n theorems. It is known that there will be k examination cards on the exam and each card contains $$\left[\frac{n}{k}\right]$$ distinct theorems. Besides, no theorem is mentioned in more than one card (that is, $$n - k \cdot \left\lfloor \frac{n}{k} \right\rfloor$$ theorems won't be mentioned in any card). During the exam several students may get the same card.

We do not know the exact way theorems are distributed by cards, however the students that took the exam before Vasya told him what theorems their cards contained. Vasya evaluates his level of proficiency in the i-th theorem by some number ai. The level of proficiency in some card is the average of the levels of proficiency in the theorems that are included in the card. Now Vasya wants to know the minimally and maximally possible levels of his proficiency in the card he gets on the exam. Vasya wants to determine it by the data he has collected from other students. Unfortunately, Vasya has no time left to do the math and he asked you to help him.


Finished her homework, Nastya decided to play computer games. Passing levels one by one, Nastya eventually faced a problem. Her mission is to leave a room, where a lot of monsters live, as quickly as possible.

There are $$$n$$$ manholes in the room which are situated on one line, but, unfortunately, all the manholes are closed, and there is one stone on every manhole. There is exactly one coin under every manhole, and to win the game Nastya should pick all the coins. Initially Nastya stands near the $$$k$$$-th manhole from the left. She is thinking what to do.

In one turn, Nastya can do one of the following:

- if there is at least one stone on the manhole Nastya stands near, throw exactly one stone from it onto any other manhole (yes, Nastya is strong).
- go to a neighboring manhole;
- if there are no stones on the manhole Nastya stays near, she can open it and pick the coin from it. After it she must close the manhole immediately (it doesn't require additional moves).

The figure shows the intermediate state of the game. At the current position Nastya can throw the stone to any other manhole or move left or right to the neighboring manholes. If she were near the leftmost manhole, she could open it (since there are no stones on it).

Nastya can leave the room when she picks all the coins. Monsters are everywhere, so you need to compute the minimum number of moves Nastya has to make to pick all the coins.

Note one time more that Nastya can open a manhole only when there are no stones onto it.


Skater XL vs Session - Which game will be better ? feat. Nightspeeds
- published: 23 Dec 2018
- views: 69433
▲▲▲ Subscribe ▲▲▲ Hey guys :) Today I present a comparison of Skater XL and Session! Nightspeeds : https://www.youtube.com/user/Nightspeeds If you enjoyed the video be sure to drop a like, comment and subscribe for more Skater XL content :) Twitter: https://twitter.com/Im_DIzE Instagram: https://www.instagram.com/im_dize/ PS3: psychokeks_360 Songs : Lakey Inspired - Golden hour Lakey Inspired - Going up Lakey Inspired - Distant Lakey Inspired - Find a way Outro: Pink Guy - She\'s so nice...


Top 23 Python MacOS Projects
🔎 Hunt down social media accounts by username across social networksProject mention: Looking for similar tools on github? What are your favorite tools on github? | reddit.com/r/hacking | 2021-11-28
Guide to securing and improving privacy on macOSProject mention: Privacy settings tools for Mac? | reddit.com/r/macapps | 2021-11-29
Scout APM: A developer's best friend. Try free for 14-days. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.
Open source UI framework written in Python, running on Windows, Linux, macOS, Android and iOSProject mention: JetBrains launches cross-platform UI framework for Kotlin | reddit.com/r/programming | 2021-12-04
Run macOS on QEMU/KVM. With OpenCore + Big Sur + Monterey support now! Only commercial (paid) support is available now to avoid spammy issues.Project mention: [Question] Compiling and Running Fugu14 on Linux System | reddit.com/r/jailbreak | 2021-12-05
It appears your only options would be to use a virtual machine. I recommend OSX-KVM but if you’re not too familiar working with qemu you can use virtualbox
Daemon to ban hosts that cause multiple authentication errorsProject mention: Was my raspberry hacked? | reddit.com/r/linuxadmin | 2021-10-29
If you are worried about hacking attempts, installing fail2ban will help.
donnemartin - dev setup
An open Apple AirDrop implementation written in PythonProject mention: Apple iPhoto frame or emulator ? | reddit.com/r/RASPBERRY_PI_PROJECTS | 2021-11-22
OpenDrop (https://github.com/seemoo-lab/opendrop) might be something for that.
Run Linux Software Faster and Safer than Linux with Unikernels.
A supercharged AWS command line interface (CLI).Project mention: What is the best program for making JSON CLI output more readable and manageable? | reddit.com/r/aws | 2021-11-01
I'd recommend giving https://github.com/donnemartin/saws a shot.
🖥📱🔔 A utility for sending notifications, on demand and when commands finish.Project mention: I made ntfy.sh, a simple HTTP-based pub-sub that let's you PUT/POST notifications to your phone or desktop | reddit.com/r/golang | 2021-11-09
Browse Hacker News like a haxor: A Hacker News command line interface (CLI).
coala provides a unified command-line interface for linting and fixing all your code, regardless of the programming languages you use.Project mention: Show HN: Semgrep App | news.ycombinator.com | 2021-10-22
A flexible package manager that supports multiple versions, configurations, platforms, and compilers.Project mention: Virtualenv Functional Equivalent? | reddit.com/r/archlinux | 2021-11-30
Quickly fetch your WiFi password and if needed, generate a QR code of your WiFi to allow phones to easily connect (by sdushantha)Project mention: Quickly fetch your WiFi password and if needed, generate a QR code of your WiFi to allow phones to easily connect. Works on macOS and Linux and Windows | reddit.com/r/developersIndia | 2021-01-27
Personal Assistant for Linux and macOSProject mention: Language Processing/Hearing Accessibility options for Linux? | reddit.com/r/linuxquestions | 2021-07-23
There are projects like Jarvis but it's still a work-in-progress.
aeneas is a Python/C library and a set of tools to automagically synchronize audio and text (aka forced alignment)Project mention: WhisperSync alternative for Plex Audiobooks and already owned E-Books | reddit.com/r/selfhosted | 2021-09-12
Check out https://github.com/readbeyond/aeneas
Cast macOS and Linux Audio/Video to your Google Cast and Sonos DevicesProject mention: A tool for picking up course markers used in drone racing | reddit.com/r/specializedtools | 2021-10-26
https://github.com/muammar/mkchromecast might work for you?
An evil RAT (Remote Administration Tool) for macOS / OS X.Project mention: Awesome Penetration Testing | dev.to | 2021-10-06
EvilOSX - Modular RAT that uses numerous evasion and exfiltration techniques out-of-the-box.
Open-source Dropbox client for macOS and Linux
Documentation and source code for PopClip extensions.Project mention: TrackerZapper Mac app silently removes tracking parameters from links you copy | news.ycombinator.com | 2021-09-18
KivyMD is a collection of Material Design compliant widgets for use with Kivy, a framework for cross-platform, touch-enabled graphical applications. https://youtube.com/c/KivyMD https://twitter.com/KivyMD https://habr.com/ru/users/kivymd https://stackoverflow.com/tags/kivymdProject mention: Some icons showing up as white blocks, ... others look fine..? (kivymd) | reddit.com/r/kivy | 2021-12-02
git clone https://github.com/kivymd/KivyMD.git --depth 1 cd ./KivyMD pip install .
novelWriter is an open source plain text editor designed for writing novels. It supports a minimal markdown-like syntax for formatting text. It is written with Python 3 (3.6+) and Qt 5 (5.3+) for cross-platform support.Project mention: Is Scrivener worth the money? | reddit.com/r/selfpublish | 2021-11-07
However, as others have mentioned, some aspects of it are still bothersome (I see endless complaints about the complexity of the Compiler), and there do exist some really good free alternatives, like SmartEdit Writer and NovelWriter, which offer very similar functionally.
Create deployable system images from OS X installerProject mention: How do I install MacOS catalina through the terminal on setup? | reddit.com/r/hackintosh | 2021-04-21
:mag_right: Enhance Spotlight with plugins on macOS (by w0lfschild)Project mention: what good apps are in windows store that arent in ios or android so we can discover new apps | reddit.com/r/Surface | 2021-01-16
Flashlight: Add plugins to Spotlight search.
Python MacOS related posts
Best way to download Udemy courses?
3 projects | reddit.com/r/Piracy | 5 Dec 2021
[Question] Compiling and Running Fugu14 on Linux System
1 project | reddit.com/r/jailbreak | 5 Dec 2021
OS X-KVM: Run macOS on QEMU/KVM
1 project | reddit.com/r/patient_hackernews | 3 Dec 2021
OS X-KVM: Run macOS on QEMU/KVM
1 project | reddit.com/r/hackernews | 3 Dec 2021
Hacker News top posts: Dec 3, 2021
2 projects | reddit.com/r/hackerdigest | 3 Dec 2021
Any idea why it is taking that much time?
1 project | reddit.com/r/qemu_kvm | 1 Dec 2021
Adobe Zii for Premiere 14.8
1 project | reddit.com/r/AdobeZii | 1 Dec 2021
What are some of the best open-source MacOS projects in Python? This list will help you:
Are you hiring? Post a new remote job listing for free.


[OpenSIPS-Users] Help with my OpenSips architecture
wallnut.monkeys at gmail.com
Tue Aug 7 15:36:22 EDT 2018
Hi all, just to make sure I'm one the right track here I'd like to share a
few thoughts of where I'm currently going with my architecture, any
feedback is really appreciated specially if it can help me avoid any
pitfalls in the future. Here is what I'm trying to do:
I currently have a a few asterisk servers directly facing the public
internet, with sip devices registering directly with a specific asterisk.
So my first goal was to have the sip devices register directly with
OpenSips so I used the mid_registrar module for that, and forward the
registers to the right asterisk. This seems to work very well so far.
Secondly, I setup rtp proxy, on the same box as opensips, this also seems
to work great so far. At this point I should be able to not have the
asterisk facing public internet.
The third thing I now want to do, and this is where I am currently stuck is
to figure out what my options are in terms of high availability of the
opensips. I figured I would go with a VIP setup with 2 identical opensips
box. So in this type of setup i would have to replicate usrloc and dialogs
between the 2 opensips instances right? Am I forgetting anything?
Am I on the right track with this type of setup or am I missing something
big here? It's also worth mentioning that I am using OpenSIPS 2.4
Any advice/links with info on similar setup/code examples are very welcome
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Users


I encountered this error when running my website on the
ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.Odbc.OdbcExcep
tion: ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified
Line 280: Using connection As New OdbcConnection(connectionS
Line 281: command.Connection = connection
Line 282: connection.Open()
Line 283: 'command.ExecuteNonQuery()
However, running it on http://localhost:1301/myapps/Default.aspx
(clicking 'start' from web developer), there is NO such problem
Any help is greatly appreciated.


#pragma once
#include "heap_algorithm.h"
#include "stl_deque.h"
#include "stl_function.h"
#include "stl_vector.h"

namespace MiniSTL {

template <class T, class Sequence = deque<T>>
class queue;

template <class T, class Sequence>
bool operator==(const queue<T, Sequence> &, const queue<T, Sequence> &);

template <class T, class Sequence>
bool operator<(const queue<T, Sequence> &, const queue<T, Sequence> &);

template <class T, class Sequence>
class queue {
    // friend declarations
    template <class _T, class _Sequence>
    friend bool operator==(const queue<_T, _Sequence> &,
                           const queue<_T, _Sequence> &);
    template <class _T, class _Sequence>
    friend bool operator<(const queue<_T, _Sequence> &,
                          const queue<_T, _Sequence> &);

public:  // alias declarations
    using value_type = typename Sequence::value_type;
    using size_type = typename Sequence::size_type;
    using reference = typename Sequence::reference;
    using const_reference = typename Sequence::const_reference;

private:  // data member
    Sequence c;

public:  // ctor
    queue() = default;
    explicit queue(const Sequence &rhs) : c(rhs) {}

public:  // copy operations
    queue(const queue &rhs) : c(rhs.c) {}
    queue &operator=(const queue &rhs) {
        c.operator=(rhs.c);
        return *this;
    }

public:  // move operations
    queue(queue &&rhs) noexcept : c(std::move(rhs.c)) {}
    queue &operator=(queue &&rhs) noexcept {
        c.operator=(std::move(rhs.c));
        return *this;
    }

public:  // getter
    bool empty() const noexcept { return c.empty(); }
    size_type size() const noexcept { return c.size(); }
    const_reference front() const { return c.front(); }

public:  // setter
    reference front() { return c.front(); }

public:  // push && pop
    void push(const value_type &value) { c.push_back(value); }
    void pop() { c.pop_front(); }

public:  // swap
    void swap(queue &rhs) noexcept { MiniSTL::swap(c, rhs.c); }
};

template <class T, class Sequence>
inline bool operator==(const queue<T, Sequence> &lhs,
                       const queue<T, Sequence> &rhs) {
    return lhs.c == rhs.c;
}

template <class T, class Sequence>
inline bool operator<(const queue<T, Sequence> &lhs,
                      const queue<T, Sequence> &rhs) {
    return lhs.c < rhs.c;
}

template <class T, class Sequence>
inline bool operator!=(const queue<T, Sequence> &lhs,
                       const queue<T, Sequence> &rhs) {
    return !(lhs == rhs);
}

template <class T, class Sequence>
inline bool operator>(const queue<T, Sequence> &lhs,
                      const queue<T, Sequence> &rhs) {
    return rhs < lhs;
}

template <class T, class Sequence>
inline bool operator<=(const queue<T, Sequence> &lhs,
                       const queue<T, Sequence> &rhs) {
    return !(rhs < lhs);
}

template <class T, class Sequence>
inline bool operator>=(const queue<T, Sequence> &lhs,
                       const queue<T, Sequence> &rhs) {
    return !(lhs < rhs);
}

template <class T, class Sequence>
inline void swap(queue<T, Sequence> &lhs, queue<T, Sequence> &rhs) noexcept {
    lhs.swap(rhs);
}

template <class T, class Sequence = vector<T>,
          class Compare = less<typename Sequence::value_type>>
class priority_queue {
public:  // alias declarations
    using value_type = typename Sequence::value_type;
    using size_type = typename Sequence::size_type;
    using reference = typename Sequence::reference;
    using const_reference = typename Sequence::const_reference;
    // none iterators

private:  // data
    Sequence c;
    Compare comp;

public:  // ctor && dtor
    explicit priority_queue(const Compare &compare) : c(), comp(compare) {}
    explicit priority_queue(const Compare &compare = Compare(),
                            const Sequence &&seq = Sequence())
        : c(std::move(seq)), comp(compare) {
        make_heap(c.begin(), c.end(), comp);
    }
    priority_queue(std::initializer_list<T> il,
                   const Compare &compare = Compare())
        : c(il), comp(compare) {
        make_heap(c.begin(), c.end(), comp);
    }
    template <class InputIterator>
    priority_queue(InputIterator first, InputIterator last,
                   const Compare &compare, const Sequence &seq)
        : c(seq), comp(compare) {
        c.insert(first, last);
        make_heap(c.begin(), c.end(), comp);
    }
    template <class InputIterator>
    priority_queue(InputIterator first, InputIterator last,
                   const Compare &compare = Compare(),
                   const Sequence &&seq = Sequence())
        : c(std::move(seq)), comp(compare) {
        c.insert(c.end(), first, last);
        make_heap(c.begin(), c.end(), comp);
    }

    ~priority_queue() = default;

public:  // copy operation
    priority_queue(const priority_queue &rhs) : c(rhs.c), comp(rhs.comp) {}
    priority_queue &operator=(const priority_queue &rhs) {
        c = rhs.c;
        comp = rhs.comp;
        return *this;
    }

public:  // move operation
    priority_queue(priority_queue &&rhs) noexcept : c(std::move(rhs.c)),
                                                    comp(std::move(rhs.comp)) {}
    priority_queue &operator=(priority_queue &&rhs) noexcept {
        c = std::move(rhs.c);
        comp = std::move(rhs.comp);
        return *this;
    }

public:  // getter
    bool empty() const noexcept { return c.empty(); }
    size_type size() const noexcept { return c.size(); }
    const_reference top() const noexcept { return c.front(); }

public:  // push && pop
    void push(const value_type &value) {
        try {
            c.push_back(value);
            push_heap(c.begin(), c.end(), comp);
        } catch (std::exception &) {
            c.clear();
        }
    }
    void pop() {
        try {
            pop_heap(c.begin(), c.end(), comp);
            c.pop_back();
        } catch (std::exception &) {
            c.clear();
        }
    }

public:  // swap
    void swap(priority_queue &rhs) noexcept {
        MiniSTL::swap(c, rhs.c);
        MiniSTL::swap(comp, rhs.comp);
    }
};

// global swap for priority_
template <class T, class Sequence, class Compare>
inline void swap(priority_queue<T, Sequence, Compare> &lhs,
                 priority_queue<T, Sequence, Compare> &rhs) noexcept {
    lhs.swap(rhs);
}

}  // namespace MiniSTL


If you're in this deep, you're likely either a bot or particularly bored. I'm keeping this page around mostly for personal reference, but maybe you might find something interesting here anyway — it's essentially a timeline of CS-related events in my life.
- Spent a bunch of time mining a v3 onion for this site.
- Wrote a client hack for changing emojis in Slack.
- Helped out with writing testdata for the Canadian Computing Competition.
- Set up a system for building identical PDF and HTML versions of my resume from LaTeX source.
- Worked on porting the DMOJ judge to ARM platforms, including my Android phone.
- Designed a RISC CPU in Verilog for a Cyclone II FPGA, alongside an assembler and compiler for a small subset of C ("TudorC").
- Represented UofT at the ECNA ACM-ICPC team competition in Windsor. Did slightly better, placing 17th of 139.
- Attended my first hackathon.
- Started 2nd year at UTSG.
- Began using a graphical WSL setup daily. Contributed a bit to polybar to add support for WSL.
- Wrote a Nintendo Entertainment System emulator in C# 7. Runs under Mono, too.
- Made a tool for patching Blade and Soul clients bypassing verification through import address table rewriting.
- Participated in UTSCode, and won a nice mechanical keyboard that I'm using to type this.
- Helped run the Don Mills Programming Gala again, in a lesser capacity.
- Gave a talk at an ACSE conference on the uses and benefits of automated grading in classroom settings.
- Started running a Tor relay.
- Worked on porting the DMOJ judge to FreeBSD.
- Wrote a Slack integration for LaTeX math.
- Reverse engineered several PS2/PS4 game archives to extract some background pictures and music I liked.
- Made a server for rendering LaTeX documents, intended for embedding pretty figures into HTML pages.
- Set up this site.
- Represented UofT at the ECNA ACM-ICPC team competition in Windsor. Placed 28th of 126.
- Dropped out of the co-op program after the first semester, applied to transfer to UTSG.
- Started school at UTSC (they had a co-op program!)
- Began working at Ivy Global as an intern. Started managing a Windows stack for the first time.
- Graduated from high school, but got deferred from UWaterloo to UofT. Oops.
- Organized the second Don Mills Programming Gala, to similar success. Passed the metaphorical torch down.
- Wrote a very fast Nintendo Gameboy Color emulator in Java.
- Participated in the provincial ECOO programming competition. Held on to the trophy for another year.
- Organized the first Don Mills Programming Gala. Had 150 students come participate.
- Thinking Dart was pretty sexy, wrote a photosphere viewer in it.
- Started handing in programs for physics assignments.
- Made an addictive osu!-like speed-typing game in Java, using JAVI.
- Played around with a lot of fancy Java graphics.
- Wrote the inverse of the script.
- Made a script to convert cubemaps to sphere maps. Apparently this was a common enough problem that it got some unexpected attention.
- Participated in the provincial ECOO programming competition. Placed 1st this time around. Used the trophy as a pretzel container for the next 2 years.
- Wrote a RuneScape bot based on runtime code injection and static analysis of gamepacks to reverse their obfuscation.
- Continued working on the DMOJ, as well as writing monthly problemsets.
- Wrote a RuneScape bot by proxying OpenGL render calls and matching calls to entities being rendered on-screen.
- Attempted to use this to automatically translate light novels. Was unsuccessful.
- Played around with handwriting recognition with self-organizing maps.
- Hosted the very first monthly Don Mills Open Programming Contest.
- Started writing the DMOJ over March break. At this time, we called it the "Don Mills Online Judge".
- Wrote a debugger for Swing layouts by injecting debugging code into running applications.
- Brought 3D rendering to Windows (cmd.exe) terminals.
- Developed a game engine in Java. Implemented fun stuff like shadows, parallax maps, normal maps, reflections, skyboxes, etc. Hunted down driver bugs for months.
- Wrote a cProfile-like profiler for Java, with runtime instrumentation.
- Made a 3D space game in Python with OpenGL.
- Wrote a 3D tile-based game engine and development environment.
- Participated in the provincial ECOO programming competition. Placed 3rd.
- Wrote a (very) partial Minecraft client implementation in Python.
- I liked the idea, so I made one for visualizing some graph traversal algorithms too.
- Put together a visualization for various cellular automaton configurations.
- Developed a set of Java bindings for FFmpeg, as well as boilerplate for Swing video playback integration. Called it JAVI.
- Wrote a very fast Java bytecode manipulation framework. Built some disassemblers and obfuscators on top of it.
- Made a MIDI keyboard.
- Put together a simple mechanism for injecting code into running JVMs. Used it many times since.
- Sort of made a search engine for emojis.
- Implemented Zalgo, but in Java.
- Ported HAL to Java. Creatively called it JAL.
- Started school at Don Mills Collegiate Institute.
- Wrote some fluent wrappers for Java's Reflection API. I still use them whenever I'm doing that sort of stuff.
- Wrote a personal assistant chatbot with text-to-speech in Python before Siri made it cool. Called it HAL.
- Developed some fairly popular plugins for Bukkit (a Minecraft server mod before it got DMCA'd).
- Spent too much time on FLL robotics.
- Made an extremely inefficient RuneScape bot based on color and subimage matching.
- Wrote crappy RuneScape bot scripts for RSBuddy.
- Started programming on an Arduino Uno.


Level 2 - 3.4.4 Activity: Create Stock Exceptions Review UX Page
As i am currently doing this activity, I am a bit lost with the 3rd Grid :
- Stock Exception count by product SKU and total for the parent Product at monthly, half-year, and year time periods.
We are supposed to be using INV02, though in this module we did not aggregate by SKU but by product family so I am missing the point on where should I create the grid based on the SKUs..
Can someone help me?
Thank you in advance


/*=========================================================================
 *
 *  Copyright NumFOCUS
 *
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *         http://www.apache.org/licenses/LICENSE-2.0.txt
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 *
 *=========================================================================*/
#ifndef itkBlockMatchingMultiResolutionBlockRadiusCalculator_h
#define itkBlockMatchingMultiResolutionBlockRadiusCalculator_h

#include "itkArray2D.h"
#include "itkObject.h"

namespace itk
{
namespace BlockMatching
{

/** \class MultiResolutionBlockRadiusCalculator
 *
 * \brief Base class calculate the fixed image matching kernel radius for each level in a
 * BlockMatching::MultiResolutionImageRegistrationMethod.
 *
 * This must be able to produce the fixed image block radius for every level of
 * the MultiResolutionPyramidImage filter.
 *
 * \ingroup Ultrasound
 */
template <class TFixedImage>
class ITK_TEMPLATE_EXPORT MultiResolutionBlockRadiusCalculator : public Object
{
public:
  /** Standard class type alias. */
  using Self = MultiResolutionBlockRadiusCalculator;
  using Superclass = Object;
  using Pointer = SmartPointer<Self>;
  using ConstPointer = SmartPointer<const Self>;

  /** Run-time type information (and related methods). */
  itkTypeMacro(MultiResolutionBlockRadiusCalculator, Object);

  /** ImageDimension enumeration. */
  itkStaticConstMacro(ImageDimension, unsigned int, TFixedImage::ImageDimension);

  /** Type of the fixed image type. */
  using FixedImageType = TFixedImage;
  using FixedImageConstPointer = typename FixedImageType::ConstPointer;
  using RadiusType = typename FixedImageType::SizeType;

  /** ScheduleType type alias support. */
  using ScheduleType = Array2D<unsigned int>;

  /** SetPyramidSchedule() gets called with the pyramid schedule after the pyramid has
   * been generated.  This information is the available for child classes if
   * they choose to use it.  */
  virtual void
  SetPyramidSchedule(const ScheduleType & schedule)
  {
    m_PyramidSchedule = schedule;
    this->Modified();
  }

  /** Get the multi-resolution schedule. */
  itkGetConstReferenceMacro(PyramidSchedule, ScheduleType);

  /** Set/Get the Fixed image. The fixed image is set during the
   * BlockMatching::MultiResolutionImageRegistrationMethod and is available for
   * child classes if the choose to use it.  */
  itkSetConstObjectMacro(FixedImage, FixedImageType);
  itkGetConstObjectMacro(FixedImage, FixedImageType);

  /** This abstract method must be implemented by child classes.  Given the
   * current level in the image pyramid, return the fixed block radius. */
  virtual const RadiusType &
  Compute(unsigned long current_level) = 0;

protected:
  MultiResolutionBlockRadiusCalculator() {}

  ScheduleType m_PyramidSchedule;

  FixedImageConstPointer m_FixedImage;

private:
  MultiResolutionBlockRadiusCalculator(const Self &);
  void
  operator=(const Self &);
};

} // end namespace BlockMatching
} // end namespace itk

#endif


Brief description :
Java Developers - Immediate
Java Developers - Males Only
- Should have at least 1 Year- 3 Years of hands-on experience in Java and JavaEE development.
- Knowledge in Spring Framework, Hibernate ORM and various Jquery Frameworks (preferably AngularJs)
- Familiar with Git, Apache Maven and common IDE's like Eclipse and IntelliJ IDEA
Male Candidates Preferred


There appears to be a 256 character limit for the open_basedir field in ISPConfig 3.0.3. This is pretty aggravating if a web site domain name gets on the long side, especially when creating a separate web site on a different sub-domain (ie. subsite1.longwebsitename.com). It makes it impossible to add any directories using the ISPConfig interface. I assume this is a database field limit? Can this be changed in future releases? Why is there a /srv/www/blablabla pre-filled in this field on a Ubuntu system? I thought /srv/www/ was for SUSE-based systems (among others). Can I remove that entry to make room?


You are given a tree with $$$n$$$ nodes, numerated from $$$0$$$ to $$$n-1$$$. For each $$$k$$$ between $$$0$$$ and $$$n$$$, inclusive, you have to count the number of unordered pairs $$$(u,v)$$$, $$$u \neq v$$$, such that the MEX of all the node labels in the shortest path from $$$u$$$ to $$$v$$$ (including end points) is $$$k$$$.

The MEX of a sequence of integers is the smallest non-negative integer that does not belong to the sequence.


In this file photo, workers with Python Corp. from Lacombe repair the river wall on South Grand Street. The wall was damaged by the 2011 fire that destroyed the Howard Griffin building.
A Monroe man has been found not guilty by reason of insanity in the March 2011 arson of the former Howard Griffin building at 700 S. Grand Street.
Judge Wilson Rambo ruled in 4th Judicial District Court Thursday that the evidence indicated Tyrone Robinson was guilty of setting the fire that destroyed the building. However, because of long-term mental illness, he was not able to distinguish between right and wrong at the time of the crime.
Robinson will not be held criminally responsible but will be sent to a state-run forensic facility for people with mental illness. He will not be released from ...


Dima and Inna love spending time together. The problem is, Seryozha isn't too enthusiastic to leave his room for some reason. But Dima and Inna love each other so much that they decided to get criminal...

Dima constructed a trap graph. He shouted: "Hey Seryozha, have a look at my cool graph!" to get his roommate interested and kicked him into the first node.

A trap graph is an undirected graph consisting of n nodes and m edges. For edge number k, Dima denoted a range of integers from lk to rk (lk ≤ rk). In order to get out of the trap graph, Seryozha initially (before starting his movements) should pick some integer (let's call it x), then Seryozha must go some way from the starting node with number 1 to the final node with number n. At that, Seryozha can go along edge k only if lk ≤ x ≤ rk.

Seryozha is a mathematician. He defined the loyalty of some path from the 1-st node to the n-th one as the number of integers x, such that if he initially chooses one of them, he passes the whole path. Help Seryozha find the path of maximum loyalty and return to his room as quickly as possible!


Kolya got an integer array $$$a_1, a_2, \dots, a_n$$$. The array can contain both positive and negative integers, but Kolya doesn't like $$$0$$$, so the array doesn't contain any zeros.

Kolya doesn't like that the sum of some subsegments of his array can be $$$0$$$. The subsegment is some consecutive segment of elements of the array.

You have to help Kolya and change his array in such a way that it doesn't contain any subsegments with the sum $$$0$$$. To reach this goal, you can insert any integers between any pair of adjacent elements of the array (integers can be really any: positive, negative, $$$0$$$, any by absolute value, even such a huge that they can't be represented in most standard programming languages).

Your task is to find the minimum number of integers you have to insert into Kolya's array in such a way that the resulting array doesn't contain any subsegments with the sum $$$0$$$.


For a given array $$$a$$$ consisting of $$$n$$$ integers and a given integer $$$m$$$ find if it is possible to reorder elements of the array $$$a$$$ in such a way that $$$\sum_{i=1}^{n}{\sum_{j=i}^{n}{\frac{a_j}{j}}}$$$ equals $$$m$$$? It is forbidden to delete elements as well as insert new elements. Please note that no rounding occurs during division, for example, $$$\frac{5}{2}=2.5$$$.


There are n boys and m girls studying in the class. They should stand in a line so that boys and girls alternated there as much as possible. Let's assume that positions in the line are indexed from left to right by numbers from 1 to n + m. Then the number of integers i (1 ≤ i < n + m) such that positions with indexes i and i + 1 contain children of different genders (position i has a girl and position i + 1 has a boy or vice versa) must be as large as possible.

Help the children and tell them how to form the line.


You are probably getting TransactionTooLargeException
As suggested by google android guide, you could use static fields or singletons to share data between activities.
They recommend it “For sharing complex non-persistent user-defined objects for short duration”
From your code it seems that’s exactly what you need.
So your code in ActivitySearch.class could look something like this:
ActivityResults.data = searchList;
Intent intent = new Intent(ActivitySearch.this,ActivityResults.class);
Then you can access ActivityResults.data from anywhere in ActivityResults activity after it starts.
For data that need to be shared between user sessions, it’s not advisable to use static fields, since application process could be killed and restarted by android framework while app is running in background (if framework need to free resources). In such case all static fields will be reinitialized.


SELinux is on in Fedora, but not in other linux distributions. This does not mean that they are less ecure. SELinux makes some assumptions for a linux system that prevents ISPConfig on running.
If you want to have a really secure webserver i recommend not to install PHP or perl or any other scripting language for webpages as most hacks currently are done trough unsecure scripts. Then do not install any management software except an SSH server on a non common port and remove all compilers from your system.


do you think it's an emperor it said asian forrest but i don't believe petsmartYour going to have to post a picture of the underside, below is just an example.
Well they wouldn't try to give you an emperor labeled as a Asian forest. Guess it's possible someone could label an emp. As such. But I do think you have a heterometrus sp. The again I'm not the best with these type scorpionsdo you think it's an emperor it said asian forrest but i don't believe petsmart


Hi, I'm not sure whether this problem has been posted before, but I can't use the context menu on zip files when the file is located on the desktop.
I usually download files to the desktop for easy finding. If I have a zip file on the desktop and use opus to navigate to the desktop and try to use the right click context menus on the zip file nothing happens; no menu.
Double clicking the file lists the contents in a new lister, but no context menu.
This only seems to affect zip files. Images, music, docs all seem to work correctly.
Go to /desktopdir instead of /desktop.
/desktopdir is the real directory which contains your desktop files.
/desktop is a virtual folder which merges the contents of /desktopdir with the contents of the similar directory for All Users, as well as some icons which don't really physically exist (like the Recycle Bin).
Virtual folders are handled by Explorer (within Opus) and thus do not support any Opus-only context menus.
Alternatively, you may be able to make the context menu work in a way which is supported in both Explorer and Opus, but if it's just for the Desktop then using /desktopdir is usually preferable and easier.
Thanks for that, it now works as expected. My problem was I had a button setup that used the Go /desktop command. Now changed this to Go /desktopdir.


/*
 * MIT License
 *
 * Copyright (c) 2016 Jordi Soler Busquets
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all
 * copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 */

#ifndef CAM_EXPLORATION_FRONTIERS_MAP_H
#define CAM_EXPLORATION_FRONTIERS_MAP_H

#include <cam_exploration/frontierValue.h>
#include <list>

/**
 * @file frontiersMap.h
 * @brief This file basically hosts the class cam_exploration::FrontiersMap
 * @author Jordi Soler
 * @version 1.0
 * @date 2016-04-19
 */

namespace cam_exploration{

/**
 * @brief Collectoion of frontier evaluation objects
 */
typedef std::vector<strategy::frontierValue*> fvalueType;

/**
 * @brief Frontier comparaison functor
 */
struct compFrontierValues
{
    /**
     * @brief Default Constructor
     *
     * @param fvalues Frontier evaluation vector. Each element corresponds to a measure of the value of a frontier
     */
    compFrontierValues(fvalueType fvalues) : fvaluesStruct_(fvalues) {}
    /**
     * @brief Compare two functions according to fvalues
     *
     * @param f1 Left Hand Side frontier
     * @param f2 Right Hand Side frontier
     *
     * @return True if \p f1 is less valuable than \p f2, false otherwise
     */
    bool operator()(const frontier& f1, const frontier& f2);
private:
    /**
     * @brief fvalueType to be used for comparison
     */
    fvalueType fvaluesStruct_;
};

/**
 * @brief Functor indicating wether a certain frontier has a minimum size
 */
struct hasNotMinumumSize
{
    /**
     * @brief Constructor
     *
     * @param siz Minimum frontier size
     */
    hasNotMinumumSize(unsigned int siz) : siz_(siz){}
    /**
     * @brief Indicate wether the frontier \p f has not a minimum size
     *
     * @param f Frontier to be evaluated
     *
     * @return True if the frontier size is less than the threshold. False otherwise
     */
    bool operator()(const frontier& f){ return f.size() < siz_; }
private:
    /**
     * @brief Size threshold
     */
    unsigned int siz_;

};

/**
 * @brief Representation of the collection of frontiers in a map
 */
class FrontiersMap
{
public:
    typedef std::list<frontier>::const_iterator const_iterator;

    FrontiersMap();		///< Parameterless constructor
    ~FrontiersMap();		///< Parameterless destructor

    /**
     * @brief Append frontier \p f to FrontiersMap::frontiers_
     *
     * @param f New frontier
     */
    void add(frontier f) { frontiers_.push_back(f);}

    /**
     * @brief Copy the content of \p frontiers_in to FrontiersMap::frontiers_
     *
     * @param frontiers_in Container of frontiers
     */
    template <typename T>
    void setFrontiers(T frontiers_in)
    {
    	frontiers_.clear();
    	// Curously enough, copy_if does not exist previous to C++11 because of a Stroustroup's oversight
    	// One have to use this 'copy_if_not'
	std::remove_copy_if(frontiers_in.begin(), frontiers_in.end(), std::back_inserter(frontiers_),
			hasNotMinumumSize(minimum_size_));
    }

    /**
     * @brief Print information of all frontiers regarding their evaluations
     */
    void printAll();
    /**
     * @brief Get the most valued frontier
     *
     * @return Most valued frontier
     */
    frontier max();

    /**
     * @brief Iterator-like operations to access fvalues
     */
    const_iterator begin() const {return frontiers_.begin();}
    const_iterator sbegin();	/// < Sort before returning first element iterator
    const_iterator end() const {return frontiers_.end();} ///< @copydoc begin()

    /**
     * @brief Get parameters from parameter server
     *
     * @param nptr Pointer from which to retreive parameters. It should have the proper namespace
     */
    void getParams(ros::NodeHandlePtr nptr);
    /**
     * @brief Add a frontier evaluation object
     *
     * @param name Name of the frontier evaluation object
     * @param params Set of parameters to be passed to the evaluation object
     */
    void addFrontierValue(std::string name, std::map<std::string, std::string> params);
    /**
     * @brief Add a frontier evaluation object without parameters
     *
     * @param name Name of the frontier evaluation object
     */
    void addFrontierValue(std::string name);

    /**
     * @brief Append frontier evaluation object to FrontiersMap::fvalues
     *
     * @param fvalue New frontier evaluation object to be considered
     */
    void addStrategy(strategy::frontierValue & fvalue)
    {
    	fvalues.push_back(&fvalue);
    }

    /**
     * @brief Check if the OccupancyGrid cell \p c is frontier cell
     *
     * @param c OccupancyGrid cell to be evaluated
     *
     * @return True if \p c corresponds to a frontier, false otherwise
     */
    bool isFrontier(int c);

    /**
     * @brief Verbosity level
     */
    int verbosity;

private:
    std::list<frontier> frontiers_;	///< Container of frontiers

    fvalueType fvalues;			///< Collection of frontier evaluation objects

    bool isConfigured;			///< Is the map of frontiers configured? (e.g. has getParams been called?)
    unsigned int minimum_size_;		///< Which is the minimum size a frontier should has in order to be considered?
};

} /* cam_exploration */

#endif  // CAM_EXPLORATION_FRONTIERS_MAP_H


Why this topic matters
Imposter syndrome hinders career success by causing distress, excessive self-monitoring, and fears of failure. And according to research, up to 82% of people suffer from imposter syndrome.
What participants will do together
- Define imposter syndrome and identify its drivers
- Recognize how imposter syndrome manifests in the workplace
- Practice 2 strategies for stepping towards confidence


You are given a string, consisting of lowercase Latin letters.

A pair of neighbouring letters in a string is considered ugly if these letters are also neighbouring in a alphabet. For example, string "abaca" contains ugly pairs at positions $$$(1, 2)$$$ — "ab" and $$$(2, 3)$$$ — "ba". Letters 'a' and 'z' aren't considered neighbouring in a alphabet.

Can you rearrange the letters of a given string so that there are no ugly pairs? You can choose any order of the letters of the given string but you can't add any new letters or remove the existing ones. You can also leave the order the same.

If there are multiple answers, print any of them.

You also have to answer $$$T$$$ separate queries.


Graduated from Milwaukee School of Engineering – Milwaukee, WI
B.S. Software Engineering with Mathematics minor, May 2013
- Java, C#.NET
- Android platform
- SVN, GIT, Eclipse, Visual Studio
- MySQL, and SQLite
- VBA, Microsoft Excel
- C, Objective-C
- IOs platform
I mostly patrol the wpf and excel tags. But I do like to answer a java or generic c# question here or there. I am also an advocate for using excel-formulas over excel-vba and I will usually be that guy who gives the "here is how to do this with formulas" answer :)
Santa Clara, CA, USA
Member for 8 years, 9 months
9 profile views
Last seen 2 days ago
Top network posts
- 89 How can I color dots in a xy scatterplot according to column value?
- 36 Wrong results in Google spreadsheets Lookup functions (vlookup, hlookup, match)
- 25 How to do a "Save As" in vba code, saving my current Excel workbook with datestamp?
- 22 How do you select the entire excel sheet with Range using VBA?
- 17 Why does it keep saying my post is mostly code?
- 12 This demo works 4 out of 5 times, why is it giving me an error sometimes?
- 12 Find the ROW number in excel with multiple matching criteria
- View more network posts →


Aim: To use multi-threading and inter-process communication(IPC) when coding an autonomous robot.
Platform: Embedded Linux (Yocto)
Constraints : Limited CPU power.
We are building an Autonomous Underwater Vehicle, to compete in the RoboSub competition. This is the first time I am doing something like this. I intent to use a middleware like ROS, MIRA, YART, MOOS etc. The purpose of using one is that I want to modularise tasks, and divide the core components into subsystems, which should be run parallel(by multi-threading). But I have limited computational power (a dual core omap SoC), and the middleware, while robust should also be very efficient.
I need to use a middleware, because I don't want the program to be run on a single thread. My CPU has two cores, and it would be great if I could do some multi-threading to improve performance of the program. The middleware will provide for me the communication layer, so I don't have to worry about data races, or other problems associated with parallel processing. Also I have no prior experience writing multi-threaded programs, and so using parallel processing libraries directly would be difficult. Hence IMO, middlewares are excellent choices.
In your experience, which is the best one suited for the task. I don't really want to use ROS, because it will be having a lot of features, and I wont be using them. I am a computer science student(under graduate freshman, actually) and don't mind getting my hands dirty with one which has not that much features. That's true if only it will take less toll on the CPU.


Folks, I have a serious dilemma, and I wanted to run it by you to see what you think.
I've been experimenting with Clojure for the past couple of months and I've found the language extremely fun and exciting and the community really tight-knit and supportive. I'll be frank, I'm a bit infatuated with the language, but at the same time I need to balance myself with the need to put food on the table.
I currently work on startupy stuff, building web apps / APIs and rapidly prototyping and iterating ideas. I need to be able to crunch out minimally buggy code in the least amount of time. The decision for me is ultimately Rails vs Clojure. I'm pretty familiar with Rails and I know my way around it. Not a guru, but I've done a few projects in it and I don't think there's much of a science to it. The ecosystem is great, there's a gem for everything (social integration, background jobs, even stuff like rubber which will can streamline AWS deployment immensely), ready-to-steal code all over Google and StackOverflow, tutorials for every single thing... I can very quickly put together code that works.
The big upside to Rails, its opinionation and convention-over-configuration, is however also its worst side: a lot of the framework is fat and magical inside. ActiveRecord will have a 30-frames-deep stack just to generate a basic SQL query, the configuration is all over the place and god forbid you want to get more bang for your buck out of a good database engine e.g. add constraints, use postgre-specific datatypes, composite primary keys, remove primary key and so on. The framework will fight you tooth and nail to make it difficult to stray from the preferred path. Maybe I should just try ripping out ActiveRecord, but them I'm guessing that half of the gems will never work again.
With Clojure, web development is the Wild West. Whatever you do, you do it by hand. Ok, a bunch of really kind people put together Noir, Korma, Hiccup/Enlive, a CSRF-protection library and a few more. You can interop with Java, which I guess is almost as good of an ecosystem than the Rails one. You still however need to write user-management by hand (Devise is sorely missed!), automate the deployment (no rubber), implement integration testing (I don't think there's anything of that sort out yet), implement solid logging, implement DB migrations, and have to do all sorts of manual security patching when new vulnerabilities are discovered (the Rails team does it for you). Doing all of this stuff is fun as hell, but I feel that you might severely slow down rapid prototyping and ease of in-production maintenance. At the end of the day you have a business to run and the damn thing has to stay up and running and be easily upgradeable from one version to the next.
What is your take on this? Is this actual risk or just perceived risk in my head? Any tips for how I can de-risk things? How do you, people with Clojure-as-breadwinner, sleep at night? Any suggestions would be super-appreciated.


A permutation p of length n is a sequence of distinct integers p1, p2, ..., pn (1 ≤ pi ≤ n). A permutation is an identity permutation, if for any i the following equation holds pi = i.

A swap (i, j) is the operation that swaps elements pi and pj in the permutation. Let's assume that f(p) is the minimum number of swaps that you need to make the permutation p an identity permutation.

Valera wonders, how he can transform permutation p into any permutation q, such that f(q) = m, using the minimum number of swaps. Help him do that.


Here is a simple batch processing method using the File > Automate > Batch command that enables you to bypass the Action Process requirement so you can perform manual output sequential batch processing.
Step 1: Create a ‘donothing’ Action
- Go Window>Actions to bring the Actions Palette to the foreground.
- Click the Create New Set icon at the bottom of the Actions Palette.
- At the New Set prompt give it a user friendly name, I used ‘donothing’.
- Click OK to commit the New Set changes.
- The new ‘donothing’ set is now active and available in the Actions Palette. Next click the ‘Create New Action’ icon command.
- Give the New Action a user friendly name, I used ‘donothing’ again.
- Click the Record command option.
- Notice the active red Record playback control at the bottom of the Actions Palette.
- As indicated by the title, we don’t want this action to record anything so click the Stop playback control. But it will be used to by-pass the ‘Play’ feature within the ‘Batch’ dialog.
Step 2: Perform Batch
- Go File>Automate>Batch.
- Set the Play:Set and Action to the ‘donothing’ ones created earlier.
- For sake of this example I used Source : Folder and clicked the Choose… command to locate a folder of images.
- I then set the Destination : Folder and clicked Choose… for the new batch items to be saved to. (In my case in a folder on my Desktop).
- In the File Naming section I set to 2 Digit Serial Number from the drop list.
- Then set Starting Serial# to 01. Then click OK to batch process.
Note: Supplying the Play feature with such a ‘donothing’ action you will be prompted with ‘Save As’ dialog for each batch process.
To avoid the Save As dialog you may prefer ready made Action from the Production Set, entitled Save As JPG Medium as captured below.
Below is the before batch (left) and after batch (right).


Appleman and Toastman play a game. Initially Appleman gives one group of n numbers to the Toastman, then they start to complete the following tasks:

- Each time Toastman gets a group of numbers, he sums up all the numbers and adds this sum to the score. Then he gives the group to the Appleman.
- Each time Appleman gets a group consisting of a single number, he throws this group out. Each time Appleman gets a group consisting of more than one number, he splits the group into two non-empty groups (he can do it in any way) and gives each of them to Toastman.

After guys complete all the tasks they look at the score value. What is the maximum possible value of score they can get?


/*
* This header is generated by classdump-dyld 1.0
* on Saturday, August 24, 2019 at 9:45:38 PM Mountain Standard Time
* Operating System: Version 12.4 (Build 16M568)
* Image Source: /System/Library/PrivateFrameworks/MusicLibrary.framework/MusicLibrary
* classdump-dyld is licensed under GPLv3, Copyright © 2013-2016 by Elias Limneos.
*/

@protocol OS_dispatch_queue;
@class NSMutableDictionary, NSObject;

@interface ML3DatabaseValidationClient : NSObject {

	NSMutableDictionary* _validatableDatabases;
	NSObject*<OS_dispatch_queue> _serialQueue;

}
+(id)sharedClient;
-(BOOL)validateDatabaseForLibrary:(id)arg1 ;
-(BOOL)_validateDatabaseForPath:(id)arg1 usingLibrary:(id)arg2 ;
-(id)_validatableDatabaseForPath:(id)arg1 ;
-(BOOL)validateDatabaseAtPath:(id)arg1 ;
-(BOOL)validateDatabaseForConnection:(id)arg1 ;
-(BOOL)isValidatingDatabaseForPath:(id)arg1 ;
-(id)init;
@end


Outlook is showing generic icons: How do I restore FileSite’s specific icons?
Sometimes the FileSite or Email Management icons get misplaced. In my experience, the problem usually affects only one person rather than being widespread.
More than one situation can cause this issue.
Possible cause: Icon storage corrupted
I’ve seen this error reported in connection with a user’s inbox. The inbox uses blank white icons instead of displaying Email Management’s specific icons. Specifically, the email icon which ought to look like a filed email with a green check-mark can instead appear like this:
In this scenario, the helpdesk can force FileSite to reload the icons, by updating the user’s registry.
- You must be logged in to the machine as the user who has reported the problem.
- Exit all Microsoft Office and PDF editor programs.
- Launch the registry editor and navigate to HKCU.
- Tell FileSite to re-load those icons when next launched: set IconFormInstalled to 0.
- Start Outlook, and when it is loaded, click to expand the FileSite navigation tree if it is not already expanded.
- Meanwhile, watch the status messages displayed as Outlook launches and the FileSite navigation tree is displayed. A brief message will appear, saying that the icons are being loaded.
If corrupted storage was causing this problem, the icons will now appear correctly.
Possible cause: Display scaling not set to a supported percentage
I’ve seen this error reported in conjunction with the icons in FileSite’s navigation tree. Outlook shows its default folder icons before it loads the FileSite custom ones, and if it cannot load FileSite’s, the yellow ones remain visible. FileSite’s specific icons usually appear on top of the generic icons, and cover them completely. What if there is a size mismatch?
This problem scenario is specific to the display resolution not being set to 100%. The non-standard DPI scaling appears to cause the generic folder icons to be a larger size than the FileSite icons. The larger folder icon may appear behind the FileSite icon, looking like a yellow rectangle. If the FileSite icons are completely missing, the generic folder icon is all that you would see.
In this scenario, the helpdesk can reset the display to 100% DPI scaling, and restart Outlook. If the display scaling was the source of the problem, the icons will now appear correctly.


Leverage the power of Piksel Palette in your business
Get started with one of our guides, get an overview of the Piksel Palette architecture, or dive deep into our technical reference documentations.
Transforming the digital supply chain
Fuse Metadata Manager improves content discovery through a single coherent view of metadata - aggregating, linking, merging, enriching and augmenting to provide a single authoratative source.
Fuse Publisher helps content providers reduce their time to market new video content by streamlining asset processing workflows and negating constraints imposed by legacy, siloed broadcast-era systems.
Digital Showcase is a SaaS-based broadcast grade video platform that enables content owners, aggregators and distributors to integrate live, linear and on-demand programming into a multiscreen environment.
With the help of our solutions architects, leverage video platform services to either create or complement your existing systems landscape.
Built on top of a powerful architecture
Micro Service Architecture
Palette services are lightweight, independent, with a single well defined function, communicate with each other via well defined interfaces and work together to provide business value.
Palette eliminates the need to host, maintain, back up, and scale your own video services. The platform automatically scales to meet your growing video catalogue and audience.
Performant & Scalable
Palette has a highly scalable, redundant, and durable architecture, built to meet the exacting performance and demands of modern video delivery.
Highly Available & Fault Tolerant
Palette is globally distributed and redundant, designed from the ground up to tolerate and recover from failure, ensuring that your video solution is highly available and accessible.
All aspects of the video platform are monitored and metrics gathered to know what is happening and make informed choices of how to react.
Simple to integrate yet powerful APIs for you to integrate quickly into your existing infrastructure and workflows, so you can plug in Palette components with the least amount of effort.
Shortened Innovation Cycles
Our APIs and services are constantly improving behind the scenes, so you can integrate once and benefit from the latest innovations and features going forward.
Every single change flows down a delivery pipeline through successive stages, must meet quality standards and, if successful, is deployed into production. Failures are reported and fixed with highest priority.


Besides some vintage editions of existing modules, the A-135ABC VC Performance mixer modules, the A-110-6Trapezoid Thru Zero Quadrature VCO and a new A-100LC1 case (economically priced small housing with 48 HP width) there was also one other interesting new module announcement:
Module A-150-8 contains eight manually/voltage controlled switches.
Each of the eight switches has a manual control button (Man.), a control voltage input (CV), a common Out / Input (O/I), and two In / Outputs (I/O1, I/O2).
The switches are bi-directional, i.e. they can work in both directions, so can connect one input to either of two outputs, or either of two inputs to one output.
|A-150-8 Octal VC Switch prototype|
Two LEDs show which in / output is active (ie. which is connected to the common out / input).
In addition the LEDs are used for the programming of the module:
For each unit the operating mode can be selected:
Toggle or Level controlled. In Toggle mode the rising edge of the CV input or operating the manual control button changes the state of the switch. In Level mode the switch state is defined by the voltage applied to the CV input (low voltage = I/O1, high voltage = I/O2) or by the state of the manual control button (not pressed = I/O1, pressed = I/O2).
The modes are programmed very easily: Operating the Toggle/Level button of the program section displays the current state of each switch with the LEDs (left LED on = Toggle mode, right LED on = Level mode).
Operating the manual control button of the switch in question changes the toggle/level mode.
In addition it's possible to define master/slave groups. In such a group the upper unit (= master) controls also the state of the following switches provided that they are defined as slaves.
Master/slave programming is also very simple: Operating the Master/Slave button of the program section displays the current state of each switch with the LEDs (left LED on = Master, right LED on = Slave).
Operating the manual control button of the switch in question changes the master/slave mode.
When all 8 units are defined as master each switch is independent of each other. If for example the sequence is MSSSMSMS the control unit of the first switch also controls the switches 2, 3 and 4. The control unit of switch #5 also controls the switch #6, and the control unit of switch #7 also controls the switch #8.
Doepfer is also thinking about a small preset management with eight presets which store the states and modes of all switches. But they are not yet sure if this makes sense because the configuration of the switches is associated very closely to the patching of the sockets.
Date of Delivery: Spring 2017
Price: ~ US$ 160.00 (Euro 150.00)


Sereja is interested in intervals of numbers, so he has prepared a problem about intervals for you. An interval of numbers is a pair of integers [l, r] (1 ≤ l ≤ r ≤ m). Interval [l1, r1] belongs to interval [l2, r2] if the following condition is met: l2 ≤ l1 ≤ r1 ≤ r2.

Sereja wants to write out a sequence of n intervals [l1, r1], [l2, r2], ..., [ln, rn] on a piece of paper. At that, no interval in the sequence can belong to some other interval of the sequence. Also, Sereja loves number x very much and he wants some (at least one) interval in the sequence to have li = x. Sereja wonders, how many distinct ways to write such intervals are there?

Help Sereja and find the required number of ways modulo 1000000007 (109 + 7).

Two ways are considered distinct if there is such j (1 ≤ j ≤ n), that the j-th intervals in two corresponding sequences are not equal.


Brilliantnovel 《Imperial Commander: His Pretty Wife Is Spoiled Rotten》 – Chapter 1069 – Interested Parties fragile exciting share-p1
Novel–Imperial Commander: His Pretty Wife Is Spoiled Rotten–Imperial Commander: His Pretty Wife Is Spoiled Rotten
Chapter 1069 – Interested Parties erratic meat
Apart from not developing something, they had already been utterly embarra.s.sed. As for Liang Xinyi, she definitely wouldn’t have the ability to type in Jingdu’s socialite group of friends nowadays. It may be also hard for her to ever get a spouse.
Liang Xinyi is a mislead who seems to be neither bright adequate nor shrewd plenty of. So she would become a hassle-free weapon for Qiao Ximin to make use of.
D*mn it! Again it was subsequently all Yun Xi’s negligence! It turned out all her mistake!
Su Donglin then converted around and checked out Liang Xinyi. “You superior get ready for the purpose taken place tonight. We will not just for leave behind the issue in that. Also, even if you are area of the Su household, don’t count on us that will help you with a single thing you are likely to do. If you are going to visit around seeking issues, you better understand to look after it yourself.”
In Liang Xiuqin’s viewpoint, Chen Lixue possessed decided on to jump into this case themselves. For this reason, she deserved regardless of what was in retailer on her down the road.
Without Yun Xi, anything could have eliminated in line with her program, and issues wouldn’t have been found like this now.
Whatever happened today would be described as a significant blow to her. Not only does she not get anything at all fantastic out of it, it had even totally exposed her loved ones.h.i.+p with Han Zhongteng. She was so embarra.s.sed with this fiasco.
It appeared like she got designed the best relocate, as just everything would deepen the hatred and trouble between them.
Liang Xinyi acquired used loads of efforts to gain access to the socialite circle in Jingdu. It had been an opportunity she experienced picked up by breaking up her dad and mum. But, considering that she was about to walk into the group, she acquired kicked out appropriate within the entrance.
Chen Lixue was really a showoff who experienced humiliated Liang Xiuqin by resting together with her husband. Check out her now! Her girl went around everywhere searching for issues and had even messed up her wedding event.
She just has to determine exactly how to utilise the possibilities!
Chen Lixue certainly possessed a excellent little princess, who decided to go around trying to find trouble without the need of forgetting to pull her mom down with her.
As the masses dispersed, Su Donglin and Su Zongping have been the only real people in the Su family left within the pool area. The remaining got eliminated straight back to the banquet hall to captivate the visitors.
Liang Xinyi possessed invested many work to get involved with the socialite group of friends in Jingdu. It was a chance she had received by separating her daddy and mom. But, considering that she was about to enter the group of friends, she have kicked out perfect in the front door.
Just wait around, Yun Xi, I will make sure you will have a tastes of the items I experienced today.
Chen Lixue was a showoff who experienced humiliated Liang Xiuqin by sleep together with her husband. Look at her now! Her girl proceeded to go around everywhere looking for trouble along with even messed up her big day.
In Liang Xiuqin’s judgment, Chen Lixue experienced selected to leap into this case themselves. Consequently, she deserved whatever is in retail store for her at some point.
Immediately after Liang Xinyi was removed, Qiao Ximin walked out of a dim area. Her outfit influenced as she migrated, there was an unconcealable satisfied expression in her deal with.
The deal with between Liang Xinyi and Yun Xi had been significantly more intense than she obtained dreamed. And she was anticipating the following one.
Liang Xiuqin believed so excellent seeing that happen.
Chapter 1069: Interested Functions
Liang Xinyi is a mislead who is neither brilliant ample nor shrewd sufficient. So she would grow to be a straightforward weapon for Qiao Ximin to implement.
Chen Lixue experienced boasted about marrying a prosperous mankind. But she probably wouldn’t be able to guide the at ease life a of abundant spouse.
She possessed already anticipated the Su spouse and children would not part of to support her cleanup any chaos. Even so, for Su Donglin to mention it straight away to her facial area, she still felt extremely humiliated.
Chen Lixue certainly got a great girl, who decided to go around searching for difficulty with out forgetting to pull her new mother down along with her.
After everybody eventually left, Su Donglin termed for his a.s.sistant in the future above, and he instructed him in the frosty sound, “Take them lower back, and don’t permit them to show up here again this evening.”
Chapter 1069: Fascinated Functions
Liang Xinyi is actually a trick that is neither vibrant more than enough nor shrewd more than enough. So she would become a simple tool for Qiao Ximin to make use of.
Su Donglin’s ice cold phrases. .h.i.t Liang Xinyi tricky. She acquired just healed slightly in the surprise and embarra.s.sment she obtained gone through just now.
Liang Xiuqin was surprised that Yun Xi, who she possessed always believed was actually a jinx, might get the Huo loved ones heir plus the Jiang family members heir to talk up on her behalf. Since when acquired she turn out to be a real preferred female?
With out Yun Xi, every thing may have removed depending on her strategy, and factors wouldn’t have proved this way these days.
Liang Xiuqin experienced so good seeing that transpire.
Chen Lixue got boasted about marrying a well-off male. But she probably wouldn’t have the capacity to cause the secure lifestyle a of loaded partner.
She just has to understand precisely how to utilise the opportunities!
who said that youth is wasted on the young
It seemed like she got built the best transfer, as just something would deepen the hatred and clash between the two.
After everybody remaining, Su Donglin named for his a.s.sistant to come around, and the man instructed him inside of a cool sound, “Take them rear, and do not allow them to turn up here again tonight.”


Consider some set of distinct characters $$$A$$$ and some string $$$S$$$, consisting of exactly $$$n$$$ characters, where each character is present in $$$A$$$.

You are given an array of $$$m$$$ integers $$$b$$$ ($$$b_1 < b_2 < \dots < b_m$$$).

You are allowed to perform the following move on the string $$$S$$$:

1. Choose some valid $$$i$$$ and set $$$k = b_i$$$;
2. Take the first $$$k$$$ characters of $$$S = Pr_k$$$;
3. Take the last $$$k$$$ characters of $$$S = Su_k$$$;
4. Substitute the first $$$k$$$ characters of $$$S$$$ with the reversed $$$Su_k$$$;
5. Substitute the last $$$k$$$ characters of $$$S$$$ with the reversed $$$Pr_k$$$.

For example, let's take a look at $$$S =$$$ "abcdefghi" and $$$k = 2$$$. $$$Pr_2 =$$$ "ab", $$$Su_2 =$$$ "hi". Reversed $$$Pr_2 =$$$ "ba", $$$Su_2 =$$$ "ih". Thus, the resulting $$$S$$$ is "ihcdefgba".

The move can be performed arbitrary number of times (possibly zero). Any $$$i$$$ can be selected multiple times over these moves.

Let's call some strings $$$S$$$ and $$$T$$$ equal if and only if there exists such a sequence of moves to transmute string $$$S$$$ to string $$$T$$$. For the above example strings "abcdefghi" and "ihcdefgba" are equal. Also note that this implies $$$S = S$$$.

The task is simple. Count the number of distinct strings.

The answer can be huge enough, so calculate it modulo $$$998244353$$$.