[inst/examples/example_experiment.R:91:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/examples/example_experiment.R#L91) *style:* **Commented code should be removed.**
```r
  # library(raster)
    ^~~~~~~~~~~~~~~
```
[inst/examples/example_experiment.R:92:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/examples/example_experiment.R#L92) *style:* **Commented code should be removed.**
```r
  # beginCluster(20) # if you have multiple clusters available, use them here to save time
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/examples/example_experiment.R:96:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/examples/example_experiment.R#L96) *style:* **Commented code should be removed.**
```r
  # endCluster() # end the clusters
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/examples/example_experiment.R:152:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/examples/example_experiment.R#L152) *style:* **Commented code should be removed.**
```r
  # fires <- lapply(sims, function(x) x$landscape$fires) %>% stack
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/examples/example_POM.R:48:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/examples/example_POM.R#L48) *style:* **Commented code should be removed.**
```r
  # cl <- makeCluster(detectCores() - 1) # not implemented yet in DEoptim
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/examples/example_POM.R:83:4:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/examples/example_POM.R#L83) *style:* **Commented code should be removed.**
```r
  #stopCluster(cl) # not yet implemented, waiting for DEoptim
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/examples/example_POM.R:106:34:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/examples/example_POM.R#L106) *style:* **Variable or function name should be lowerCamelCase.**
```r
    params(sim1)$caribouMovement$N <- pars[2]
                                 ^
```
[inst/examples/example_POM.R:113:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/examples/example_POM.R#L113) *style:* **Variable or function name should be lowerCamelCase.**
```r
    nPattern_Out <- caribouFn(out$caribou)
    ^~~~~~~~~~~~
```
[inst/examples/example_POM.R:119:7:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/examples/example_POM.R#L119) *style:* **Commented code should be removed.**
```r
    # cat(minimizeFn)
      ^~~~~~~~~~~~~~~
```
[inst/examples/example_POM.R:120:7:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/examples/example_POM.R#L120) *style:* **Commented code should be removed.**
```r
    # cat(" ")
      ^~~~~~~~
```
[inst/examples/example_POM.R:121:7:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/examples/example_POM.R#L121) *style:* **Commented code should be removed.**
```r
    # cat(pars)
      ^~~~~~~~~
```
[inst/examples/example_POM.R:122:7:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/examples/example_POM.R#L122) *style:* **Commented code should be removed.**
```r
    # cat("\n")
      ^~~~~~~~~
```
[inst/sampleModules/caribouMovement/caribouMovement.R:1:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/caribouMovement/caribouMovement.R#L1) *style:* **Variable or function name should be lowerCamelCase.**
```r
SpaDES.core.version <- "0.1.0"
^~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/caribouMovement/caribouMovement.R:54:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/caribouMovement/caribouMovement.R#L54) *style:* **Variable or function name should be lowerCamelCase.**
```r
doEvent.caribouMovement <- function(sim, eventTime, eventType, debug = FALSE) {
^~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/caribouMovement/caribouMovement.R:78:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/caribouMovement/caribouMovement.R#L78) *style:* **Lines should not be more than 100 characters.**
```r
      sim <- scheduleEvent(sim, time(sim) + SpaDES.core::P(sim)$moveInterval, "caribouMovement", "move")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/caribouMovement/caribouMovement.R:82:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/caribouMovement/caribouMovement.R#L82) *style:* **Lines should not be more than 100 characters.**
```r
      Plot(sim$caribou, addTo = paste("sim", SpaDES.core::P(sim)$stackName, "habitatQuality", sep = "$"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/caribouMovement/caribouMovement.R:86:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/caribouMovement/caribouMovement.R#L86) *style:* **Lines should not be more than 100 characters.**
```r
      sim <- scheduleEvent(sim, time(sim) + SpaDES.core::P(sim)$.plotInterval, "caribouMovement", "plot", .last())
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/caribouMovement/caribouMovement.R:90:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/caribouMovement/caribouMovement.R#L90) *style:* **Lines should not be more than 100 characters.**
```r
      Plot(sim$caribou, addTo = paste("sim", SpaDES.core::P(sim)$stackName, "habitatQuality", sep = "$"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/caribouMovement/caribouMovement.R:95:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/caribouMovement/caribouMovement.R#L95) *style:* **Lines should not be more than 100 characters.**
```r
      sim <- scheduleEvent(sim, time(sim) + SpaDES.core::P(sim)$.plotInterval, "caribouMovement", "plot", .last())
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/caribouMovement/caribouMovement.R:102:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/caribouMovement/caribouMovement.R#L102) *style:* **Lines should not be more than 100 characters.**
```r
      sim <- scheduleEvent(sim, time(sim) + SpaDES.core::P(sim)$.saveInterval, "caribouMovement", "save", .last() + 1)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/caribouMovement/caribouMovement.R:114:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/caribouMovement/caribouMovement.R#L114) *style:* **Variable or function name should be lowerCamelCase.**
```r
Init <- function(sim) {
^~~~
```
[inst/sampleModules/caribouMovement/caribouMovement.R:121:3:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/caribouMovement/caribouMovement.R#L121) *style:* **Variable or function name should be lowerCamelCase.**
```r
  N <- SpaDES.core::P(sim)$N
  ^
```
[inst/sampleModules/caribouMovement/caribouMovement.R:122:3:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/caribouMovement/caribouMovement.R#L122) *style:* **Variable or function name should be lowerCamelCase.**
```r
  IDs <- as.character(1:N)
  ^~~
```
[inst/sampleModules/caribouMovement/caribouMovement.R:138:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/caribouMovement/caribouMovement.R#L138) *style:* **Variable or function name should be lowerCamelCase.**
```r
Move <- function(sim) {
^~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:1:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L1) *style:* **Variable or function name should be lowerCamelCase.**
```r
SpaDES.core.version <- "0.1.0"
^~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:20:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L20) *style:* **Lines should not be more than 100 characters.**
```r
    person(c("Alex", "M"), "Chubaty", email = "alexander.chubaty@canada.ca", role = c("aut", "cre")),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:21:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L21) *style:* **Lines should not be more than 100 characters.**
```r
    person(c("Eliot", "J", "B"), "McIntire", email = "eliot.mcintire@canada.ca", role = c("aut", "cre")),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:35:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L35) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter("persistprob", "numeric", 0.00, 0, 1, "probability of fire persisting in a pixel"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:37:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L37) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter("spreadprob", "numeric", 0.225, 0.05, 0.5, "probability of fire spreading into a pixel"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:38:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L38) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter("startTime", "numeric", start(sim) + 1, 0, end(sim), "time of initial fire ignition"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:39:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L39) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter(".plotInitialTime", "numeric", start(sim), start(sim), end(sim) + 1, "time to schedule first plot event"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:41:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L41) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter(".saveInitialTime", "numeric", NA_real_, NA, NA, "time to schedule first save event"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:42:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L42) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter(".saveInterval", "numeric", NA_real_, NA, NA, "time interval between save events")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:45:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L45) *style:* **Lines should not be more than 100 characters.**
```r
    expectsInput(objectName = SpaDES.core::P(sim, "fireSpread")$stackName, objectClass = "RasterStack",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:51:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L51) *style:* **Lines should not be more than 100 characters.**
```r
    createsOutput(objectName = SpaDES.core::P(sim, "fireSpread")$stackName, objectClass = "RasterStack",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:59:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L59) *style:* **Variable or function name should be lowerCamelCase.**
```r
doEvent.fireSpread <- function(sim, eventTime, eventType, debug = FALSE) {
^~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:80:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L80) *style:* **Lines should not be more than 100 characters.**
```r
      sim <- scheduleEvent(sim, SpaDES.core::P(sim)$.plotInitialTime, "fireSpread", "plot.init", .last())
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:87:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L87) *style:* **Lines should not be more than 100 characters.**
```r
      sim <- scheduleEvent(sim, time(sim), "fireSpread", "stats") # do stats immediately following burn
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:88:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L88) *style:* **Lines should not be more than 100 characters.**
```r
      sim <- scheduleEvent(sim, time(sim) + SpaDES.core::P(sim)$returnInterval, "fireSpread", "burn")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:108:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L108) *style:* **Lines should not be more than 100 characters.**
```r
      stackName <- SpaDES.core::P(sim)$stackName # Plot doesn't like long names -- create local variable
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:143:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L143) *style:* **Variable or function name should be lowerCamelCase.**
```r
Init <- function(sim) {
^~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:147:3:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L147) *style:* **Variable or function name should be lowerCamelCase.**
```r
  Fires <- raster(extent(landscapes), ncol = ncol(landscapes),
  ^~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:151:3:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L151) *style:* **Variable or function name should be lowerCamelCase.**
```r
  Fires <- setValues(Fires, 0)
  ^~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:154:14:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L154) *style:* **Variable or function name should be lowerCamelCase.**
```r
  landscapes$Fires <- Fires
             ^~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:160:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L160) *style:* **Variable or function name should be lowerCamelCase.**
```r
Burn <- function(sim) {
^~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:163:3:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L163) *style:* **Variable or function name should be lowerCamelCase.**
```r
  Fires <- spread(landscapes[[1]],
  ^~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:175:14:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L175) *style:* **Variable or function name should be lowerCamelCase.**
```r
  landscapes$Fires <- Fires
             ^~~~~
```
[inst/sampleModules/fireSpread/fireSpread.R:182:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/fireSpread/fireSpread.R#L182) *style:* **Variable or function name should be lowerCamelCase.**
```r
Stats <- function(sim) {
^~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:1:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L1) *style:* **Variable or function name should be lowerCamelCase.**
```r
SpaDES.core.version <- "0.1.0"
^~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:33:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L33) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter("inRAM", "logical", FALSE, TRUE, FALSE, "should the raster be stored in memory?"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:34:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L34) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter("nx", "numeric", 100L, 10L, 500L, "size of map (number of pixels) in the x dimension"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:35:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L35) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter("ny", "numeric", 100L, 10L, 500L, "size of map (number of pixels) in the y dimension"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:37:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L37) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter(".plotInitialTime", "numeric", start(sim), start(sim), NA, "time to schedule first plot event"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:38:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L38) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter(".plotInterval", "numeric", NA_real_, NA, NA, "time interval between plot events"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:39:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L39) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter(".saveInitialTime", "numeric", NA_real_, NA, NA, "time to schedule first save event"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:40:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L40) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter(".saveInterval", "numeric", NA_real_, NA, NA, "time interval between save events"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:41:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L41) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter(".useCache", "logical", FALSE, c("init", "plot"), NA, "should the module result be cached for future use")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:49:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L49) *style:* **Lines should not be more than 100 characters.**
```r
    createsOutput(objectName = SpaDES.core::P(sim, "randomLandscapes")$stackName, objectClass = "RasterStack",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:55:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L55) *style:* **Variable or function name should be lowerCamelCase.**
```r
doEvent.randomLandscapes <- function(sim, eventTime, eventType, debug = FALSE) {
^~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:63:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L63) *style:* **Lines should not be more than 100 characters.**
```r
      sim <- scheduleEvent(sim, SpaDES.core::P(sim)$.plotInitialTime, "randomLandscapes", "plot", .last())
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:64:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L64) *style:* **Lines should not be more than 100 characters.**
```r
      sim <- scheduleEvent(sim, SpaDES.core::P(sim)$.saveInitialTime, "randomLandscapes", "save", .last() + 1)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:76:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L76) *style:* **Lines should not be more than 100 characters.**
```r
      sim <- scheduleEvent(sim, time(sim) + SpaDES.core::P(sim)$.saveInterval, "randomLandscapes", "save", .last() + 1)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:87:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L87) *style:* **Variable or function name should be lowerCamelCase.**
```r
Init <- function(sim) {
^~~~
```
[inst/sampleModules/randomLandscapes/randomLandscapes.R:101:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/randomLandscapes/randomLandscapes.R#L101) *style:* **Variable or function name should be lowerCamelCase.**
```r
    DEM <- gaussMap(template, scale = 300, var = 0.03, speedup = speedup, inMemory = inMemory)
    ^~~
```
[inst/sampleModules/SpaDES_sampleModules/SpaDES_sampleModules.R:17:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/SpaDES_sampleModules/SpaDES_sampleModules.R#L17) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter(".plotInitialTime", "numeric", NA_real_, NA, NA, "This describes the simulation time at which the first plot event should occur"),
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[inst/sampleModules/SpaDES_sampleModules/SpaDES_sampleModules.R:18:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/inst/sampleModules/SpaDES_sampleModules/SpaDES_sampleModules.R#L18) *style:* **Lines should not be more than 100 characters.**
```r
    defineParameter(".saveInitialTime", "numeric", NA_real_, NA, NA, "This describes the simulation time at which the first save event should occur")
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:85:6:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L85) *style:* **Commented code should be removed.**
```r
    #names(envirHash) <- names(allObjsInSimList)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:134:22:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L134) *style:* **Variable or function name should be lowerCamelCase.**
```r
      obj$.list[[1]]$._startClockTime <- NULL
                     ^~~~~~~~~~~~~~~~
```
[R/cache.R:135:22:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L135) *style:* **Variable or function name should be lowerCamelCase.**
```r
      obj$.list[[1]]$._timestamp <- NULL
                     ^~~~~~~~~~~
```
[R/cache.R:242:50:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L242) *style:* **Commas should always have a space after.**
```r
          cat(crayon::blue("  Using ", fromWhere," copy of", cur$moduleName, "module\n"))
                                                 ^
```
[R/cache.R:253:50:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L253) *style:* **Commas should always have a space after.**
```r
          cat(crayon::blue("  Using ", fromWhere," copy of", cur$eventType, "event in",
                                                 ^
```
[R/cache.R:303:10:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L303) *style:* **Commented code should be removed.**
```r
        #checkPath(cacheRepo, create = TRUE) #SpaDES dependency
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:364:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L364) *style:* **Lines should not be more than 100 characters.**
```r
      pre <- lapply(preDigest[[whSimList]]$.list[[whSimList2]][existingObjs], fastdigest::fastdigest)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:443:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L443) *style:* **Lines should not be more than 100 characters.**
```r
        #   makes soft copy of all objects, i.e., they have the identical objects, which are pointers only
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:459:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L459) *style:* **Lines should not be more than 100 characters.**
```r
        createOutputs <- c(createOutputs, currModules) # add the environments for each module - allow local objects
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:475:36:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L475) *style:* **Put spaces around all infix operators.**
```r
        if (length(object2@current)==0) { # means it is not in a spades call
                                  ~^~~
```
[R/cache.R:475:41:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L475) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
        if (length(object2@current)==0) { # means it is not in a spades call
                                        ^
```
[R/cache.R:484:63:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L484) *style:* **Put spaces around all infix operators.**
```r
          eventsAddedByThisModule <- events(object)$moduleName==current(object2)$moduleName
                                                             ~^~~
```
[R/cache.R:488:42:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L488) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
              b <- lapply(b, function(x) {x[["order"]] <- 2; x})
                                         ^
```
[R/cache.R:491:42:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L491) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
              d <- lapply(d, function(x) {x[["order"]] <- 1; x})
                                         ^
```
[R/cache.R:498:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L498) *style:* **Lines should not be more than 100 characters.**
```r
              #              args = list(append(object@events[eventsAddedByThisModule], object2@events)))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:501:56:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L501) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
              object2@events <- lapply(f1, function(f) {f$order <- NULL; f})
                                                       ^
```
[R/cache.R:503:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L503) *style:* **Lines should not be more than 100 characters.**
```r
              #                           args = list(append(object@events[eventsAddedByThisModule], object2@events)))
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:506:12:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L506) *style:* **Commented code should be removed.**
```r
          #object2@events <- unique(rbindlist(list(object@events, object2@events)))
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:510:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L510) *style:* **Lines should not be more than 100 characters.**
```r
        # This is for objects that are not in the return environment yet because they are unrelated to the
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:523:10:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L523) *style:* **Place a space before left parenthesis, except in a function call.**
```r
      for(atts in attrsToGrab) {
         ^
```
[R/cache.R:527:9:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L527) *style:* **Commented code should be removed.**
```r
      # attr(object2, "tags") <- attr(object, "tags")
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:528:9:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L528) *style:* **Commented code should be removed.**
```r
      # attr(object2, "call") <- attr(object, "call")
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:529:9:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L529) *style:* **Commented code should be removed.**
```r
      # attr(object2, "function") <- attr(object, "function")
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:562:66:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L562) *style:* **Variable or function name should be lowerCamelCase.**
```r
  setGeneric(".addTagsToOutput", function(object, outputObjects, FUN) {
                                                                 ^~~
```
[R/cache.R:585:48:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L585) *style:* **Variable or function name should be lowerCamelCase.**
```r
  definition = function(object, outputObjects, FUN, preDigestByClass) {
                                               ^~~
```
[R/cache.R:678:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L678) *style:* **Variable or function name should be lowerCamelCase.**
```r
objSize.simList <- function(x, quick = getOption("reproducible.quick", FALSE)) {
^~~~~~~~~~~~~~~
```
[R/cache.R:705:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L705) *style:* **Variable or function name should be lowerCamelCase.**
```r
makeMemoiseable.simList <- function(x) {
^~~~~~~~~~~~~~~~~~~~~~~
```
[R/cache.R:713:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/cache.R#L713) *style:* **Variable or function name should be lowerCamelCase.**
```r
unmakeMemoiseable.simList_ <- function(x) {
^~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/check.R:151:7:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/check.R#L151) *style:* **Commented code should be removed.**
```r
    # modules <- sim@modules
      ^~~~~~~~~~~~~~~~~~~~~~
```
[R/check.R:152:7:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/check.R#L152) *style:* **Commented code should be removed.**
```r
    # userModules <- modules[-which(coreModules %in% modules)]
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/checkpoint.R:36:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/checkpoint.R#L36) *style:* **Variable or function name should be lowerCamelCase.**
```r
doEvent.checkpoint <- function(sim, eventTime, eventType, debug = FALSE) {
^~~~~~~~~~~~~~~~~~
```
[R/code-checking.R:86:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L86) *style:* **Lines should not be more than 100 characters.**
```r
                xAsCall <- .isLastLineSim(x = x, xAsString = bb[seq(funStarts[yy], funEnds[yy + 1])])
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/code-checking.R:90:16:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L90) *style:* **Commented code should be removed.**
```r
              #y = strsplit(bb[funStarts[yy]], split = "\\s+")[[1]][1]
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/code-checking.R:91:53:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L91) *style:* **Commas should always have a space after.**
```r
              y <- paste0(cantCodeCheckMessage, "'",bb[funStarts[yy]], "'")
                                                    ^
```
[R/code-checking.R:144:39:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L144) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
    if (identical(type, "returnSim")) { # This is intended for only the last line of a function
                                      ^
```
[R/code-checking.R:182:48:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L182) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
      } else if (identical(x[[1]], quote(`<-`)) ) {
                                               ^
```
[R/code-checking.R:185:62:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L185) *style:* **Opening curly braces should never go on their own line and should always be followed by a new line.**
```r
            if (any(grepl(x[[2]][[2]], pattern = ".xData"))) {# i.e., sim@.xData
                                                             ^
```
[R/code-checking.R:202:19:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L202) *style:* **Place a space before left parenthesis, except in a function call.**
```r
          x <- x[-(1:2)]
                  ^
```
[R/code-checking.R:218:29:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L218) *style:* **Place a space before left parenthesis, except in a function call.**
```r
          x[[2]] <- x[[2]][-(1:2)]
                            ^
```
[R/code-checking.R:320:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L320) *style:* **Lines should not be more than 100 characters.**
```r
    allChecks[anyCantCodeCheck] <- lapply(names(cantCodeCheck[anyCantCodeCheck]), function(objName) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/code-checking.R:369:51:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L369) *style:* **Commas should always have a space after.**
```r
                                              " ",verb," declared in outputObjects, ",
                                                  ^
```
[R/code-checking.R:369:56:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L369) *style:* **Commas should always have a space after.**
```r
                                              " ",verb," declared in outputObjects, ",
                                                       ^
```
[R/code-checking.R:385:20:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L385) *style:* **Commas should always have a space after.**
```r
               " ",verb," declared in inputObjects, ",
                   ^
```
[R/code-checking.R:385:25:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L385) *style:* **Commas should always have a space after.**
```r
               " ",verb," declared in inputObjects, ",
                        ^
```
[R/code-checking.R:396:90:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L396) *style:* **Commas should always have a space after.**
```r
                                       paste0(paste(missingFrmMod, collapse = ", "), " ",verb,
                                                                                ^
```
[R/code-checking.R:441:75:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L441) *style:* **Commas should always have a space after.**
```r
             " but only for the 'get' functions, not the 'set' function ","
                                                                          ^
```
[R/code-checking.R:455:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L455) *style:* **Lines should not be more than 100 characters.**
```r
    missingInMetadata <- simAssignsNotInDotInputObjects[!(simAssignsNotInDotInputObjects %in% outputObjNames)]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/code-checking.R:464:24:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L464) *style:* **Commas should always have a space after.**
```r
                   " ",verbs[[fn]]," assigned to sim inside ",
                       ^
```
[R/code-checking.R:464:36:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L464) *style:* **Commas should always have a space after.**
```r
                   " ",verbs[[fn]]," assigned to sim inside ",
                                   ^
```
[R/code-checking.R:465:33:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L465) *style:* **Commas should always have a space after.**
```r
                   fn, ", but ",verbs[[fn]]," not declared in outputObjects")
                                ^
```
[R/code-checking.R:465:45:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L465) *style:* **Commas should always have a space after.**
```r
                   fn, ", but ",verbs[[fn]]," not declared in outputObjects")
                                            ^
```
[R/code-checking.R:472:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L472) *style:* **Lines should not be more than 100 characters.**
```r
    missingInMetadata <- simAssignsInDotInputObjects[!(simAssignsInDotInputObjects %in% inputObjNames)]
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/code-checking.R:481:24:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L481) *style:* **Commas should always have a space after.**
```r
                   " ",verbs[[fn]]," assigned to sim inside ",
                       ^
```
[R/code-checking.R:481:36:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L481) *style:* **Commas should always have a space after.**
```r
                   " ",verbs[[fn]]," assigned to sim inside ",
                                   ^
```
[R/code-checking.R:482:33:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L482) *style:* **Commas should always have a space after.**
```r
                   fn, ", but ",verbs[[fn]]," not declared in inputObjects")
                                ^
```
[R/code-checking.R:482:45:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L482) *style:* **Commas should always have a space after.**
```r
                   fn, ", but ",verbs[[fn]]," not declared in inputObjects")
                                            ^
```
[R/code-checking.R:504:24:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L504) *style:* **Commas should always have a space after.**
```r
                   " ",verbs[[fn]]," used from sim inside ",
                       ^
```
[R/code-checking.R:504:36:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L504) *style:* **Commas should always have a space after.**
```r
                   " ",verbs[[fn]]," used from sim inside ",
                                   ^
```
[R/code-checking.R:505:33:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L505) *style:* **Commas should always have a space after.**
```r
                   fn, ", but ",verbs[[fn]]," not declared in inputObjects")
                                ^
```
[R/code-checking.R:505:45:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L505) *style:* **Commas should always have a space after.**
```r
                   fn, ", but ",verbs[[fn]]," not declared in inputObjects")
                                            ^
```
[R/code-checking.R:517:13:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L517) *style:* **Commas should always have a space after.**
```r
        " ",verb," used from sim inside ",
            ^
```
[R/code-checking.R:517:18:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L517) *style:* **Commas should always have a space after.**
```r
        " ",verb," used from sim inside ",
                 ^
```
[R/code-checking.R:519:18:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L519) *style:* **Commas should always have a space after.**
```r
        ", but ",verb," not declared in inputObjects"
                 ^
```
[R/code-checking.R:519:23:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L519) *style:* **Commas should always have a space after.**
```r
        ", but ",verb," not declared in inputObjects"
                      ^
```
[R/code-checking.R:662:6:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L662) *style:* **Commented code should be removed.**
```r
    #unique(pd[outerWh, "line1"])
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/code-checking.R:666:34:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L666) *style:* **Commas should always have a space after.**
```r
      whInner <- any((pd[outerWh,"line1"] < lwf) & (pd[outerWh,"line2"] > lwf) )
                                 ^
```
[R/code-checking.R:666:64:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L666) *style:* **Commas should always have a space after.**
```r
      whInner <- any((pd[outerWh,"line1"] < lwf) & (pd[outerWh,"line2"] > lwf) )
                                                               ^
```
[R/code-checking.R:666:79:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/code-checking.R#L666) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
      whInner <- any((pd[outerWh,"line1"] < lwf) & (pd[outerWh,"line2"] > lwf) )
                                                                              ^
```
[R/copy.R:37:13:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/copy.R#L37) *style:* **Variable or function name should be lowerCamelCase.**
```r
            sim_ <- object
            ^~~~
```
[R/copy.R:91:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/copy.R#L91) *style:* **Trailing blank lines are superfluous.**
```r

^
```
[R/copy.R:92:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/copy.R#L92) *style:* **Trailing blank lines are superfluous.**
```r

^
```
[R/downloadData.R:54:96:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/downloadData.R#L54) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
    io <- .parseModulePartial(sim, modules = list(module), defineModuleElement = "inputObjects" )
                                                                                ^
```
[R/downloadData.R:244:7:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/downloadData.R#L244) *style:* **Commented code should be removed.**
```r
    # parsedModule <- parse(file = file.path(path, module, paste0(module, '.R')))
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/downloadData.R:245:7:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/downloadData.R#L245) *style:* **Commented code should be removed.**
```r
    # urls <- .getSourceURL(pattern = fileToDownload, x = parsedModule)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/downloadData.R:252:8:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/downloadData.R#L252) *style:* **Commented code should be removed.**
```r
      #urls <- moduleMetadata(module, path)$inputObjects$sourceURL
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/downloadData.R:277:27:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/downloadData.R#L277) *style:* **Commas should always have a space after.**
```r
    chksums2 <- chksums[0,]
                          ^
```
[R/downloadData.R:278:6:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/downloadData.R#L278) *style:* **Commented code should be removed.**
```r
    #children <- moduleMetadata(module, path)$childModules
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/downloadData.R:281:13:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/downloadData.R#L281) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
        if ( all( nzchar(children) & !is.na(children) ) ) {
            ^
```
[R/downloadData.R:281:18:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/downloadData.R#L281) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
        if ( all( nzchar(children) & !is.na(children) ) ) {
                 ^
```
[R/downloadData.R:281:54:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/downloadData.R#L281) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
        if ( all( nzchar(children) & !is.na(children) ) ) {
                                                     ^
```
[R/downloadData.R:281:56:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/downloadData.R#L281) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
        if ( all( nzchar(children) & !is.na(children) ) ) {
                                                       ^
```
[R/experiment.R:214:7:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/experiment.R#L214) *style:* **Commented code should be removed.**
```r
    # cl <- tryCatch(getCluster(), error = function(x) NULL)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/experiment.R:215:7:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/experiment.R#L215) *style:* **Commented code should be removed.**
```r
    # on.exit(if (!is.null(cl)) returnCluster(), add = TRUE)
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/experiment.R:217:6:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/experiment.R#L217) *style:* **Commented code should be removed.**
```r
    #if (length(modules) == 0) modules <- list(modules(sim)[-(1:4)])
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/experiment.R:221:11:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/experiment.R#L221) *style:* **Commented code should be removed.**
```r
        # unlist(params[paramsTmp], recursive = FALSE)
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/experiment.R:313:58:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/experiment.R#L313) *style:* **Commented code should be removed.**
```r
            params(sim_)[[mod[x]]][[param[[x]]]] <- val #factorialExp[ind,x]
                                                         ^~~~~~~~~~~~~~~~~~~
```
[R/experiment.R:356:11:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/experiment.R#L356) *style:* **Variable or function name should be lowerCamelCase.**
```r
          sim_ <- sim
          ^~~~
```
[R/helpers.R:232:74:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/helpers.R#L232) *style:* **Place a space before left parenthesis, except in a function call.**
```r
                             paste0("package:", .pkgEnv$corePackagesVec[-(1:2)]))
                                                                         ^
```
[R/helpers.R:264:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/helpers.R#L264) *style:* **Variable or function name should be lowerCamelCase.**
```r
all.equal.simList <- function(target, current, ...) {
^~~~~~~~~~~~~~~~~
```
[R/helpers.R:280:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/helpers.R#L280) *style:* **Commented code should be removed.**
```r
  # suppressWarnings(rm("._startClockTime", envir = envir(target)))
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/helpers.R:281:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/helpers.R#L281) *style:* **Commented code should be removed.**
```r
  # suppressWarnings(rm("._startClockTime", envir = envir(current)))
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/helpers.R:282:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/helpers.R#L282) *style:* **Commented code should be removed.**
```r
  # suppressWarnings(rm("._firstEventClockTime", envir = envir(target)))
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/helpers.R:283:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/helpers.R#L283) *style:* **Commented code should be removed.**
```r
  # suppressWarnings(rm("._firstEventClockTime", envir = envir(current)))
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/helpers.R:284:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/helpers.R#L284) *style:* **Commented code should be removed.**
```r
  # suppressWarnings(rm(".timestamp", envir = envir(target)))
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/helpers.R:285:5:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/helpers.R#L285) *style:* **Commented code should be removed.**
```r
  # suppressWarnings(rm(".timestamp", envir = envir(current)))
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/load.R:198:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/load.R#L198) *style:* **Lines should not be more than 100 characters.**
```r
                names(argument) <- c(nam, names(formals(getFromNamespace(loadFun[y], loadPackage[y])))[1])
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
```
[R/misc-methods.R:466:55:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L466) *style:* **Do not place spaces around code in parentheses or square brackets.**
```r
          (inherits(get(w, envir = envir), "integer")) ) {
                                                      ^
```
[R/misc-methods.R:645:1:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L645) *style:* **Variable or function name should be lowerCamelCase.**
```r
Paths <- .paths()
^~~~~
```
[R/misc-methods.R:661:14:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L661) *style:* **Variable or function name should be lowerCamelCase.**
```r
    defaults$CP <- TRUE
             ^~
```
[R/misc-methods.R:665:14:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L665) *style:* **Variable or function name should be lowerCamelCase.**
```r
    defaults$IP <- TRUE
             ^~
```
[R/misc-methods.R:669:14:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L669) *style:* **Variable or function name should be lowerCamelCase.**
```r
    defaults$MP <- TRUE
             ^~
```
[R/misc-methods.R:673:14:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L673) *style:* **Variable or function name should be lowerCamelCase.**
```r
    defaults$OP <- TRUE
             ^~
```
[R/misc-methods.R:694:73:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L694) *style:* **Commas should always have a space after.**
```r
              if (!defaults$CP) paste0("    reproducible.cachePath = '",normPath(cachePath),"'\n"),
                                                                        ^
```
[R/misc-methods.R:694:93:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L694) *style:* **Commas should always have a space after.**
```r
              if (!defaults$CP) paste0("    reproducible.cachePath = '",normPath(cachePath),"'\n"),
                                                                                ^
```
[R/misc-methods.R:695:67:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L695) *style:* **Commas should always have a space after.**
```r
              if (!defaults$IP) paste0("    spades.inputPath = '",normPath(inputPath),"'\n"),
                                                                  ^
```
[R/misc-methods.R:695:87:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L695) *style:* **Commas should always have a space after.**
```r
              if (!defaults$IP) paste0("    spades.inputPath = '",normPath(inputPath),"'\n"),
                                                                                ^
```
[R/misc-methods.R:696:68:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L696) *style:* **Commas should always have a space after.**
```r
              if (!defaults$OP) paste0("    spades.outputPath = '",normPath(outputPath),"'\n"),
                                                                   ^
```
[R/misc-methods.R:696:89:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L696) *style:* **Commas should always have a space after.**
```r
              if (!defaults$OP) paste0("    spades.outputPath = '",normPath(outputPath),"'\n"),
                                                                                ^
```
[R/misc-methods.R:697:68:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L697) *style:* **Commas should always have a space after.**
```r
              if (!defaults$MP) paste0("    spades.modulePath = '",modPaths,
                                                                   ^
```
[R/misc-methods.R:704:48:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L704) *style:* **Commas should always have a space after.**
```r
              "    reproducible.cachePath = '",normPath(cachePath),"'\n",
                                               ^
```
[R/misc-methods.R:704:68:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L704) *style:* **Commas should always have a space after.**
```r
              "    reproducible.cachePath = '",normPath(cachePath),"'\n",
                                                                   ^
```
[R/misc-methods.R:705:42:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L705) *style:* **Commas should always have a space after.**
```r
              "    spades.inputPath = '",normPath(inputPath),"'\n",
                                         ^
```
[R/misc-methods.R:705:62:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L705) *style:* **Commas should always have a space after.**
```r
              "    spades.inputPath = '",normPath(inputPath),"'\n",
                                                             ^
```
[R/misc-methods.R:706:43:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L706) *style:* **Commas should always have a space after.**
```r
              "    spades.outputPath = '",normPath(outputPath),"'\n",
                                          ^
```
[R/misc-methods.R:706:64:](https://github.com/PredictiveEcology/SpaDES.core/blob/4b08acd3ae76d44fa4c94a45c891393e2f249d59/R/misc-methods.R#L706) *style:* **Commas should always have a space after.**
```r
              "    spades.outputPath = '",normPath(outputPath),"'\n",
                                                               ^
```


I inspected Your OFW upgrade file:

```bash
krolik@xxx:~/Pobrane$ ../openwrt/build_dir/host/firmware-utils/bin/mkdlinkfw -i ./DIR-506L_fw_revA2_2-15B02_all_en_20130819/20130708_D-Link_DIR-506L_V2.15b02.bin
Find proper AUH header at: 0x0!
Image checksum ok.
Find proper AUH header at: 0x10A723!
Image checksum ok.
Find proper AUH header at: 0x586773!
Image checksum ok.
Find proper AUH header at: 0x5DD7C3!
Image checksum ok.
AUH 0:
        rom_id: DLK6E2114001
        derange: 0x0000
        image_checksum: 0xEA55
        space1: 0x00000000
        space2: 0x00000000
        space3: 0x0000
        lpvs: 0x02
        mbz: 0x00
        time_stamp: 0x0734E56C
        erase_start: 0x00010000
        erase_length: 0x00140000
        data_offset: 0x00010000
        data_length: 0x0010A6D3
        space4: 0x00000000
        space5: 0x00000000
        space6: 0x00000000
        space7: 0x00000000
        header_id: 0x4842
        header_version: 0x02
        space8: 0x0000
        section_id: 0x04
        image_info_type: 0x04
        image_info_offset 0x00000000
        family_member: 0x6E21
        header_checksum: 0x8039
AUH 1:
        rom_id: DLK6E2114001
        derange: 0x0000
        image_checksum: 0xF3D0
        space1: 0x00000000
        space2: 0x00000000
        space3: 0x0000
        lpvs: 0x02
        mbz: 0x00
        time_stamp: 0x0734E56C
        erase_start: 0x00150000
        erase_length: 0x00540000
        data_offset: 0x00150000
        data_length: 0x0047C000
        space4: 0x00000000
        space5: 0x00000000
        space6: 0x00000000
        space7: 0x00000000
        header_id: 0x4842
        header_version: 0x02
        space8: 0x0000
        section_id: 0x08
        image_info_type: 0x00
        image_info_offset 0x00000000
        family_member: 0x6E21
        header_checksum: 0x60EE
AUH 2:
        rom_id: DLK6E2114001
        derange: 0x0000
        image_checksum: 0xB5F7
        space1: 0x00000000
        space2: 0x00000000
        space3: 0x0000
        lpvs: 0x01
        mbz: 0x00
        time_stamp: 0x0734E56D
        erase_start: 0x00690000
        erase_length: 0x00080000
        data_offset: 0x00690000
        data_length: 0x00057000
        space4: 0x00000000
        space5: 0x00000000
        space6: 0x00000000
        space7: 0x00000000
        header_id: 0x4842
        header_version: 0x02
        space8: 0x0000
        section_id: 0x05
        image_info_type: 0x00
        image_info_offset 0x00000000
        family_member: 0x6E21
        header_checksum: 0xEEB0
AUH 3:
        rom_id: DLK6E2114001
        derange: 0x0000
        image_checksum: 0xE5AE
        space1: 0x00000000
        space2: 0x00000000
        space3: 0x0000
        lpvs: 0x01
        mbz: 0x00
        time_stamp: 0x07363A6C
        erase_start: 0x00710000
        erase_length: 0x000E0000
        data_offset: 0x00710000
        data_length: 0x00066010
        space4: 0x00000000
        space5: 0x00000000
        space6: 0x00000000
        space7: 0x00000000
        header_id: 0x4842
        header_version: 0x02
        space8: 0x0000
        section_id: 0x05
        image_info_type: 0x04
        image_info_offset 0x00000000
        family_member: 0x6E21
        header_checksum: 0x75D2
Find proper STAG header at: 0x50!
Image checksum ok.
        cmark: 0xFF
        id: 0x04
        magic: 0x2B24
        time_stamp: 0x0734E56C
        image_length: 0x10A6C3
        image_checksum: 0xE95A
        tag_checksum: 0x5408
Find proper SCH2 header at: 0x60!
Kernel checksum ok.
        magic: 0x2124
        cp_type: 0x03
        version: 0x02
        ram_addr: 0x80000000
        image_len: 0x0010A69B
        image_crc32: 0x8163B67E
        start_addr: 0x80000000
        rootfs_addr: 0xBF150000
        rootfs_len: 0x0047C000
        rootfs_crc32: 0xEB6CD146
        header_crc32: 0x7C13C2A1
        header_length: 0x0028
        cmd_line_length: 0x0000a
```

I found Your mtd layout:
```
Creating 7 MTD partitions on "raspi":
0x00000000-0x00800000 : "Whole"
0x00000000-0x00010000 : "Bootloader"
0x00010000-0x00150000 : "Kernel"
0x00150000-0x00690000 : "RootFS"
0x00690000-0x00710000 : "MyDLink"
0x00710010-0x007f0000 : "UI"
```

Please look that You don't have hidden partition between Bootloader and Kernel. You don't need use image offset. If You use offset at `0x150000`, You don't erase regular d-link kernel.


- int excepted_event;
+ unsigned long long expected_mask_with_ignore;
+ unsigned long long expected_mask_without_ignore;


Test failure is unrelated:

* Running XM tests on '10.7': https://github.com/xamarin/maccore/issues/1126


Setting state to `success` where context is `continuous-integration/jenkins/branch`.

No blocking issues found


FILE_EXEC_PATH, FAN_OPEN_EXEC, FAN_OPEN|FAN_OPEN_EXEC


..., FAN_OPEN, FAN_OPEN


FILE2_EXEC_PATH, FAN_OPEN|FAN_OPEN_EXEC, FAN_OPEN|FAN_OPEN_EXEC


Created multidev environment [learncreatebuild#ci-18](https://dashboard.pantheon.io/sites/75f2bf90-79ad-42d7-a6d4-fc5a678c7419#ci-18).

[![Visit Site](https://raw.githubusercontent.com/pantheon-systems/ci-drops-8/0.1.0/data/img/visit-site-36.png)](https://ci-18-learncreatebuild.pantheonsite.io/)


tc->expected_mask_without_ignore (already includes the FAN_OPEN)


Work is being processed on it


The whole document (webpage) is destroyed when the popup is closed, popup is very short-lived and there is no navigation around so I considered cleanup unnecessary.

That being said, I am already getting to the limits of this approach. Was considering adding the setting "screen" and this would not work using current approach. But for now it is good enough ;)


Is the expectation for this function to return integer or floating point? If it's the former, you should do a parseInt here. If it's the latter, it should be clearly documented.


but we are checking the existance of a constraint here


No need for this hunk if the condition in the loop (at well as in first loop) is changed to
... && !tc->expected_mask_with_ignore)


@antonylesuisse
I agree with Richard: either you do it in the view and it should be applied client side, or in the object definition and you expect it to be applied server side.


`player.life` не нужен в `for`, можно просто `for(; player.life > 0; ...`


Test failures are unrelated.

* error HE0038: Failed to launch the app '...' on the device 'watchOS *': The operation couldn’t be completed.: https://github.com/xamarin/maccore/issues/581


verify_event(i, event, p == 0 ? tc->expected_mask_without_ignore : tc->expected_mask_with_ignore);

no need for 3 cases


```
0x00000000-0x00800000 : "Whole"
0x00000000-0x00010000 : "Bootloader"
0x00010000-0x00150000 : "Kernel"
0x00150000-0x00690000 : "RootFS"
0x00690000-0x00710000 : "MyDLink"
0x00710010-0x007f0000 : "UI"
0x007f0000-0x00800000 : "Config"
```
If I use `0x00010000` - no recovery. (no offset option)
If I use `0x00150000` - no boot, because jboot check headers at `0x00010000` and fail with CRC.
SCH2 must be written at `0x00010000`.

Also your tool does not show last STAG header on dlink fw.
I'm working on modification, you can see progress in mine github.


Apologies. A lot of people have been quite noisy about this issue. :P

On Tue, 27 Nov 2018 at 22:49, Thomas Wilczynski <notifications@github.com>
wrote:

> Yeah not blaming ya, squashing is lossy, would be good if the migration
> framework had something to support resumable state mutation operations and
> squash like serializing the squashed migrations.
>
> —
> You are receiving this because you commented.
>
>
> Reply to this email directly, view it on GitHub
> <https://github.com/etianen/django-reversion/commit/11736d1721045f9728cc94d984f5d227885e1c26#commitcomment-31475846>,
> or mute the thread
> <https://github.com/notifications/unsubscribe-auth/AAJFCJ4NcXy7dl_3Xv3SLShLhcdmIp36ks5uzcFtgaJpZM4Y0wxv>
> .
>


ここは$('ul.list li').show();で動くはず！thirdでもやったようにaddClassとか操作系のメソッドは複数の要素に対して指定すればすべて動くので。
逆に複数の要素に対して動かないものは取得系ですね！


Awesome!


I think my suggestions make the code sorter and cleaner.
With current test (even before your changed) it is not clear what expect_event means (only for prio > 0).
expected_mask_with_ignore is a bit more self descriptive IMO
and it extends nicely for your new test cases


next()を使わなくても、これで全く問題ないよ！ここはねいらない笑


This is my code:
`def test_inv_mat(self):
        __EPS = 1e-15
        tmp = 1.
        for x in range(2, 12):
            tmp = tmp * (norm(invhilb(x) - inv_mat(hilb(x))) -
                         norm(invhilb(x) - inv(hilb(x))))
        is_ok = abs(tmp) < __EPS
        assert np.array_equal(True, is_ok)`

The code hasn't such line as
`norm_diff_vec[x - 2] = norm(invhilb(x) - inv_mat(hilb(x)))`
Maybe you forgot to update???


搞不懂虽然window.onload在初始化时调用了两次auot_adjust_height函数(还有一次是window.onresize里调用的)但是在屏幕旋转(或者说是resize事件)后高度仍然未得到修复，所以干脆使用了location.reload重新载入页面了。


Hallo


IBM Cloud [toolchain](https://console.bluemix.net/devops/toolchains/2ca141b7-9aeb-4963-8295-e8966c7e5df3?env_id=ibm%3Ayp%3Aus-south "vehicle-manufacture-sample-20181128041039153"): [Delivery Pipeline](https://console.bluemix.net/devops/pipelines/5f31c3a2-7e10-47b6-b177-8ada5471ade7?env_id=ibm%3Ayp%3Aus-south "vehicle-manufacture-sample-20181128041039153") deployed [vehicle-manufacture-sample-20181128041039153](https://github.com/jchenibm/vehicle-manufacture-sample-20181128041039153/releases/tag/deploy-ibm-yp-us-south-jchen-cn.ibm.com-demo-20181128-063707 "deploy-ibm-yp-us-south-jchen-cn.ibm.com-demo-20181128-063707") to [demo](https://console.bluemix.net/apps/b1f66d8f-e595-4d95-a956-c580e0b0d7a0?env_id=ibm:yp:us-south "ibm:yp:us-south:jchen@cn.ibm.com:demo"), including this commit


已阅


Woop!

On Wed, 28 Nov 2018, 16:16 Matt McKegg, <notifications@github.com> wrote:

> Use ssb-about@2
>
> @mixmix !!
>
> --
> You are receiving this because you were mentioned.
> Reply to this email directly or view it on GitHub:
>
> https://github.com/ssbc/patchwork/commit/1fee7c5ad4d09d75bbb58dbd2cae6001959234cb
>


I'm wondering why this was necessary? Is there an advantage to removing the const qualifier? Asking out of curiosity.


Hi! I have a question about a deprecated method className. Why didn't you try to change `return get_called_class()` to `return static::class`? In an object context ::class doesn't work because `Dynamic class names are not allowed in compile-time ::class fetch`.


eval有安全风险


缓存装饰器不应该这么复杂


也不应该用函数名来判断,装饰器就是要通用


this is OK.


Hello @jermeo ,
Why not add your new code to the original repo as a fork and I will merge it ?


hi


what's life existence?


hi hello


lat/long is a poor choice of argument names


Do you really want to call this "additionallayouts"? This sound too generic to me as these are only additional layouts in the bottom part of the page. Anyway, it works regardless of the name :)


Submitted General Description of python multithreading and multiprocessing.
You should have created basic examples of these modules so far.


This should rather be "Add own additional layout elements..." as you don't call a mustache template here anymore


add


adding extension


You are five team members supposed to work in the project.
Just one example without explanation and execution is not acceptable.


echo "666";


In columns2.mustache, we have outsourced the footer HTML and have removed it from columns2.mustache. In login.mustache, it is still there now. Can you please double-check if we should also outsource the footer on the login page like we have done in columns2.mustache?


行吧我还是改吧。。。

不过能不能把lilac.py改成可选文件啊。。。
强制留一个空的lilac.py看着也挺难受的。。。

其实我还经常会用到`grep pkgname */lilac.py`来查找pkgname在哪些包的`depends`里，
看来现在得`grep pkgname */lilac.*`了


Successfully aliased the URL <https://food-diary-g09n2v1kt.now.sh> to the following alias.

* https://food-diary.now.sh


/*
一元多项式<1170301027fs>
*/
#include <stdio.h>
#include <stdlib.h>

typedef struct ploy
{
	int coef;//系数
	int exp;//指数
	struct poly *link;//指向下一个地址的指针
}polynode,*polypointer;//链表建立，节点指针类型定义
//添加新节点
polypointer Attch(int c,int e,polypointer d)
{
    polypointer x;
    x = (polypointer)malloc(sizeof(polynode));//分配一个结构体空间给x，以便插入新节点
    x->coef = c;
    x->exp = e;
    d->link = x;
    return x;//相当于原表后面添加新节点，并返回新节点的地址
}
//比较数据并返回相应关系用于判断
char Compare(int e1,int e2)
{
    if(e1>e2) return '>';
    else if(e1<e2) return '<';
    else return '=';
}
//链表建立
polypointer InitPoly(int data[][2],int n)
{
    polypointer c,d;
    c = (polypointer)malloc(sizeof(polynode));//制造表头
    d = c;//指向表头
    for(int i = 0;i<n;i++)//按照从文件录入的数据进行链表建立
    {
        d = Attch(data[i][0],data[i][1],d);
    }
    d->link = NULL;//完善该表尾
    return c;
}
//排序(前到后，大到小)
void Sort(int data[][2],int n)
{
    int temp;
    for(int i = 0;i<n;i++)//基本的冒泡排序
        for(int j = i+1;j<n;j++)
    {
        if(data[j][1]>data[i][1])
        {
            temp = data[j][0];
            data[j][0] = data[i][0];
            data[i][0] = temp;
            temp = data[j][1];
            data[j][1] = data[i][1];
            data[i][1] = temp;
        }
    }
}
//多项式加法
polypointer PloyAdd(polypointer a, polypointer b)
{
	polypointer p, q, d, c;
	int y;//存储系数和
	p = a -> link;//存储前一个多项式第一个节点
	q = b -> link;//存储后一个多项式第一个节点
	c = (polypointer)malloc(sizeof(polynode));//分配新的表头
	d = c;//存储新节点的首地址
	while((p!=NULL)&&(q!=NULL))//表尾判断
    {
        switch(Compare(p->exp,q->exp))
        {
            case '='://判断指数相等时候，系数相加
                y = p->coef + q->coef;
                if(y) d = Attch(y,p->exp,d);
                p = p->link;
                q = q->link;
                break;
            case '>'://判断前项指数大时，将前项添加到新表后面，且前项指向下一个位置
                d = Attch(p->coef,p->exp,d);
                p = p->link;
                break;
            case '<'://判断后项指数大时，将后项添加到新表后面，且后项指向下一个位置
                d = Attch(q->coef,q->exp,d);
                q = q->link;
                break;
        }
    }
    //循环结束，若有未经遍历的项要添加到新表后面
    while(p!=NULL)
    {
        d = Attch(p->coef,p->exp,d);
        p = p->link;
    }
    while(q!=NULL)
    {
        d = Attch(q->coef,q->exp,d);
        q = q->link;
    }
    d->link = NULL;
    free(p);
    free(q);
    return c;
}
//多项式减法（利用加法，节省代码）
polypointer PloySub(polypointer a, polypointer b)
{
    polypointer c;
    c = b;//存储表头
    b = b->link;//指向第一个节点
    do//将被减数的所有系数变为其相反数，以便利用加法实现减法节省空间
    {
        b->coef = -b->coef;
        b = b->link;
    }while(b!=NULL);
    return PloyAdd(a,c);
}
//多项式乘法
polypointer PloyMul(polypointer a, polypointer b)
{
    int data[50][2];
    int i = 0;
    polypointer p, q, d, c;
    p = a -> link;//存储前一个多项式第一个节点
	q = b -> link;//存储后一个多项式第一个节点
	c = (polypointer)malloc(sizeof(polynode));//分配新的节点，存表头
	d = c;//存储新节点的首地址
	while(p!=NULL)
    {
        while(q!=NULL)
        {
            data[i][0] = p->coef*q->coef;//储存相乘后的系数
            data[i][1] = p->exp+q->exp;//储存相乘后的指数
            q = q->link;//指向下一个节点
            i++;
        }
        data[i][1] = 50;//以防万一
        q = b->link;//更新q节点
        p = p->link;//指向下一个节点
    }
    Sort(data,i);//从大到小排序指数和相应系数
    for(int j=0;j<i;j++)//将排序好的数据用于建立新链表
    {
        if(data[j][1] == data[j+1][1])//将排序后的相同指数的项合并
        {
            data[j+1][0] += data[j][0];//合并到后项，使得j向后走时方便合并后面相同项
        }
        else
            d = Attch(data[j][0],data[j][1],d);
    }
    d->link = NULL;//表尾
    free(p);
    free(q);
    return c;
}
//多项式除法
void PloyDiv(polypointer a, polypointer b)
{
    polypointer c1,c2,d1,d2,p,q,pt;
    polypointer temp,ntemp;
	p = a -> link;//存储前一个多项式第一个节点
	pt = (polypointer)malloc(sizeof(polynode));//添加一个额外空表头pt
	pt->link = p;//用pt给p一个新的表头
	q = b -> link;//存储后一个多项式第一个节点
	c1 = (polypointer)malloc(sizeof(polynode));//分配新的表头做商表
	d1 = c1;//存储新节点的首地址
    c2 = (polypointer)malloc(sizeof(polynode));//分配新的表头做余数表
	d2 = c2;//存储新节点的首地址
	ntemp = (polypointer)malloc(sizeof(polynode));//新表头，暂存
    temp = ntemp;
	while(p!=NULL && q!=NULL)
    {
        if(p->exp>=q->exp)//被除数最大次数大于等于除数
        {
            temp = Attch(p->coef/q->coef,p->exp - q->exp,temp);//首项除法所得结果建立新表
            temp->link = NULL;
            d1 = Attch(temp->coef,temp->exp,d1);//添加到商表中
            pt = PloySub(pt,PloyMul(b,ntemp));//用首项除以首项所得的商乘以除数，用被除数去减这个结果作为新的被除数
            p = pt->link;//更新节点
            temp = ntemp;//更新暂存表指针至表头
        }
        else//被除数最大次数小于除数，此时不够除，因而除数为余数表，商表为零
        {
            c1->link = p;
            c2->link = NULL;
            break;
        }
    }
    d1->link = NULL;//表尾
    c2->link = p;//余数表头->p
    //free(p);
    free(q);
    printf("商多项式：\n");
    OutputPoly(c1);
    printf("余数多项式：\n");
    OutputPoly(c2);
}
//从文件中读取数据并保存
int ReadFile1(int data[][2])
{
	FILE *fp;
	int n = 0;
	if ((fp = fopen("C:\\Users\\冯帅\\desktop\\1.txt", "r")) != NULL)//以只读方式打开文件并判断是否打开并输出相应语句
	{
		printf("the file 1 was opened\n");
		while(!feof(fp)){
		fscanf(fp, "%d %d",&data[n][0],&data[n][1]);
		n++;
		}
		printf("succeed to read to array\n");
	}
	else printf("the file 1 was not opened\n");
	fclose(fp);
	return n;
}
int ReadFile2(int data[][2])
{
	FILE *fp;
	int n = 0;
	if ((fp = fopen("C:\\Users\\冯帅\\desktop\\2.txt", "r")) != NULL)//以只读方式打开文件并判断是否打开并输出相应语句
	{
		printf("the file 2 was opened\n");
		while(!feof(fp)){
		fscanf(fp, "%d %d",&data[n][0],&data[n][1]);
		n++;
		}
		printf("succeed to read to array\n");
	}
	else printf("the file 2 was not opened\n");
	fclose(fp);
	return n;
}
//将数据写入文件并保存
void WriteFIle(char data[][2],int n)
{
	FILE *fp;
	int n0 = n-1;//为下步循环做准备，确保从大到小输入
	if ((fp = fopen("C:\\Users\\冯帅\\desktop\\1.txt", "w+")) != NULL)//以读写方式打开文件并判断是否打开并输出相应语句
	{
		printf("the file was opened\n");
		while(n--){
		fprintf(fp,"%d %d",data[n0-n][0],data[n0-n][1]);
		}
		printf("succeed to write to file\n");
	}
	else printf("the file was not opened\n");
	fclose(fp);
}
//计算多项式在x0处的值
float Calculate(float x0,polypointer a)
{
    polypointer b;
    a = a->link;
    float sum = a->coef;//记录结果，同时充当系数（v0 = an
    int n = a->exp;//存储最大幂指数
    b = a->link;
    while(n--)//秦九韶算法
    {
        if(b->exp == n)//下一项指数紧邻
        {
            sum = x0*sum + b->coef;//vi = v【i-1】*x0 + a【n-i】
            b = b->link;
        }
        else//下一项不紧邻
            sum = x0*sum;//vi = v【i-1】*x0 + 0
    }
    return sum;
}
//菜单
void Menu()
{
        printf("-------------------------------\n");
        printf("| 1.读取文件并保存            |\n");
        printf("| 2.写入文件并保存            |\n");
        printf("| 3.多项式加法                |\n");
        printf("| 4.多项式减法                |\n");
        printf("| 5.多项式乘法                |\n");
        printf("| 6.多项式除法                |\n");
        printf("| 7.计算多项式在x0处的值      |\n");
        printf("| 8.退出                      |\n");
        printf("-------------------------------\n");
        printf("请输入您想实现的操作:");
}
//输出多项式
void OutputPoly(polypointer a)
{
    polypointer p;
    p = a->link;
    if(p!=NULL)//判断是否是空表,若是则输出零，若不是则先给出第一项
    {
        printf("%dx^%d",p->coef,p->exp);
        p = p->link;
    }
    else
        printf("0");
    while(p!=NULL)//当不是空表时，逐项判断系数正负并输出
    {
        if(p->coef<0)
            printf("-%dx^%d",-p->coef,p->exp);
        else
            printf("+%dx^%d",p->coef,p->exp);
        p = p->link;
    }
    printf("\n");
}
//读取两个多项式（冗余部分）
void Read(polypointer* a,polypointer* b,int data[][2],int ndata[][2],int *n,int *n0)
{
    //指针操作是为了改变主函数中相应值，由于该操作在程序中四则运算都要运算一边，所以直接添加函数进来，方便操作和更改
    printf("分别从1,2文件中读取两个多项式进行运算：\n");
    *n = ReadFile1(data);*n0 = ReadFile2(ndata);
    Sort(data,*n);*a = InitPoly(data,*n);
    Sort(ndata,*n0);*b = InitPoly(ndata,*n0);
    OutputPoly(*a);OutputPoly(*b);
}
int main()
{
	int data[50][2],ndata[50][2];//两多项式系数指数存储
	int n,n0;//项数存储
	polypointer a,b,result;//ab用于存储操作多项式，result用于存储结果多项式
	float x0;
	int op;//存储键盘录入的选项
	while(1){
        Menu();
        do{//输入合法性判断
            scanf("%d",&op);
            if(op<=0 || op>=9) printf("您输入的数据不合法，请重新输入\n");
        }while(op<=0 || op>=9);
        switch(op)
        {
            case 1:n = ReadFile1(data);Sort(data,n);a = InitPoly(data,n);OutputPoly(a);break;
            case 2:WriteFIle(data,n);break;
            case 3:Read(&a,&b,data,ndata,&n,&n0);result = PloyAdd(a,b);OutputPoly(result);break;
            case 4:Read(&a,&b,data,ndata,&n,&n0);result = PloySub(a,b);OutputPoly(result);break;
            case 5:Read(&a,&b,data,ndata,&n,&n0);result = PloyMul(a,b);OutputPoly(result);break;
            case 6:Read(&a,&b,data,ndata,&n,&n0);PloyDiv(a,b);break;
            case 7:n = ReadFile1(data);Sort(data,n);a = InitPoly(data,n);
                   printf("请输入x0的值：");scanf("%f",&x0);printf("%f\n",Calculate(x0,a));
                   break;
            case 8:exit(0);
        }
	}
	return 0;
}


As far as I see, the commented original code (from https://github.com/moodleuulm/moodle-theme_boost_campus/commit/cd93fe61741051d57fec64543e315ed917b2e411#diff-8ab783c19e73a4e7f6be34a9f4237d92L36) is missing here


加载完毕以后才有资格重载，否则因为onload中的调整高度触发了resize事件会调用到onresize造成`window.onload(adjust_height) -> window.onresize -> location.reload -> window.onload`循环。


PesaPepe


I would change this comment to
"If there isn't anything in the buffer, set the additional layouts string to an empty string to avoid problems later on."


加载完毕以后才有资格重载，否则因为`onload`中的调整高度触发了`resize`事件会调用到`onresize`造成`window.onload(adjust_height)` -> `window.onresize` -> `location.reload` -> `window.onload`循环。


I would change this comment to
"Add the additional layouts to the template context"


redis分布式锁


Was a small error I made during the merge that deleted some of the CSS changes


加载完毕以后才有资格重载，否则会因为`onload`中的调整高度触发了`resize`事件会调用到`onresize`造成`window.onload(adjust_height)` -> `window.onresize` -> `location.reload` -> `window.onload`循环。


I would change this comment to
"The output buffer is needed to render the additional layout elements now without outputting them to the page directly."


Please adapt the comments in this files similar to my proposed changes above


>  If I use 0x00010000 - no recovery. (no offset option)

Most jboot devices have recovery built in jboot.

>If I use 0x00150000 - no boot, because jboot check headers at 0x00010000 and fail with CRC.

Because stock kernel look for rootfs partition. OFW have multiple partitions. OpenWRT have only one partition "firmware" and only one stag and sch header.

> SCH2 must be written at 0x00010000.

If You make image without special offset, You have sch2 at `0x00010000`.

>Also your tool does not show last STAG header on dlink fw.
>I'm working on modification, you can see progress in mine github.

I tried to make mkdlinkfw as simply as possible. Another sch2 and stag headers isn't required for proper image preperation.


我得先想想怎么改成可选，然后再实施。（主要是得判定 lilac 要不要管那个包。）

`grep pkgname */lilac.*` 还省一个字符呢。另外你不用 ripgrep 么，会快很多的。


Updated Checkstyle new version


Looks good now.


因为未知原因造成的`onresize`失效，暂时以js刷新的做法调整高度。


still model-file is not fixed. 256x256.pth.tar should be 256x192.pth.tar


哈哈


Successfully aliased the URL <https://podlove-web-player-hoeznwxave.now.sh> to the following alias.

* https://podlove-web-player.now.sh


已阅


yup looks like code


😂 you decided to redo the iframe I had earlier..!
I think that's way better indeed than having an Image to click and go to the video.
Thank you for doing it the proper way I suggested🙋♀


You are pushing commits at a very fast pace (accross the whole organization).
Due to that, we cannot deploy the commit 0365df509f684bc8f26c793b7d3fb9fcedef0dfe.

You can try again later or [upgrade](https://zeit.co/account/plan) your plan.


> A modules does not have a compiler, it has a target platform.
In last discussion I remember that we are going to got rid of platform term (multiple compilers/toolchains can run on the same platform). So the module obviously have platform, but also it have a compiler which targets to that platform. And if we have 2 different compilers that targets on same platform and modules with this compilers depends on each other (cyclically dependent modules), we also should have this error.

> Also it's a bit confusing, because currently only JVM modules can form cycles.
This messages doesn't meant that cyclically dependent modules are not allowed at all. This messages states that if we have a cyclically dependent modules than they should have same compiler.

> Also I think that JVM to JS dependencies (and vice versa) should be prohibited even when modules don't form cycles.
This is another diagnostic which is already implemented on jvm and js

> The error message could reflect that and also print corresponding platforms along with modules' names.
`presentableModulesToCompilersList` does exactly that, e.g. prints "moduleA (jvm), moduleB (js)"


No appropriate work done.
Just copy paste report from the original paper.
check out upload similarity report.


Yes, I see no problem in that


A very neat and awesome library. Kudos to you :)


Для доступа по индексу лучше массив использовать.
Не совсем понятно что значит например true в `[TRAINS_LIST_HEADER, true]`, нужно в метод лезть смотреть. Думаю тут лучше сделать массив хешей, с читабельной структурой, например так:

```
TRAINS_MENU = [
  { handler: :create_train },
  { handler: :list_trains, header: TRAINS_LIST_HEADER },
  { handler: :move_train_menu },
  ...
]
...
def call_menu_handler(menu_options)
  handler = menu_options.delete(:handler)
  if menu_options.blank?
    send(:handler)
  else
    send(:handler, menu_options)
  end
end

```


``` javascript
const apiURL = `https://api.openweathermap.org/data/2.5/forecast?q=${city}&APPID=5e668abf32fbdbedd3845ff81cdcbd4c`;
```
백틱(`)을 써서 템플릿리터럴 처럼 사용하면 문자열 연결에 '+' 를 안써도 될거야
[MDN Template literals](https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Template_literals)


This is a change in the cgi-bin viewer only.  The RRD database must remain in the original wview units, using the original wview-rrd.  So this is not compatible with the #4 pull request - that one is no longer needed.


Add ref to issue #425


Лучше избегать таких универсальных методов. Разбить на два метода


agreed... lets get Splitter2 done in a right way


modified something from tester 2


Можно разбить на два метода


'state' це не таблиця БД, це сервіс змінних. Ця строчка тобі не видалить таблицю. Знаю що в неті є такі приклади але вони фейк. (так тоже буває)


Hi,
I would like to build harfbuzz-2.1.3 but I am getting same error.
hb-blob.cc: In function 'hb_blob_t* hb_blob_get_empty()':
hb-blob.cc:193: error: using 'typename' outside of template

I need to patch to get rid of build time error
is this commit only related with this problem? if so I could not find where .circleci/config.yml file is
if you share exact patch to fix this problem I will be so glad


Just execution and screenshot is 50% not 75%.
You need to explain the importance of each step/screenshot and its purpose.


Hi,
I would like to build harfbuzz-2.1.3 but I am getting following error.
hb-blob.cc: In function 'hb_blob_t* hb_blob_get_empty()':
hb-blob.cc:193: error: using 'typename' outside of template

I need to patch to get rid of build time error
is this commit only related with this problem? if so I could not find where .circleci/config.yml file is
if you share exact patch to fix this problem I will be so glad


Successfully aliased the URL <https://studio-vrgposhnme.now.sh> to the following aliases.

* https://sid.studio
* https://www.sid.studio


modified something from tester 3


The ps_threads6 commit produces following schema (in comparison to master):

```
idx                   patch                                                          master

 1     0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1     1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
 2     1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0     0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
 3     0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1     0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0
 4     0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0     1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0
 5     1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0     1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1
 6     1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1     0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
 7     0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0     0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0
 8     1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0     0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0
 9     1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1     1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0
10     1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1     1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1
11     0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1     1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1
12     0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0     0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1
13     1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1     0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0
14     1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1     0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0
15     0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1     0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0
16     0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0     1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
17     0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0     1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1
18     0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0     1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1
19     1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0     1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1
20     1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1     0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
21     0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1     1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
22     1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0     0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
23     0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1     0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0
24     0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0     1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0
```

The ps_threads20 produces following:
```
idx                   patch                                                          master

 1     1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0     1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
 2     0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1     0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
 3     0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0     0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0
 4     1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0     1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0
 5     1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1     1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1
 6     0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1     0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
 7     1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0     0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0
 8     1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1     0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0
 9     1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1     1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0
10     0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1     1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1
11     0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0     1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1
12     0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0     0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1 0 0 0 1 1 1
13     1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1     0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0
14     0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1     0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0
15     0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0     0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0
16     0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0     1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
17     0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0     1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1
18     1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0     1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1
19     1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1     1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1
20     1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1     0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
21     1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0     1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
22     0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1     0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
23     0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0     0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0
24     1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0     1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0
```

To me they both look fully equivalent to current master (=same skip scheme up to 2 helpers, then half-density is maintained in horizontal and vertical orientation) and I see not point in further testing them, IMO you can directly open PR for the version you prefer.


re


is anybody there


> In an object context ::class doesn't work

you can use `get_class()` if you have an object.